﻿2026-06-04T14:32:57.3472584Z Current runner version: '2.334.0'
2026-06-04T14:32:57.3481683Z Runner name: 'gravity'
2026-06-04T14:32:57.3482982Z Runner group name: 'Default'
2026-06-04T14:32:57.3484356Z Machine name: 'gravity-linux'
2026-06-04T14:32:57.3488232Z ##[group]GITHUB_TOKEN Permissions
2026-06-04T14:32:57.3492343Z Contents: read
2026-06-04T14:32:57.3493172Z Metadata: read
2026-06-04T14:32:57.3493927Z Packages: read
2026-06-04T14:32:57.3494790Z ##[endgroup]
2026-06-04T14:32:57.3498170Z Secret source: Actions
2026-06-04T14:32:57.3499466Z Prepare workflow directory
2026-06-04T14:32:57.4254088Z Prepare all required actions
2026-06-04T14:32:57.4314672Z Getting action download info
2026-06-04T14:32:57.9939100Z Download action repository 'actions/checkout@v5' (SHA:93cb6efe18208431cddfb8368fd83d5badbf9bfd)
2026-06-04T14:32:59.0308814Z Complete job name: traceability
2026-06-04T14:32:59.1734925Z ##[group]Run actions/checkout@v5
2026-06-04T14:32:59.1736616Z with:
2026-06-04T14:32:59.1737425Z   repository: SaberMage/spt-core
2026-06-04T14:32:59.1744692Z   token: ***
2026-06-04T14:32:59.1745439Z   ssh-strict: true
2026-06-04T14:32:59.1746194Z   ssh-user: git
2026-06-04T14:32:59.1746947Z   persist-credentials: true
2026-06-04T14:32:59.1747762Z   clean: true
2026-06-04T14:32:59.1748517Z   sparse-checkout-cone-mode: true
2026-06-04T14:32:59.1749430Z   fetch-depth: 1
2026-06-04T14:32:59.1750162Z   fetch-tags: false
2026-06-04T14:32:59.1750908Z   show-progress: true
2026-06-04T14:32:59.1751667Z   lfs: false
2026-06-04T14:32:59.1752383Z   submodules: false
2026-06-04T14:32:59.1753186Z   set-safe-directory: true
2026-06-04T14:32:59.1754563Z ##[endgroup]
2026-06-04T14:32:59.3354690Z Syncing repository: SaberMage/spt-core
2026-06-04T14:32:59.3358709Z ##[group]Getting Git version info
2026-06-04T14:32:59.3360626Z Working directory is '/home/david/actions-runner/_work/spt-core/spt-core'
2026-06-04T14:32:59.3363014Z [command]/usr/bin/git version
2026-06-04T14:32:59.3364010Z git version 2.34.1
2026-06-04T14:32:59.3367370Z ##[endgroup]
2026-06-04T14:32:59.3376119Z Copying '/home/david/.gitconfig' to '/home/david/actions-runner/_work/_temp/711cea31-4ada-4145-8563-8b5496bd01af/.gitconfig'
2026-06-04T14:32:59.3382464Z Temporarily overriding HOME='/home/david/actions-runner/_work/_temp/711cea31-4ada-4145-8563-8b5496bd01af' before making global git config changes
2026-06-04T14:32:59.3385135Z Adding repository directory to the temporary git global config as a safe directory
2026-06-04T14:32:59.3389983Z [command]/usr/bin/git config --global --add safe.directory /home/david/actions-runner/_work/spt-core/spt-core
2026-06-04T14:32:59.3442929Z [command]/usr/bin/git config --local --get remote.origin.url
2026-06-04T14:32:59.3475746Z https://github.com/SaberMage/spt-core
2026-06-04T14:32:59.3494421Z ##[group]Removing previously created refs, to avoid conflicts
2026-06-04T14:32:59.3500260Z [command]/usr/bin/git rev-parse --symbolic-full-name --verify --quiet HEAD
2026-06-04T14:32:59.3531500Z refs/heads/dev-freeform
2026-06-04T14:32:59.3544676Z [command]/usr/bin/git checkout --detach
2026-06-04T14:32:59.3604303Z HEAD is now at a86371c test(rig): two-host ladder rig run + durable flake ledger [twohost]
2026-06-04T14:32:59.3662501Z [command]/usr/bin/git branch --delete --force dev-freeform
2026-06-04T14:32:59.3701046Z Deleted branch dev-freeform (was a86371c).
2026-06-04T14:32:59.3751072Z ##[endgroup]
2026-06-04T14:32:59.3753246Z [command]/usr/bin/git submodule status
2026-06-04T14:32:59.4002616Z ##[group]Cleaning the repository
2026-06-04T14:32:59.4007238Z [command]/usr/bin/git clean -ffdx
2026-06-04T14:33:00.2611386Z Removing target/
2026-06-04T14:33:00.2624118Z [command]/usr/bin/git reset --hard HEAD
2026-06-04T14:33:00.2695809Z HEAD is now at a86371c test(rig): two-host ladder rig run + durable flake ledger [twohost]
2026-06-04T14:33:00.2701870Z ##[endgroup]
2026-06-04T14:33:00.2704713Z ##[group]Disabling automatic garbage collection
2026-06-04T14:33:00.2710209Z [command]/usr/bin/git config --local gc.auto 0
2026-06-04T14:33:00.2749012Z ##[endgroup]
2026-06-04T14:33:00.2751313Z ##[group]Setting up auth
2026-06-04T14:33:00.2759286Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
2026-06-04T14:33:00.2802305Z [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-04T14:33:00.3042987Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
2026-06-04T14:33:00.3084089Z [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-04T14:33:00.3321484Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
2026-06-04T14:33:00.3365139Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
2026-06-04T14:33:00.3610314Z [command]/usr/bin/git config --local http.https://github.com/.extraheader AUTHORIZATION: basic ***
2026-06-04T14:33:00.3670440Z ##[endgroup]
2026-06-04T14:33:00.3673749Z ##[group]Fetching the repository
2026-06-04T14:33:00.3684877Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +a86371c9cfd87639c4d5dd5e2c82d464bc028ed0:refs/remotes/origin/dev-freeform
2026-06-04T14:33:01.0058416Z ##[endgroup]
2026-06-04T14:33:01.0063507Z ##[group]Determining the checkout info
2026-06-04T14:33:01.0066932Z ##[endgroup]
2026-06-04T14:33:01.0068997Z [command]/usr/bin/git sparse-checkout disable
2026-06-04T14:33:01.0137085Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
2026-06-04T14:33:01.0178250Z ##[group]Checking out the ref
2026-06-04T14:33:01.0183597Z [command]/usr/bin/git checkout --progress --force -B dev-freeform refs/remotes/origin/dev-freeform
2026-06-04T14:33:01.0242605Z Switched to a new branch 'dev-freeform'
2026-06-04T14:33:01.0246313Z Branch 'dev-freeform' set up to track remote branch 'dev-freeform' from 'origin'.
2026-06-04T14:33:01.0259964Z ##[endgroup]
2026-06-04T14:33:01.0308097Z [command]/usr/bin/git log -1 --format=%H
2026-06-04T14:33:01.0346457Z a86371c9cfd87639c4d5dd5e2c82d464bc028ed0
2026-06-04T14:33:01.0823033Z ##[group]Run if command -v traceable-reqs >/dev/null; then
2026-06-04T14:33:01.0825443Z [36;1mif command -v traceable-reqs >/dev/null; then[0m
2026-06-04T14:33:01.0827680Z [36;1m  ln -sf "$(command -v traceable-reqs)" ./traceable-reqs[0m
2026-06-04T14:33:01.0829766Z [36;1melse[0m
2026-06-04T14:33:01.0831479Z [36;1m  gh release download --repo BigscreenVR/traceable-reqs \[0m
2026-06-04T14:33:01.0833925Z [36;1m    --pattern '*linux-x86_64' --output traceable-reqs[0m
2026-06-04T14:33:01.0835955Z [36;1m  chmod +x traceable-reqs[0m
2026-06-04T14:33:01.0837563Z [36;1mfi[0m
2026-06-04T14:33:01.0867996Z shell: /usr/bin/bash -e {0}
2026-06-04T14:33:01.0869567Z env:
2026-06-04T14:33:01.0872628Z   GH_TOKEN: ***
2026-06-04T14:33:01.0873887Z ##[endgroup]
2026-06-04T14:33:01.1156152Z ##[group]Run ./traceable-reqs check --json
2026-06-04T14:33:01.1158021Z [36;1m./traceable-reqs check --json[0m
2026-06-04T14:33:01.1183318Z shell: /usr/bin/bash -e {0}
2026-06-04T14:33:01.1184731Z ##[endgroup]
2026-06-04T14:33:01.1396953Z {
2026-06-04T14:33:01.1398330Z   "schemaVersion": 1,
2026-06-04T14:33:01.1399917Z   "summary": {
2026-06-04T14:33:01.1401360Z     "requirementCount": 129,
2026-06-04T14:33:01.1403019Z     "completeCount": 129,
2026-06-04T14:33:01.1404544Z     "incompleteCount": 0,
2026-06-04T14:33:01.1406031Z     "findingCount": 0
2026-06-04T14:33:01.1407390Z   },
2026-06-04T14:33:01.1408546Z   "requirements": [
2026-06-04T14:33:01.1409836Z     {
2026-06-04T14:33:01.1411026Z       "id": "REQ-API-1",
2026-06-04T14:33:01.1412991Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-04T14:33:01.1415301Z       "requiredStages": [
2026-06-04T14:33:01.1416757Z         "impl",
2026-06-04T14:33:01.1418781Z         "unit",
2026-06-04T14:33:01.1420161Z         "int"
2026-06-04T14:33:01.1426741Z       ],
2026-06-04T14:33:01.1427905Z       "stages": {
2026-06-04T14:33:01.1429133Z         "doc": {
2026-06-04T14:33:01.1430454Z           "complete": false,
2026-06-04T14:33:01.1431929Z           "evidence": []
2026-06-04T14:33:01.1433273Z         },
2026-06-04T14:33:01.1434405Z         "impl": {
2026-06-04T14:33:01.1435661Z           "complete": true,
2026-06-04T14:33:01.1437100Z           "evidence": [
2026-06-04T14:33:01.1438422Z             {
2026-06-04T14:33:01.1469609Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.1471511Z               "line": 15
2026-06-04T14:33:01.1472852Z             }
2026-06-04T14:33:01.1474035Z           ]
2026-06-04T14:33:01.1475160Z         },
2026-06-04T14:33:01.1476346Z         "int": {
2026-06-04T14:33:01.1477608Z           "complete": true,
2026-06-04T14:33:01.1478968Z           "evidence": [
2026-06-04T14:33:01.1480498Z             {
2026-06-04T14:33:01.1481883Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.1483599Z               "line": 13
2026-06-04T14:33:01.1484810Z             }
2026-06-04T14:33:01.1485879Z           ]
2026-06-04T14:33:01.1486908Z         },
2026-06-04T14:33:01.1487952Z         "unit": {
2026-06-04T14:33:01.1489112Z           "complete": true,
2026-06-04T14:33:01.1491208Z           "evidence": [
2026-06-04T14:33:01.1492588Z             {
2026-06-04T14:33:01.1493956Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.1495721Z               "line": 346
2026-06-04T14:33:01.1497019Z             },
2026-06-04T14:33:01.1498173Z             {
2026-06-04T14:33:01.1499560Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.1501283Z               "line": 352
2026-06-04T14:33:01.1502586Z             },
2026-06-04T14:33:01.1503725Z             {
2026-06-04T14:33:01.1505036Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.1506747Z               "line": 363
2026-06-04T14:33:01.1508137Z             }
2026-06-04T14:33:01.1509401Z           ]
2026-06-04T14:33:01.1510630Z         }
2026-06-04T14:33:01.1511681Z       }
2026-06-04T14:33:01.1512712Z     },
2026-06-04T14:33:01.1513762Z     {
2026-06-04T14:33:01.1514846Z       "id": "REQ-API-2",
2026-06-04T14:33:01.1516956Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-04T14:33:01.1519672Z       "requiredStages": [
2026-06-04T14:33:01.1521036Z         "impl",
2026-06-04T14:33:01.1522212Z         "unit",
2026-06-04T14:33:01.1523369Z         "int"
2026-06-04T14:33:01.1524513Z       ],
2026-06-04T14:33:01.1525619Z       "stages": {
2026-06-04T14:33:01.1526813Z         "doc": {
2026-06-04T14:33:01.1528059Z           "complete": false,
2026-06-04T14:33:01.1529531Z           "evidence": []
2026-06-04T14:33:01.1530829Z         },
2026-06-04T14:33:01.1531943Z         "impl": {
2026-06-04T14:33:01.1533177Z           "complete": true,
2026-06-04T14:33:01.1534562Z           "evidence": [
2026-06-04T14:33:01.1536315Z             {
2026-06-04T14:33:01.1537760Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T14:33:01.1539757Z               "line": 15
2026-06-04T14:33:01.1541028Z             },
2026-06-04T14:33:01.1542136Z             {
2026-06-04T14:33:01.1543439Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.1545125Z               "line": 20
2026-06-04T14:33:01.1546376Z             },
2026-06-04T14:33:01.1547485Z             {
2026-06-04T14:33:01.1548800Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.1550862Z               "line": 125
2026-06-04T14:33:01.1552112Z             },
2026-06-04T14:33:01.1553243Z             {
2026-06-04T14:33:01.1554585Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1556306Z               "line": 21
2026-06-04T14:33:01.1557558Z             },
2026-06-04T14:33:01.1558677Z             {
2026-06-04T14:33:01.1560447Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1562478Z               "line": 38
2026-06-04T14:33:01.1563736Z             },
2026-06-04T14:33:01.1564836Z             {
2026-06-04T14:33:01.1579797Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1581753Z               "line": 160
2026-06-04T14:33:01.1582999Z             },
2026-06-04T14:33:01.1584087Z             {
2026-06-04T14:33:01.1585402Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1587144Z               "line": 199
2026-06-04T14:33:01.1588412Z             },
2026-06-04T14:33:01.1589763Z             {
2026-06-04T14:33:01.1591267Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1592973Z               "line": 223
2026-06-04T14:33:01.1594242Z             },
2026-06-04T14:33:01.1595357Z             {
2026-06-04T14:33:01.1596661Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1598366Z               "line": 17
2026-06-04T14:33:01.1600014Z             },
2026-06-04T14:33:01.1601192Z             {
2026-06-04T14:33:01.1602472Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1604134Z               "line": 30
2026-06-04T14:33:01.1605377Z             },
2026-06-04T14:33:01.1606483Z             {
2026-06-04T14:33:01.1607757Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1609636Z               "line": 63
2026-06-04T14:33:01.1611060Z             },
2026-06-04T14:33:01.1612165Z             {
2026-06-04T14:33:01.1613434Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1615090Z               "line": 76
2026-06-04T14:33:01.1616331Z             }
2026-06-04T14:33:01.1617438Z           ]
2026-06-04T14:33:01.1618506Z         },
2026-06-04T14:33:01.1619806Z         "int": {
2026-06-04T14:33:01.1621151Z           "complete": true,
2026-06-04T14:33:01.1622470Z           "evidence": [
2026-06-04T14:33:01.1623695Z             {
2026-06-04T14:33:01.1625024Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.1626790Z               "line": 14
2026-06-04T14:33:01.1628040Z             },
2026-06-04T14:33:01.1629144Z             {
2026-06-04T14:33:01.1630785Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.1632503Z               "line": 151
2026-06-04T14:33:01.1633758Z             }
2026-06-04T14:33:01.1634850Z           ]
2026-06-04T14:33:01.1635906Z         },
2026-06-04T14:33:01.1636968Z         "unit": {
2026-06-04T14:33:01.1638159Z           "complete": true,
2026-06-04T14:33:01.1639712Z           "evidence": [
2026-06-04T14:33:01.1641078Z             {
2026-06-04T14:33:01.1642420Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T14:33:01.1644146Z               "line": 42
2026-06-04T14:33:01.1645386Z             },
2026-06-04T14:33:01.1646493Z             {
2026-06-04T14:33:01.1647805Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.1649725Z               "line": 204
2026-06-04T14:33:01.1651189Z             },
2026-06-04T14:33:01.1652687Z             {
2026-06-04T14:33:01.1654049Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1655790Z               "line": 296
2026-06-04T14:33:01.1657061Z             },
2026-06-04T14:33:01.1658166Z             {
2026-06-04T14:33:01.1659552Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1661278Z               "line": 307
2026-06-04T14:33:01.1662535Z             },
2026-06-04T14:33:01.1663635Z             {
2026-06-04T14:33:01.1664959Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1666674Z               "line": 375
2026-06-04T14:33:01.1667951Z             },
2026-06-04T14:33:01.1669056Z             {
2026-06-04T14:33:01.1670426Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1672154Z               "line": 387
2026-06-04T14:33:01.1673416Z             },
2026-06-04T14:33:01.1674529Z             {
2026-06-04T14:33:01.1675817Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1677686Z               "line": 137
2026-06-04T14:33:01.1678963Z             },
2026-06-04T14:33:01.1680114Z             {
2026-06-04T14:33:01.1681406Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.1683069Z               "line": 172
2026-06-04T14:33:01.1684320Z             }
2026-06-04T14:33:01.1685411Z           ]
2026-06-04T14:33:01.1686463Z         }
2026-06-04T14:33:01.1687490Z       }
2026-06-04T14:33:01.1688513Z     },
2026-06-04T14:33:01.1695521Z     {
2026-06-04T14:33:01.1696747Z       "id": "REQ-API-3",
2026-06-04T14:33:01.1698375Z       "title": "commune/signoff are file-drops, not commands",
2026-06-04T14:33:01.1700312Z       "requiredStages": [
2026-06-04T14:33:01.1701592Z         "impl",
2026-06-04T14:33:01.1702705Z         "unit",
2026-06-04T14:33:01.1703804Z         "int"
2026-06-04T14:33:01.1704862Z       ],
2026-06-04T14:33:01.1705908Z       "stages": {
2026-06-04T14:33:01.1707042Z         "doc": {
2026-06-04T14:33:01.1708249Z           "complete": false,
2026-06-04T14:33:01.1709643Z           "evidence": []
2026-06-04T14:33:01.1710868Z         },
2026-06-04T14:33:01.1711915Z         "impl": {
2026-06-04T14:33:01.1713076Z           "complete": true,
2026-06-04T14:33:01.1714373Z           "evidence": [
2026-06-04T14:33:01.1715572Z             {
2026-06-04T14:33:01.1716854Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.1718512Z               "line": 27
2026-06-04T14:33:01.1719752Z             },
2026-06-04T14:33:01.1720840Z             {
2026-06-04T14:33:01.1722149Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1723851Z               "line": 233
2026-06-04T14:33:01.1725084Z             }
2026-06-04T14:33:01.1726147Z           ]
2026-06-04T14:33:01.1727200Z         },
2026-06-04T14:33:01.1728232Z         "int": {
2026-06-04T14:33:01.1729422Z           "complete": true,
2026-06-04T14:33:01.1730732Z           "evidence": [
2026-06-04T14:33:01.1731926Z             {
2026-06-04T14:33:01.1733273Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.1734957Z               "line": 203
2026-06-04T14:33:01.1736180Z             }
2026-06-04T14:33:01.1737232Z           ]
2026-06-04T14:33:01.1738272Z         },
2026-06-04T14:33:01.1739346Z         "unit": {
2026-06-04T14:33:01.1740494Z           "complete": true,
2026-06-04T14:33:01.1741774Z           "evidence": [
2026-06-04T14:33:01.1742952Z             {
2026-06-04T14:33:01.1744211Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.1745856Z               "line": 230
2026-06-04T14:33:01.1747062Z             },
2026-06-04T14:33:01.1748151Z             {
2026-06-04T14:33:01.1749475Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.1751180Z               "line": 416
2026-06-04T14:33:01.1752395Z             }
2026-06-04T14:33:01.1753461Z           ]
2026-06-04T14:33:01.1754494Z         }
2026-06-04T14:33:01.1755492Z       }
2026-06-04T14:33:01.1756498Z     },
2026-06-04T14:33:01.1757495Z     {
2026-06-04T14:33:01.1758818Z       "id": "REQ-ARCH-1",
2026-06-04T14:33:01.1760384Z       "title": "Many small acyclically-layered crates",
2026-06-04T14:33:01.1762094Z       "requiredStages": [
2026-06-04T14:33:01.1763337Z         "impl"
2026-06-04T14:33:01.1764402Z       ],
2026-06-04T14:33:01.1765411Z       "stages": {
2026-06-04T14:33:01.1766518Z         "doc": {
2026-06-04T14:33:01.1767659Z           "complete": false,
2026-06-04T14:33:01.1768968Z           "evidence": []
2026-06-04T14:33:01.1770200Z         },
2026-06-04T14:33:01.1771223Z         "impl": {
2026-06-04T14:33:01.1772367Z           "complete": true,
2026-06-04T14:33:01.1773642Z           "evidence": [
2026-06-04T14:33:01.1774805Z             {
2026-06-04T14:33:01.1776015Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-04T14:33:01.1777588Z               "line": 16
2026-06-04T14:33:01.1778777Z             },
2026-06-04T14:33:01.1779866Z             {
2026-06-04T14:33:01.1781096Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-04T14:33:01.1782907Z               "line": 12
2026-06-04T14:33:01.1784106Z             },
2026-06-04T14:33:01.1785173Z             {
2026-06-04T14:33:01.1786403Z               "path": "crates/spt-store/src/lib.rs",
2026-06-04T14:33:01.1788006Z               "line": 12
2026-06-04T14:33:01.1789232Z             }
2026-06-04T14:33:01.1790270Z           ]
2026-06-04T14:33:01.1791277Z         },
2026-06-04T14:33:01.1792297Z         "int": {
2026-06-04T14:33:01.1793429Z           "complete": false,
2026-06-04T14:33:01.1794737Z           "evidence": []
2026-06-04T14:33:01.1795938Z         },
2026-06-04T14:33:01.1825542Z         "unit": {
2026-06-04T14:33:01.1827105Z           "complete": false,
2026-06-04T14:33:01.1828434Z           "evidence": []
2026-06-04T14:33:01.1829719Z         }
2026-06-04T14:33:01.1830734Z       }
2026-06-04T14:33:01.1831732Z     },
2026-06-04T14:33:01.1832723Z     {
2026-06-04T14:33:01.1833764Z       "id": "REQ-ARCH-2",
2026-06-04T14:33:01.1835594Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-04T14:33:01.1837570Z       "requiredStages": [
2026-06-04T14:33:01.1838856Z         "impl"
2026-06-04T14:33:01.1840042Z       ],
2026-06-04T14:33:01.1841069Z       "stages": {
2026-06-04T14:33:01.1842222Z         "doc": {
2026-06-04T14:33:01.1843392Z           "complete": false,
2026-06-04T14:33:01.1844696Z           "evidence": []
2026-06-04T14:33:01.1845907Z         },
2026-06-04T14:33:01.1846945Z         "impl": {
2026-06-04T14:33:01.1848075Z           "complete": true,
2026-06-04T14:33:01.1850352Z           "evidence": [
2026-06-04T14:33:01.1851573Z             {
2026-06-04T14:33:01.1852831Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-04T14:33:01.1854452Z               "line": 18
2026-06-04T14:33:01.1855643Z             }
2026-06-04T14:33:01.1856685Z           ]
2026-06-04T14:33:01.1857712Z         },
2026-06-04T14:33:01.1858732Z         "int": {
2026-06-04T14:33:01.1860138Z           "complete": false,
2026-06-04T14:33:01.1861491Z           "evidence": []
2026-06-04T14:33:01.1862699Z         },
2026-06-04T14:33:01.1863733Z         "unit": {
2026-06-04T14:33:01.1864878Z           "complete": false,
2026-06-04T14:33:01.1866190Z           "evidence": []
2026-06-04T14:33:01.1867391Z         }
2026-06-04T14:33:01.1868404Z       }
2026-06-04T14:33:01.1869433Z     },
2026-06-04T14:33:01.1870428Z     {
2026-06-04T14:33:01.1871448Z       "id": "REQ-ARCH-3",
2026-06-04T14:33:01.1873438Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-04T14:33:01.1875751Z       "requiredStages": [
2026-06-04T14:33:01.1877286Z         "impl",
2026-06-04T14:33:01.1878512Z         "unit"
2026-06-04T14:33:01.1879739Z       ],
2026-06-04T14:33:01.1880829Z       "stages": {
2026-06-04T14:33:01.1881993Z         "doc": {
2026-06-04T14:33:01.1883182Z           "complete": false,
2026-06-04T14:33:01.1884548Z           "evidence": []
2026-06-04T14:33:01.1885775Z         },
2026-06-04T14:33:01.1886863Z         "impl": {
2026-06-04T14:33:01.1888540Z           "complete": true,
2026-06-04T14:33:01.1890107Z           "evidence": [
2026-06-04T14:33:01.1891293Z             {
2026-06-04T14:33:01.1892601Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T14:33:01.1894252Z               "line": 34
2026-06-04T14:33:01.1895432Z             },
2026-06-04T14:33:01.1896501Z             {
2026-06-04T14:33:01.1897788Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T14:33:01.1899657Z               "line": 41
2026-06-04T14:33:01.1900991Z             }
2026-06-04T14:33:01.1902037Z           ]
2026-06-04T14:33:01.1903068Z         },
2026-06-04T14:33:01.1904082Z         "int": {
2026-06-04T14:33:01.1905228Z           "complete": false,
2026-06-04T14:33:01.1906533Z           "evidence": []
2026-06-04T14:33:01.1907733Z         },
2026-06-04T14:33:01.1908757Z         "unit": {
2026-06-04T14:33:01.1909938Z           "complete": true,
2026-06-04T14:33:01.1911213Z           "evidence": [
2026-06-04T14:33:01.1912611Z             {
2026-06-04T14:33:01.1913932Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T14:33:01.1915571Z               "line": 51
2026-06-04T14:33:01.1916765Z             },
2026-06-04T14:33:01.1917830Z             {
2026-06-04T14:33:01.1919131Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T14:33:01.1920824Z               "line": 65
2026-06-04T14:33:01.1922036Z             },
2026-06-04T14:33:01.1923108Z             {
2026-06-04T14:33:01.1924417Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T14:33:01.1926058Z               "line": 74
2026-06-04T14:33:01.1927248Z             }
2026-06-04T14:33:01.1928508Z           ]
2026-06-04T14:33:01.1929692Z         }
2026-06-04T14:33:01.1936503Z       }
2026-06-04T14:33:01.1937562Z     },
2026-06-04T14:33:01.1938571Z     {
2026-06-04T14:33:01.1939705Z       "id": "REQ-ARCH-4",
2026-06-04T14:33:01.1941535Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-04T14:33:01.1943642Z       "requiredStages": [
2026-06-04T14:33:01.1944896Z         "impl",
2026-06-04T14:33:01.1945981Z         "unit"
2026-06-04T14:33:01.1947047Z       ],
2026-06-04T14:33:01.1948068Z       "stages": {
2026-06-04T14:33:01.1949213Z         "doc": {
2026-06-04T14:33:01.1950363Z           "complete": false,
2026-06-04T14:33:01.1951698Z           "evidence": []
2026-06-04T14:33:01.1952960Z         },
2026-06-04T14:33:01.1954001Z         "impl": {
2026-06-04T14:33:01.1955145Z           "complete": true,
2026-06-04T14:33:01.1956436Z           "evidence": [
2026-06-04T14:33:01.1957603Z             {
2026-06-04T14:33:01.1958865Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.1960529Z               "line": 63
2026-06-04T14:33:01.1961729Z             },
2026-06-04T14:33:01.1962810Z             {
2026-06-04T14:33:01.1964057Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.1965659Z               "line": 77
2026-06-04T14:33:01.1966870Z             },
2026-06-04T14:33:01.1967942Z             {
2026-06-04T14:33:01.1971242Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.1972935Z               "line": 97
2026-06-04T14:33:01.1974137Z             },
2026-06-04T14:33:01.1975213Z             {
2026-06-04T14:33:01.1976473Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.1978086Z               "line": 112
2026-06-04T14:33:01.1979646Z             },
2026-06-04T14:33:01.1980709Z             {
2026-06-04T14:33:01.1981969Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.1983583Z               "line": 162
2026-06-04T14:33:01.1984786Z             }
2026-06-04T14:33:01.1985830Z           ]
2026-06-04T14:33:01.1986856Z         },
2026-06-04T14:33:01.1987872Z         "int": {
2026-06-04T14:33:01.1989012Z           "complete": false,
2026-06-04T14:33:01.1990716Z           "evidence": []
2026-06-04T14:33:01.1991926Z         },
2026-06-04T14:33:01.1992944Z         "unit": {
2026-06-04T14:33:01.1994455Z           "complete": true,
2026-06-04T14:33:01.1995782Z           "evidence": [
2026-06-04T14:33:01.1996965Z             {
2026-06-04T14:33:01.1998228Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2000192Z               "line": 226
2026-06-04T14:33:01.2001411Z             },
2026-06-04T14:33:01.2002472Z             {
2026-06-04T14:33:01.2003723Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2005330Z               "line": 236
2026-06-04T14:33:01.2006541Z             },
2026-06-04T14:33:01.2007614Z             {
2026-06-04T14:33:01.2008888Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2010551Z               "line": 247
2026-06-04T14:33:01.2011748Z             },
2026-06-04T14:33:01.2012808Z             {
2026-06-04T14:33:01.2014041Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2015637Z               "line": 258
2026-06-04T14:33:01.2016837Z             },
2026-06-04T14:33:01.2018103Z             {
2026-06-04T14:33:01.2019417Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2021034Z               "line": 270
2026-06-04T14:33:01.2022251Z             },
2026-06-04T14:33:01.2023302Z             {
2026-06-04T14:33:01.2024534Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2026130Z               "line": 283
2026-06-04T14:33:01.2027328Z             },
2026-06-04T14:33:01.2028390Z             {
2026-06-04T14:33:01.2029690Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2031310Z               "line": 294
2026-06-04T14:33:01.2032516Z             },
2026-06-04T14:33:01.2033582Z             {
2026-06-04T14:33:01.2034824Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2036421Z               "line": 308
2026-06-04T14:33:01.2037615Z             },
2026-06-04T14:33:01.2038669Z             {
2026-06-04T14:33:01.2039968Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.2041614Z               "line": 336
2026-06-04T14:33:01.2046981Z             }
2026-06-04T14:33:01.2048187Z           ]
2026-06-04T14:33:01.2049315Z         }
2026-06-04T14:33:01.2050329Z       }
2026-06-04T14:33:01.2051323Z     },
2026-06-04T14:33:01.2052325Z     {
2026-06-04T14:33:01.2053365Z       "id": "REQ-DAEMON-1",
2026-06-04T14:33:01.2055131Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-04T14:33:01.2057143Z       "requiredStages": [
2026-06-04T14:33:01.2058370Z         "impl",
2026-06-04T14:33:01.2059484Z         "unit",
2026-06-04T14:33:01.2060555Z         "int"
2026-06-04T14:33:01.2061608Z       ],
2026-06-04T14:33:01.2062616Z       "stages": {
2026-06-04T14:33:01.2063705Z         "doc": {
2026-06-04T14:33:01.2064830Z           "complete": false,
2026-06-04T14:33:01.2066153Z           "evidence": []
2026-06-04T14:33:01.2067340Z         },
2026-06-04T14:33:01.2068379Z         "impl": {
2026-06-04T14:33:01.2069642Z           "complete": true,
2026-06-04T14:33:01.2070936Z           "evidence": [
2026-06-04T14:33:01.2072119Z             {
2026-06-04T14:33:01.2073392Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2075012Z               "line": 12
2026-06-04T14:33:01.2076195Z             },
2026-06-04T14:33:01.2077258Z             {
2026-06-04T14:33:01.2078551Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2080314Z               "line": 16
2026-06-04T14:33:01.2081521Z             },
2026-06-04T14:33:01.2082590Z             {
2026-06-04T14:33:01.2083832Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T14:33:01.2085422Z               "line": 15
2026-06-04T14:33:01.2086606Z             },
2026-06-04T14:33:01.2087680Z             {
2026-06-04T14:33:01.2088904Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T14:33:01.2090536Z               "line": 13
2026-06-04T14:33:01.2091725Z             }
2026-06-04T14:33:01.2092758Z           ]
2026-06-04T14:33:01.2093774Z         },
2026-06-04T14:33:01.2094813Z         "int": {
2026-06-04T14:33:01.2096299Z           "complete": true,
2026-06-04T14:33:01.2097620Z           "evidence": [
2026-06-04T14:33:01.2098795Z             {
2026-06-04T14:33:01.2100180Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T14:33:01.2101867Z               "line": 32
2026-06-04T14:33:01.2103063Z             }
2026-06-04T14:33:01.2104107Z           ]
2026-06-04T14:33:01.2105119Z         },
2026-06-04T14:33:01.2106145Z         "unit": {
2026-06-04T14:33:01.2107275Z           "complete": true,
2026-06-04T14:33:01.2108551Z           "evidence": [
2026-06-04T14:33:01.2109754Z             {
2026-06-04T14:33:01.2111021Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2112636Z               "line": 254
2026-06-04T14:33:01.2113827Z             },
2026-06-04T14:33:01.2114933Z             {
2026-06-04T14:33:01.2116208Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2117825Z               "line": 262
2026-06-04T14:33:01.2119290Z             },
2026-06-04T14:33:01.2120345Z             {
2026-06-04T14:33:01.2121611Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2123235Z               "line": 275
2026-06-04T14:33:01.2124430Z             },
2026-06-04T14:33:01.2125481Z             {
2026-06-04T14:33:01.2126765Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2128413Z               "line": 283
2026-06-04T14:33:01.2129640Z             },
2026-06-04T14:33:01.2130697Z             {
2026-06-04T14:33:01.2131979Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2133631Z               "line": 528
2026-06-04T14:33:01.2134833Z             },
2026-06-04T14:33:01.2135888Z             {
2026-06-04T14:33:01.2137178Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2138838Z               "line": 587
2026-06-04T14:33:01.2140076Z             },
2026-06-04T14:33:01.2141152Z             {
2026-06-04T14:33:01.2142433Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T14:33:01.2144046Z               "line": 100
2026-06-04T14:33:01.2145255Z             },
2026-06-04T14:33:01.2146310Z             {
2026-06-04T14:33:01.2147566Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T14:33:01.2149198Z               "line": 125
2026-06-04T14:33:01.2154295Z             }
2026-06-04T14:33:01.2155406Z           ]
2026-06-04T14:33:01.2156428Z         }
2026-06-04T14:33:01.2157416Z       }
2026-06-04T14:33:01.2158408Z     },
2026-06-04T14:33:01.2159581Z     {
2026-06-04T14:33:01.2160670Z       "id": "REQ-DAEMON-2",
2026-06-04T14:33:01.2162267Z       "title": "Broker/brain split for seamless self-update",
2026-06-04T14:33:01.2164030Z       "requiredStages": [
2026-06-04T14:33:01.2165242Z         "impl",
2026-06-04T14:33:01.2166317Z         "unit",
2026-06-04T14:33:01.2167366Z         "int"
2026-06-04T14:33:01.2168401Z       ],
2026-06-04T14:33:01.2169441Z       "stages": {
2026-06-04T14:33:01.2170572Z         "doc": {
2026-06-04T14:33:01.2171718Z           "complete": false,
2026-06-04T14:33:01.2173020Z           "evidence": []
2026-06-04T14:33:01.2174200Z         },
2026-06-04T14:33:01.2175238Z         "impl": {
2026-06-04T14:33:01.2176364Z           "complete": true,
2026-06-04T14:33:01.2177616Z           "evidence": [
2026-06-04T14:33:01.2178772Z             {
2026-06-04T14:33:01.2180045Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.2181627Z               "line": 23
2026-06-04T14:33:01.2182777Z             },
2026-06-04T14:33:01.2183814Z             {
2026-06-04T14:33:01.2185044Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.2186651Z               "line": 489
2026-06-04T14:33:01.2187821Z             },
2026-06-04T14:33:01.2188859Z             {
2026-06-04T14:33:01.2190142Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.2191716Z               "line": 612
2026-06-04T14:33:01.2192889Z             },
2026-06-04T14:33:01.2193952Z             {
2026-06-04T14:33:01.2195516Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.2197161Z               "line": 32
2026-06-04T14:33:01.2198348Z             },
2026-06-04T14:33:01.2199432Z             {
2026-06-04T14:33:01.2200691Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.2202296Z               "line": 191
2026-06-04T14:33:01.2203469Z             },
2026-06-04T14:33:01.2204506Z             {
2026-06-04T14:33:01.2205766Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.2207390Z               "line": 510
2026-06-04T14:33:01.2208574Z             },
2026-06-04T14:33:01.2209660Z             {
2026-06-04T14:33:01.2210942Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.2212564Z               "line": 679
2026-06-04T14:33:01.2213736Z             },
2026-06-04T14:33:01.2214771Z             {
2026-06-04T14:33:01.2215993Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T14:33:01.2217796Z               "line": 11
2026-06-04T14:33:01.2218975Z             },
2026-06-04T14:33:01.2220064Z             {
2026-06-04T14:33:01.2221311Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T14:33:01.2222899Z               "line": 53
2026-06-04T14:33:01.2224053Z             },
2026-06-04T14:33:01.2225076Z             {
2026-06-04T14:33:01.2226273Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2227827Z               "line": 13
2026-06-04T14:33:01.2228983Z             },
2026-06-04T14:33:01.2230068Z             {
2026-06-04T14:33:01.2231312Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2232907Z               "line": 27
2026-06-04T14:33:01.2234065Z             },
2026-06-04T14:33:01.2235086Z             {
2026-06-04T14:33:01.2236333Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2237920Z               "line": 94
2026-06-04T14:33:01.2239068Z             },
2026-06-04T14:33:01.2240809Z             {
2026-06-04T14:33:01.2242656Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2244284Z               "line": 393
2026-06-04T14:33:01.2245442Z             },
2026-06-04T14:33:01.2246478Z             {
2026-06-04T14:33:01.2247744Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2249577Z               "line": 460
2026-06-04T14:33:01.2250931Z             },
2026-06-04T14:33:01.2251984Z             {
2026-06-04T14:33:01.2253234Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2254838Z               "line": 494
2026-06-04T14:33:01.2256015Z             },
2026-06-04T14:33:01.2257053Z             {
2026-06-04T14:33:01.2262714Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2264378Z               "line": 536
2026-06-04T14:33:01.2265551Z             },
2026-06-04T14:33:01.2266585Z             {
2026-06-04T14:33:01.2267840Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2269571Z               "line": 581
2026-06-04T14:33:01.2270747Z             },
2026-06-04T14:33:01.2271785Z             {
2026-06-04T14:33:01.2273060Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T14:33:01.2274689Z               "line": 10
2026-06-04T14:33:01.2275891Z             }
2026-06-04T14:33:01.2276912Z           ]
2026-06-04T14:33:01.2277904Z         },
2026-06-04T14:33:01.2278898Z         "int": {
2026-06-04T14:33:01.2280050Z           "complete": true,
2026-06-04T14:33:01.2281286Z           "evidence": [
2026-06-04T14:33:01.2282422Z             {
2026-06-04T14:33:01.2283677Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-04T14:33:01.2285287Z               "line": 17
2026-06-04T14:33:01.2286438Z             },
2026-06-04T14:33:01.2287466Z             {
2026-06-04T14:33:01.2288774Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T14:33:01.2290468Z               "line": 33
2026-06-04T14:33:01.2291649Z             },
2026-06-04T14:33:01.2292972Z             {
2026-06-04T14:33:01.2294274Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T14:33:01.2295892Z               "line": 19
2026-06-04T14:33:01.2297046Z             },
2026-06-04T14:33:01.2298063Z             {
2026-06-04T14:33:01.2299404Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T14:33:01.2301054Z               "line": 70
2026-06-04T14:33:01.2302200Z             },
2026-06-04T14:33:01.2303221Z             {
2026-06-04T14:33:01.2304510Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T14:33:01.2306148Z               "line": 90
2026-06-04T14:33:01.2307304Z             },
2026-06-04T14:33:01.2308325Z             {
2026-06-04T14:33:01.2309644Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T14:33:01.2311276Z               "line": 160
2026-06-04T14:33:01.2312435Z             },
2026-06-04T14:33:01.2313460Z             {
2026-06-04T14:33:01.2314763Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T14:33:01.2316579Z               "line": 196
2026-06-04T14:33:01.2317746Z             },
2026-06-04T14:33:01.2318769Z             {
2026-06-04T14:33:01.2320104Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T14:33:01.2321764Z               "line": 121
2026-06-04T14:33:01.2322923Z             }
2026-06-04T14:33:01.2323936Z           ]
2026-06-04T14:33:01.2324916Z         },
2026-06-04T14:33:01.2325904Z         "unit": {
2026-06-04T14:33:01.2327001Z           "complete": true,
2026-06-04T14:33:01.2328225Z           "evidence": [
2026-06-04T14:33:01.2329390Z             {
2026-06-04T14:33:01.2330617Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T14:33:01.2332179Z               "line": 62
2026-06-04T14:33:01.2333337Z             },
2026-06-04T14:33:01.2334357Z             {
2026-06-04T14:33:01.2335575Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T14:33:01.2337136Z               "line": 76
2026-06-04T14:33:01.2338321Z             },
2026-06-04T14:33:01.2339378Z             {
2026-06-04T14:33:01.2340590Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T14:33:01.2342147Z               "line": 88
2026-06-04T14:33:01.2343299Z             },
2026-06-04T14:33:01.2344398Z             {
2026-06-04T14:33:01.2345644Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.2347229Z               "line": 264
2026-06-04T14:33:01.2348385Z             },
2026-06-04T14:33:01.2349457Z             {
2026-06-04T14:33:01.2350663Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2352208Z               "line": 506
2026-06-04T14:33:01.2353378Z             },
2026-06-04T14:33:01.2354405Z             {
2026-06-04T14:33:01.2355600Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2357147Z               "line": 514
2026-06-04T14:33:01.2358311Z             },
2026-06-04T14:33:01.2359373Z             {
2026-06-04T14:33:01.2360595Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2362170Z               "line": 531
2026-06-04T14:33:01.2363323Z             },
2026-06-04T14:33:01.2367936Z             {
2026-06-04T14:33:01.2369376Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2370947Z               "line": 576
2026-06-04T14:33:01.2372113Z             },
2026-06-04T14:33:01.2373138Z             {
2026-06-04T14:33:01.2374383Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2375978Z               "line": 648
2026-06-04T14:33:01.2377141Z             },
2026-06-04T14:33:01.2378159Z             {
2026-06-04T14:33:01.2379436Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2381033Z               "line": 660
2026-06-04T14:33:01.2382192Z             },
2026-06-04T14:33:01.2383232Z             {
2026-06-04T14:33:01.2384482Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T14:33:01.2386086Z               "line": 112
2026-06-04T14:33:01.2387578Z             }
2026-06-04T14:33:01.2388638Z           ]
2026-06-04T14:33:01.2389672Z         }
2026-06-04T14:33:01.2390653Z       }
2026-06-04T14:33:01.2391598Z     },
2026-06-04T14:33:01.2392560Z     {
2026-06-04T14:33:01.2393588Z       "id": "REQ-DAEMON-3",
2026-06-04T14:33:01.2395216Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-04T14:33:01.2397083Z       "requiredStages": [
2026-06-04T14:33:01.2398275Z         "impl",
2026-06-04T14:33:01.2399351Z         "unit",
2026-06-04T14:33:01.2400394Z         "int"
2026-06-04T14:33:01.2401406Z       ],
2026-06-04T14:33:01.2402396Z       "stages": {
2026-06-04T14:33:01.2403455Z         "doc": {
2026-06-04T14:33:01.2404554Z           "complete": false,
2026-06-04T14:33:01.2405813Z           "evidence": []
2026-06-04T14:33:01.2406977Z         },
2026-06-04T14:33:01.2407973Z         "impl": {
2026-06-04T14:33:01.2409078Z           "complete": true,
2026-06-04T14:33:01.2410888Z           "evidence": [
2026-06-04T14:33:01.2412603Z             {
2026-06-04T14:33:01.2413958Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T14:33:01.2415771Z               "line": 14
2026-06-04T14:33:01.2417038Z             },
2026-06-04T14:33:01.2418212Z             {
2026-06-04T14:33:01.2419835Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-04T14:33:01.2421790Z               "line": 11
2026-06-04T14:33:01.2423057Z             },
2026-06-04T14:33:01.2424212Z             {
2026-06-04T14:33:01.2425509Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.2427488Z               "line": 216
2026-06-04T14:33:01.2428917Z             },
2026-06-04T14:33:01.2430148Z             {
2026-06-04T14:33:01.2431456Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.2433142Z               "line": 642
2026-06-04T14:33:01.2434328Z             }
2026-06-04T14:33:01.2435355Z           ]
2026-06-04T14:33:01.2436346Z         },
2026-06-04T14:33:01.2437338Z         "int": {
2026-06-04T14:33:01.2438503Z           "complete": true,
2026-06-04T14:33:01.2439796Z           "evidence": [
2026-06-04T14:33:01.2440919Z             {
2026-06-04T14:33:01.2442157Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.2443766Z               "line": 43
2026-06-04T14:33:01.2444917Z             },
2026-06-04T14:33:01.2445940Z             {
2026-06-04T14:33:01.2447175Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.2448783Z               "line": 320
2026-06-04T14:33:01.2449979Z             }
2026-06-04T14:33:01.2450994Z           ]
2026-06-04T14:33:01.2451977Z         },
2026-06-04T14:33:01.2452977Z         "unit": {
2026-06-04T14:33:01.2454081Z           "complete": true,
2026-06-04T14:33:01.2455320Z           "evidence": [
2026-06-04T14:33:01.2456471Z             {
2026-06-04T14:33:01.2457715Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T14:33:01.2459342Z               "line": 242
2026-06-04T14:33:01.2460509Z             }
2026-06-04T14:33:01.2461548Z           ]
2026-06-04T14:33:01.2462547Z         }
2026-06-04T14:33:01.2463529Z       }
2026-06-04T14:33:01.2464499Z     },
2026-06-04T14:33:01.2465469Z     {
2026-06-04T14:33:01.2471823Z       "id": "REQ-DAEMON-4",
2026-06-04T14:33:01.2473370Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-04T14:33:01.2474977Z       "requiredStages": [
2026-06-04T14:33:01.2476179Z         "impl",
2026-06-04T14:33:01.2477226Z         "unit",
2026-06-04T14:33:01.2478354Z         "int"
2026-06-04T14:33:01.2479432Z       ],
2026-06-04T14:33:01.2480428Z       "stages": {
2026-06-04T14:33:01.2481502Z         "doc": {
2026-06-04T14:33:01.2482602Z           "complete": false,
2026-06-04T14:33:01.2483858Z           "evidence": []
2026-06-04T14:33:01.2485016Z         },
2026-06-04T14:33:01.2486021Z         "impl": {
2026-06-04T14:33:01.2487128Z           "complete": true,
2026-06-04T14:33:01.2488370Z           "evidence": [
2026-06-04T14:33:01.2489538Z             {
2026-06-04T14:33:01.2491305Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2492970Z               "line": 339
2026-06-04T14:33:01.2494146Z             },
2026-06-04T14:33:01.2495171Z             {
2026-06-04T14:33:01.2496428Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2498045Z               "line": 401
2026-06-04T14:33:01.2499262Z             },
2026-06-04T14:33:01.2500304Z             {
2026-06-04T14:33:01.2501552Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2503169Z               "line": 423
2026-06-04T14:33:01.2504336Z             }
2026-06-04T14:33:01.2505351Z           ]
2026-06-04T14:33:01.2506344Z         },
2026-06-04T14:33:01.2507333Z         "int": {
2026-06-04T14:33:01.2508422Z           "complete": true,
2026-06-04T14:33:01.2509707Z           "evidence": [
2026-06-04T14:33:01.2510838Z             {
2026-06-04T14:33:01.2512126Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T14:33:01.2514034Z               "line": 34
2026-06-04T14:33:01.2515211Z             }
2026-06-04T14:33:01.2516224Z           ]
2026-06-04T14:33:01.2517211Z         },
2026-06-04T14:33:01.2518202Z         "unit": {
2026-06-04T14:33:01.2519354Z           "complete": true,
2026-06-04T14:33:01.2520591Z           "evidence": [
2026-06-04T14:33:01.2521721Z             {
2026-06-04T14:33:01.2522951Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.2524537Z               "line": 353
2026-06-04T14:33:01.2525700Z             },
2026-06-04T14:33:01.2526723Z             {
2026-06-04T14:33:01.2527979Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2529645Z               "line": 717
2026-06-04T14:33:01.2530822Z             },
2026-06-04T14:33:01.2531846Z             {
2026-06-04T14:33:01.2533098Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2534712Z               "line": 768
2026-06-04T14:33:01.2535875Z             },
2026-06-04T14:33:01.2536926Z             {
2026-06-04T14:33:01.2538199Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2539857Z               "line": 792
2026-06-04T14:33:01.2541038Z             },
2026-06-04T14:33:01.2542064Z             {
2026-06-04T14:33:01.2543311Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.2544905Z               "line": 822
2026-06-04T14:33:01.2546065Z             }
2026-06-04T14:33:01.2547073Z           ]
2026-06-04T14:33:01.2548054Z         }
2026-06-04T14:33:01.2549027Z       }
2026-06-04T14:33:01.2550026Z     },
2026-06-04T14:33:01.2551009Z     {
2026-06-04T14:33:01.2552052Z       "id": "REQ-DOCS-1",
2026-06-04T14:33:01.2553918Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-04T14:33:01.2556060Z       "requiredStages": [],
2026-06-04T14:33:01.2557283Z       "stages": {
2026-06-04T14:33:01.2558345Z         "doc": {
2026-06-04T14:33:01.2559479Z           "complete": false,
2026-06-04T14:33:01.2560762Z           "evidence": []
2026-06-04T14:33:01.2561944Z         },
2026-06-04T14:33:01.2562950Z         "impl": {
2026-06-04T14:33:01.2564057Z           "complete": false,
2026-06-04T14:33:01.2565314Z           "evidence": []
2026-06-04T14:33:01.2566480Z         },
2026-06-04T14:33:01.2567468Z         "int": {
2026-06-04T14:33:01.2568555Z           "complete": false,
2026-06-04T14:33:01.2569851Z           "evidence": []
2026-06-04T14:33:01.2571008Z         },
2026-06-04T14:33:01.2576138Z         "unit": {
2026-06-04T14:33:01.2577310Z           "complete": false,
2026-06-04T14:33:01.2578574Z           "evidence": []
2026-06-04T14:33:01.2579818Z         }
2026-06-04T14:33:01.2580792Z       }
2026-06-04T14:33:01.2581740Z     },
2026-06-04T14:33:01.2582697Z     {
2026-06-04T14:33:01.2583704Z       "id": "REQ-DOCS-2",
2026-06-04T14:33:01.2585345Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-04T14:33:01.2587254Z       "requiredStages": [],
2026-06-04T14:33:01.2588476Z       "stages": {
2026-06-04T14:33:01.2589889Z         "doc": {
2026-06-04T14:33:01.2591032Z           "complete": false,
2026-06-04T14:33:01.2592284Z           "evidence": []
2026-06-04T14:33:01.2593439Z         },
2026-06-04T14:33:01.2594431Z         "impl": {
2026-06-04T14:33:01.2595536Z           "complete": false,
2026-06-04T14:33:01.2596782Z           "evidence": []
2026-06-04T14:33:01.2597960Z         },
2026-06-04T14:33:01.2598949Z         "int": {
2026-06-04T14:33:01.2600088Z           "complete": false,
2026-06-04T14:33:01.2601342Z           "evidence": []
2026-06-04T14:33:01.2602498Z         },
2026-06-04T14:33:01.2603482Z         "unit": {
2026-06-04T14:33:01.2604572Z           "complete": false,
2026-06-04T14:33:01.2605821Z           "evidence": []
2026-06-04T14:33:01.2606989Z         }
2026-06-04T14:33:01.2607962Z       }
2026-06-04T14:33:01.2608906Z     },
2026-06-04T14:33:01.2609893Z     {
2026-06-04T14:33:01.2610899Z       "id": "REQ-DOCS-3",
2026-06-04T14:33:01.2612944Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-04T14:33:01.2614923Z       "requiredStages": [],
2026-06-04T14:33:01.2616147Z       "stages": {
2026-06-04T14:33:01.2617217Z         "doc": {
2026-06-04T14:33:01.2618318Z           "complete": false,
2026-06-04T14:33:01.2619624Z           "evidence": []
2026-06-04T14:33:01.2620774Z         },
2026-06-04T14:33:01.2621767Z         "impl": {
2026-06-04T14:33:01.2622861Z           "complete": false,
2026-06-04T14:33:01.2624108Z           "evidence": []
2026-06-04T14:33:01.2625258Z         },
2026-06-04T14:33:01.2626247Z         "int": {
2026-06-04T14:33:01.2627347Z           "complete": false,
2026-06-04T14:33:01.2628619Z           "evidence": []
2026-06-04T14:33:01.2629803Z         },
2026-06-04T14:33:01.2630808Z         "unit": {
2026-06-04T14:33:01.2631917Z           "complete": false,
2026-06-04T14:33:01.2633178Z           "evidence": []
2026-06-04T14:33:01.2634357Z         }
2026-06-04T14:33:01.2635360Z       }
2026-06-04T14:33:01.2636334Z     },
2026-06-04T14:33:01.2637372Z     {
2026-06-04T14:33:01.2638435Z       "id": "REQ-DOCS-4",
2026-06-04T14:33:01.2640343Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-04T14:33:01.2642474Z       "requiredStages": [],
2026-06-04T14:33:01.2643717Z       "stages": {
2026-06-04T14:33:01.2644813Z         "doc": {
2026-06-04T14:33:01.2645933Z           "complete": false,
2026-06-04T14:33:01.2647209Z           "evidence": []
2026-06-04T14:33:01.2648387Z         },
2026-06-04T14:33:01.2649446Z         "impl": {
2026-06-04T14:33:01.2650574Z           "complete": false,
2026-06-04T14:33:01.2651848Z           "evidence": []
2026-06-04T14:33:01.2653033Z         },
2026-06-04T14:33:01.2654045Z         "int": {
2026-06-04T14:33:01.2655165Z           "complete": false,
2026-06-04T14:33:01.2656446Z           "evidence": []
2026-06-04T14:33:01.2657625Z         },
2026-06-04T14:33:01.2658632Z         "unit": {
2026-06-04T14:33:01.2659783Z           "complete": false,
2026-06-04T14:33:01.2661047Z           "evidence": []
2026-06-04T14:33:01.2662214Z         }
2026-06-04T14:33:01.2663179Z       }
2026-06-04T14:33:01.2664126Z     },
2026-06-04T14:33:01.2665085Z     {
2026-06-04T14:33:01.2666072Z       "id": "REQ-DOCS-5",
2026-06-04T14:33:01.2667933Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-04T14:33:01.2670093Z       "requiredStages": [],
2026-06-04T14:33:01.2671325Z       "stages": {
2026-06-04T14:33:01.2672379Z         "doc": {
2026-06-04T14:33:01.2673468Z           "complete": false,
2026-06-04T14:33:01.2678562Z           "evidence": []
2026-06-04T14:33:01.2679845Z         },
2026-06-04T14:33:01.2680848Z         "impl": {
2026-06-04T14:33:01.2681963Z           "complete": false,
2026-06-04T14:33:01.2683226Z           "evidence": []
2026-06-04T14:33:01.2684389Z         },
2026-06-04T14:33:01.2685371Z         "int": {
2026-06-04T14:33:01.2686466Z           "complete": false,
2026-06-04T14:33:01.2687726Z           "evidence": []
2026-06-04T14:33:01.2688914Z         },
2026-06-04T14:33:01.2690182Z         "unit": {
2026-06-04T14:33:01.2691316Z           "complete": false,
2026-06-04T14:33:01.2692561Z           "evidence": []
2026-06-04T14:33:01.2693717Z         }
2026-06-04T14:33:01.2694691Z       }
2026-06-04T14:33:01.2695645Z     },
2026-06-04T14:33:01.2696595Z     {
2026-06-04T14:33:01.2697587Z       "id": "REQ-EP-1",
2026-06-04T14:33:01.2698988Z       "title": "Day-one endpoint types; open type system",
2026-06-04T14:33:01.2700671Z       "requiredStages": [
2026-06-04T14:33:01.2701862Z         "impl",
2026-06-04T14:33:01.2702892Z         "unit"
2026-06-04T14:33:01.2703932Z       ],
2026-06-04T14:33:01.2704908Z       "stages": {
2026-06-04T14:33:01.2705958Z         "doc": {
2026-06-04T14:33:01.2707053Z           "complete": false,
2026-06-04T14:33:01.2708305Z           "evidence": []
2026-06-04T14:33:01.2709485Z         },
2026-06-04T14:33:01.2710473Z         "impl": {
2026-06-04T14:33:01.2711568Z           "complete": true,
2026-06-04T14:33:01.2712784Z           "evidence": [
2026-06-04T14:33:01.2714108Z             {
2026-06-04T14:33:01.2715341Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2716940Z               "line": 77
2026-06-04T14:33:01.2718078Z             },
2026-06-04T14:33:01.2719088Z             {
2026-06-04T14:33:01.2720355Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2721939Z               "line": 94
2026-06-04T14:33:01.2723073Z             }
2026-06-04T14:33:01.2724078Z           ]
2026-06-04T14:33:01.2725062Z         },
2026-06-04T14:33:01.2726039Z         "int": {
2026-06-04T14:33:01.2727120Z           "complete": false,
2026-06-04T14:33:01.2728363Z           "evidence": []
2026-06-04T14:33:01.2729547Z         },
2026-06-04T14:33:01.2730537Z         "unit": {
2026-06-04T14:33:01.2731634Z           "complete": true,
2026-06-04T14:33:01.2732860Z           "evidence": [
2026-06-04T14:33:01.2733987Z             {
2026-06-04T14:33:01.2735221Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2736850Z               "line": 161
2026-06-04T14:33:01.2738015Z             },
2026-06-04T14:33:01.2739037Z             {
2026-06-04T14:33:01.2740304Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2741895Z               "line": 178
2026-06-04T14:33:01.2743045Z             }
2026-06-04T14:33:01.2744059Z           ]
2026-06-04T14:33:01.2745047Z         }
2026-06-04T14:33:01.2746007Z       }
2026-06-04T14:33:01.2746946Z     },
2026-06-04T14:33:01.2747890Z     {
2026-06-04T14:33:01.2748876Z       "id": "REQ-EP-2",
2026-06-04T14:33:01.2750575Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-04T14:33:01.2752496Z       "requiredStages": [
2026-06-04T14:33:01.2753689Z         "impl",
2026-06-04T14:33:01.2754737Z         "unit"
2026-06-04T14:33:01.2755744Z       ],
2026-06-04T14:33:01.2756712Z       "stages": {
2026-06-04T14:33:01.2757761Z         "doc": {
2026-06-04T14:33:01.2758855Z           "complete": false,
2026-06-04T14:33:01.2760188Z           "evidence": []
2026-06-04T14:33:01.2761344Z         },
2026-06-04T14:33:01.2762333Z         "impl": {
2026-06-04T14:33:01.2763419Z           "complete": true,
2026-06-04T14:33:01.2764641Z           "evidence": [
2026-06-04T14:33:01.2765755Z             {
2026-06-04T14:33:01.2766999Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2768585Z               "line": 114
2026-06-04T14:33:01.2769766Z             },
2026-06-04T14:33:01.2770839Z             {
2026-06-04T14:33:01.2772072Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2777649Z               "line": 131
2026-06-04T14:33:01.2778883Z             },
2026-06-04T14:33:01.2779997Z             {
2026-06-04T14:33:01.2781235Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2782826Z               "line": 138
2026-06-04T14:33:01.2783985Z             }
2026-06-04T14:33:01.2784982Z           ]
2026-06-04T14:33:01.2785959Z         },
2026-06-04T14:33:01.2786980Z         "int": {
2026-06-04T14:33:01.2788372Z           "complete": false,
2026-06-04T14:33:01.2789724Z           "evidence": []
2026-06-04T14:33:01.2790871Z         },
2026-06-04T14:33:01.2791858Z         "unit": {
2026-06-04T14:33:01.2792944Z           "complete": true,
2026-06-04T14:33:01.2794162Z           "evidence": [
2026-06-04T14:33:01.2795272Z             {
2026-06-04T14:33:01.2796507Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2798085Z               "line": 193
2026-06-04T14:33:01.2799296Z             },
2026-06-04T14:33:01.2800312Z             {
2026-06-04T14:33:01.2801540Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2803119Z               "line": 211
2026-06-04T14:33:01.2804270Z             },
2026-06-04T14:33:01.2805283Z             {
2026-06-04T14:33:01.2806511Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T14:33:01.2808092Z               "line": 224
2026-06-04T14:33:01.2809282Z             }
2026-06-04T14:33:01.2810498Z           ]
2026-06-04T14:33:01.2811464Z         }
2026-06-04T14:33:01.2812426Z       }
2026-06-04T14:33:01.2812861Z     },
2026-06-04T14:33:01.2813296Z     {
2026-06-04T14:33:01.2813761Z       "id": "REQ-EP-3",
2026-06-04T14:33:01.2814837Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-04T14:33:01.2815329Z       "requiredStages": [
2026-06-04T14:33:01.2815772Z         "impl",
2026-06-04T14:33:01.2816218Z         "unit"
2026-06-04T14:33:01.2816649Z       ],
2026-06-04T14:33:01.2817104Z       "stages": {
2026-06-04T14:33:01.2817546Z         "doc": {
2026-06-04T14:33:01.2818029Z           "complete": false,
2026-06-04T14:33:01.2818494Z           "evidence": []
2026-06-04T14:33:01.2818922Z         },
2026-06-04T14:33:01.2819416Z         "impl": {
2026-06-04T14:33:01.2819898Z           "complete": true,
2026-06-04T14:33:01.2820365Z           "evidence": [
2026-06-04T14:33:01.2820808Z             {
2026-06-04T14:33:01.2821475Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2821957Z               "line": 31
2026-06-04T14:33:01.2822395Z             },
2026-06-04T14:33:01.2822835Z             {
2026-06-04T14:33:01.2823489Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2823954Z               "line": 49
2026-06-04T14:33:01.2824393Z             }
2026-06-04T14:33:01.2824830Z           ]
2026-06-04T14:33:01.2825273Z         },
2026-06-04T14:33:01.2825710Z         "int": {
2026-06-04T14:33:01.2826202Z           "complete": false,
2026-06-04T14:33:01.2826672Z           "evidence": []
2026-06-04T14:33:01.2827118Z         },
2026-06-04T14:33:01.2827566Z         "unit": {
2026-06-04T14:33:01.2828038Z           "complete": true,
2026-06-04T14:33:01.2828512Z           "evidence": [
2026-06-04T14:33:01.2828949Z             {
2026-06-04T14:33:01.2829652Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2830114Z               "line": 156
2026-06-04T14:33:01.2830556Z             },
2026-06-04T14:33:01.2831023Z             {
2026-06-04T14:33:01.2831676Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2832150Z               "line": 164
2026-06-04T14:33:01.2832584Z             },
2026-06-04T14:33:01.2833026Z             {
2026-06-04T14:33:01.2833677Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2834149Z               "line": 177
2026-06-04T14:33:01.2834590Z             },
2026-06-04T14:33:01.2835025Z             {
2026-06-04T14:33:01.2835691Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2836162Z               "line": 197
2026-06-04T14:33:01.2836611Z             },
2026-06-04T14:33:01.2837053Z             {
2026-06-04T14:33:01.2837705Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2838179Z               "line": 213
2026-06-04T14:33:01.2838614Z             },
2026-06-04T14:33:01.2839051Z             {
2026-06-04T14:33:01.2839788Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T14:33:01.2840563Z               "line": 227
2026-06-04T14:33:01.2841044Z             }
2026-06-04T14:33:01.2841487Z           ]
2026-06-04T14:33:01.2841921Z         }
2026-06-04T14:33:01.2842354Z       }
2026-06-04T14:33:01.2842780Z     },
2026-06-04T14:33:01.2843204Z     {
2026-06-04T14:33:01.2843678Z       "id": "REQ-EP-4",
2026-06-04T14:33:01.2844486Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-04T14:33:01.2845013Z       "requiredStages": [
2026-06-04T14:33:01.2845475Z         "impl",
2026-06-04T14:33:01.2845905Z         "unit"
2026-06-04T14:33:01.2846352Z       ],
2026-06-04T14:33:01.2846800Z       "stages": {
2026-06-04T14:33:01.2847246Z         "doc": {
2026-06-04T14:33:01.2847735Z           "complete": false,
2026-06-04T14:33:01.2848220Z           "evidence": []
2026-06-04T14:33:01.2848665Z         },
2026-06-04T14:33:01.2849102Z         "impl": {
2026-06-04T14:33:01.2849644Z           "complete": true,
2026-06-04T14:33:01.2850332Z           "evidence": [
2026-06-04T14:33:01.2850791Z             {
2026-06-04T14:33:01.2851436Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.2851913Z               "line": 419
2026-06-04T14:33:01.2852354Z             },
2026-06-04T14:33:01.2852784Z             {
2026-06-04T14:33:01.2853421Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.2853892Z               "line": 631
2026-06-04T14:33:01.2854341Z             },
2026-06-04T14:33:01.2854772Z             {
2026-06-04T14:33:01.2855427Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.2855900Z               "line": 696
2026-06-04T14:33:01.2856341Z             },
2026-06-04T14:33:01.2856795Z             {
2026-06-04T14:33:01.2857411Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2857883Z               "line": 83
2026-06-04T14:33:01.2858310Z             },
2026-06-04T14:33:01.2858751Z             {
2026-06-04T14:33:01.2859418Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2859918Z               "line": 407
2026-06-04T14:33:01.2860363Z             },
2026-06-04T14:33:01.2860795Z             {
2026-06-04T14:33:01.2861403Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2861871Z               "line": 478
2026-06-04T14:33:01.2862307Z             },
2026-06-04T14:33:01.2862746Z             {
2026-06-04T14:33:01.2863391Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2863858Z               "line": 181
2026-06-04T14:33:01.2868279Z             },
2026-06-04T14:33:01.2868812Z             {
2026-06-04T14:33:01.2869586Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2870069Z               "line": 306
2026-06-04T14:33:01.2870516Z             },
2026-06-04T14:33:01.2870952Z             {
2026-06-04T14:33:01.2871616Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T14:33:01.2872082Z               "line": 613
2026-06-04T14:33:01.2872563Z             }
2026-06-04T14:33:01.2873008Z           ]
2026-06-04T14:33:01.2873444Z         },
2026-06-04T14:33:01.2873890Z         "int": {
2026-06-04T14:33:01.2874374Z           "complete": false,
2026-06-04T14:33:01.2874856Z           "evidence": []
2026-06-04T14:33:01.2875289Z         },
2026-06-04T14:33:01.2875738Z         "unit": {
2026-06-04T14:33:01.2876217Z           "complete": true,
2026-06-04T14:33:01.2876691Z           "evidence": [
2026-06-04T14:33:01.2877130Z             {
2026-06-04T14:33:01.2877737Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T14:33:01.2878205Z               "line": 551
2026-06-04T14:33:01.2878636Z             },
2026-06-04T14:33:01.2879072Z             {
2026-06-04T14:33:01.2879819Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T14:33:01.2880286Z               "line": 75
2026-06-04T14:33:01.2880728Z             },
2026-06-04T14:33:01.2881161Z             {
2026-06-04T14:33:01.2881850Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T14:33:01.2882579Z               "line": 131
2026-06-04T14:33:01.2883042Z             }
2026-06-04T14:33:01.2883484Z           ]
2026-06-04T14:33:01.2883917Z         }
2026-06-04T14:33:01.2884350Z       }
2026-06-04T14:33:01.2884775Z     },
2026-06-04T14:33:01.2885208Z     {
2026-06-04T14:33:01.2885674Z       "id": "REQ-EP-5",
2026-06-04T14:33:01.2889929Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-04T14:33:01.2890444Z       "requiredStages": [],
2026-06-04T14:33:01.2890889Z       "stages": {
2026-06-04T14:33:01.2891334Z         "doc": {
2026-06-04T14:33:01.2891821Z           "complete": false,
2026-06-04T14:33:01.2892299Z           "evidence": []
2026-06-04T14:33:01.2892736Z         },
2026-06-04T14:33:01.2893191Z         "impl": {
2026-06-04T14:33:01.2893685Z           "complete": false,
2026-06-04T14:33:01.2894329Z           "evidence": []
2026-06-04T14:33:01.2894765Z         },
2026-06-04T14:33:01.2895200Z         "int": {
2026-06-04T14:33:01.2895688Z           "complete": false,
2026-06-04T14:33:01.2896157Z           "evidence": []
2026-06-04T14:33:01.2896593Z         },
2026-06-04T14:33:01.2897041Z         "unit": {
2026-06-04T14:33:01.2897522Z           "complete": false,
2026-06-04T14:33:01.2897994Z           "evidence": []
2026-06-04T14:33:01.2898422Z         }
2026-06-04T14:33:01.2898855Z       }
2026-06-04T14:33:01.2899304Z     },
2026-06-04T14:33:01.2899735Z     {
2026-06-04T14:33:01.2900239Z       "id": "REQ-FRONT-1",
2026-06-04T14:33:01.2901222Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-04T14:33:01.2901728Z       "requiredStages": [],
2026-06-04T14:33:01.2902175Z       "stages": {
2026-06-04T14:33:01.2902617Z         "doc": {
2026-06-04T14:33:01.2903097Z           "complete": false,
2026-06-04T14:33:01.2903567Z           "evidence": []
2026-06-04T14:33:01.2904039Z         },
2026-06-04T14:33:01.2904489Z         "impl": {
2026-06-04T14:33:01.2904982Z           "complete": false,
2026-06-04T14:33:01.2905445Z           "evidence": []
2026-06-04T14:33:01.2905880Z         },
2026-06-04T14:33:01.2906313Z         "int": {
2026-06-04T14:33:01.2906802Z           "complete": false,
2026-06-04T14:33:01.2907267Z           "evidence": []
2026-06-04T14:33:01.2907696Z         },
2026-06-04T14:33:01.2908138Z         "unit": {
2026-06-04T14:33:01.2908621Z           "complete": false,
2026-06-04T14:33:01.2909100Z           "evidence": []
2026-06-04T14:33:01.2909579Z         }
2026-06-04T14:33:01.2910019Z       }
2026-06-04T14:33:01.2910457Z     },
2026-06-04T14:33:01.2910879Z     {
2026-06-04T14:33:01.2911501Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-04T14:33:01.2912462Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-04T14:33:01.2912966Z       "requiredStages": [
2026-06-04T14:33:01.2913424Z         "impl",
2026-06-04T14:33:01.2913883Z         "unit"
2026-06-04T14:33:01.2914322Z       ],
2026-06-04T14:33:01.2914768Z       "stages": {
2026-06-04T14:33:01.2915211Z         "doc": {
2026-06-04T14:33:01.2915699Z           "complete": false,
2026-06-04T14:33:01.2916177Z           "evidence": []
2026-06-04T14:33:01.2916603Z         },
2026-06-04T14:33:01.2917062Z         "impl": {
2026-06-04T14:33:01.2917552Z           "complete": true,
2026-06-04T14:33:01.2918009Z           "evidence": [
2026-06-04T14:33:01.2918445Z             {
2026-06-04T14:33:01.2919091Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.2919600Z               "line": 119
2026-06-04T14:33:01.2920033Z             },
2026-06-04T14:33:01.2920482Z             {
2026-06-04T14:33:01.2921100Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.2921565Z               "line": 18
2026-06-04T14:33:01.2922010Z             },
2026-06-04T14:33:01.2922437Z             {
2026-06-04T14:33:01.2923218Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.2923698Z               "line": 94
2026-06-04T14:33:01.2924144Z             }
2026-06-04T14:33:01.2924577Z           ]
2026-06-04T14:33:01.2925002Z         },
2026-06-04T14:33:01.2925449Z         "int": {
2026-06-04T14:33:01.2925931Z           "complete": false,
2026-06-04T14:33:01.2926405Z           "evidence": []
2026-06-04T14:33:01.2926826Z         },
2026-06-04T14:33:01.2927277Z         "unit": {
2026-06-04T14:33:01.2927769Z           "complete": true,
2026-06-04T14:33:01.2928226Z           "evidence": [
2026-06-04T14:33:01.2928674Z             {
2026-06-04T14:33:01.2929369Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.2929853Z               "line": 363
2026-06-04T14:33:01.2930295Z             },
2026-06-04T14:33:01.2930737Z             {
2026-06-04T14:33:01.2931350Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.2931814Z               "line": 152
2026-06-04T14:33:01.2932406Z             },
2026-06-04T14:33:01.2932847Z             {
2026-06-04T14:33:01.2933466Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.2933927Z               "line": 188
2026-06-04T14:33:01.2934390Z             }
2026-06-04T14:33:01.2934839Z           ]
2026-06-04T14:33:01.2935268Z         }
2026-06-04T14:33:01.2935706Z       }
2026-06-04T14:33:01.2936130Z     },
2026-06-04T14:33:01.2936563Z     {
2026-06-04T14:33:01.2937204Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-04T14:33:01.2940763Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-04T14:33:01.2941269Z       "requiredStages": [
2026-06-04T14:33:01.2941706Z         "impl",
2026-06-04T14:33:01.2942161Z         "unit"
2026-06-04T14:33:01.2942927Z       ],
2026-06-04T14:33:01.2943621Z       "stages": {
2026-06-04T14:33:01.2944228Z         "doc": {
2026-06-04T14:33:01.2944973Z           "complete": false,
2026-06-04T14:33:01.2945526Z           "evidence": []
2026-06-04T14:33:01.2946010Z         },
2026-06-04T14:33:01.2946501Z         "impl": {
2026-06-04T14:33:01.2947019Z           "complete": true,
2026-06-04T14:33:01.2947479Z           "evidence": [
2026-06-04T14:33:01.2947919Z             {
2026-06-04T14:33:01.2948594Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T14:33:01.2949065Z               "line": 22
2026-06-04T14:33:01.2949740Z             },
2026-06-04T14:33:01.2950364Z             {
2026-06-04T14:33:01.2951005Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.2951464Z               "line": 417
2026-06-04T14:33:01.2951907Z             },
2026-06-04T14:33:01.2952346Z             {
2026-06-04T14:33:01.2953008Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T14:33:01.2953476Z               "line": 17
2026-06-04T14:33:01.2953915Z             },
2026-06-04T14:33:01.2954389Z             {
2026-06-04T14:33:01.2955059Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T14:33:01.2959742Z               "line": 125
2026-06-04T14:33:01.2960262Z             },
2026-06-04T14:33:01.2960705Z             {
2026-06-04T14:33:01.2961427Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.2961899Z               "line": 169
2026-06-04T14:33:01.2962349Z             },
2026-06-04T14:33:01.2962782Z             {
2026-06-04T14:33:01.2963491Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.2963961Z               "line": 197
2026-06-04T14:33:01.2964412Z             },
2026-06-04T14:33:01.2964852Z             {
2026-06-04T14:33:01.2965553Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.2966036Z               "line": 223
2026-06-04T14:33:01.2966468Z             },
2026-06-04T14:33:01.2966905Z             {
2026-06-04T14:33:01.2967569Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.2968372Z               "line": 122
2026-06-04T14:33:01.2968849Z             },
2026-06-04T14:33:01.2969337Z             {
2026-06-04T14:33:01.2970022Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.2970493Z               "line": 222
2026-06-04T14:33:01.2970930Z             }
2026-06-04T14:33:01.2971363Z           ]
2026-06-04T14:33:01.2971802Z         },
2026-06-04T14:33:01.2972256Z         "int": {
2026-06-04T14:33:01.2972745Z           "complete": false,
2026-06-04T14:33:01.2973237Z           "evidence": []
2026-06-04T14:33:01.2973670Z         },
2026-06-04T14:33:01.2974120Z         "unit": {
2026-06-04T14:33:01.2974602Z           "complete": true,
2026-06-04T14:33:01.2975073Z           "evidence": [
2026-06-04T14:33:01.2975515Z             {
2026-06-04T14:33:01.2976175Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T14:33:01.2976645Z               "line": 53
2026-06-04T14:33:01.2977079Z             },
2026-06-04T14:33:01.2977694Z             {
2026-06-04T14:33:01.2978383Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T14:33:01.2978854Z               "line": 60
2026-06-04T14:33:01.2979335Z             },
2026-06-04T14:33:01.2979765Z             {
2026-06-04T14:33:01.2980440Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T14:33:01.2980899Z               "line": 72
2026-06-04T14:33:01.2981343Z             },
2026-06-04T14:33:01.2981771Z             {
2026-06-04T14:33:01.2982415Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.2982892Z               "line": 298
2026-06-04T14:33:01.2983329Z             },
2026-06-04T14:33:01.2983764Z             {
2026-06-04T14:33:01.2984409Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T14:33:01.2984878Z               "line": 247
2026-06-04T14:33:01.2985318Z             },
2026-06-04T14:33:01.2985760Z             {
2026-06-04T14:33:01.2986417Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T14:33:01.2986917Z               "line": 282
2026-06-04T14:33:01.2987358Z             },
2026-06-04T14:33:01.2987791Z             {
2026-06-04T14:33:01.2988445Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T14:33:01.2988920Z               "line": 313
2026-06-04T14:33:01.2989566Z             },
2026-06-04T14:33:01.2990202Z             {
2026-06-04T14:33:01.2990917Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.2991392Z               "line": 604
2026-06-04T14:33:01.2991832Z             },
2026-06-04T14:33:01.2992265Z             {
2026-06-04T14:33:01.2992934Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.2993401Z               "line": 383
2026-06-04T14:33:01.2993849Z             },
2026-06-04T14:33:01.2994282Z             {
2026-06-04T14:33:01.2994946Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.2995410Z               "line": 420
2026-06-04T14:33:01.2995848Z             }
2026-06-04T14:33:01.2996315Z           ]
2026-06-04T14:33:01.2996742Z         }
2026-06-04T14:33:01.2997175Z       }
2026-06-04T14:33:01.2997603Z     },
2026-06-04T14:33:01.2998034Z     {
2026-06-04T14:33:01.2998587Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-04T14:33:01.2999891Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-04T14:33:01.3000395Z       "requiredStages": [
2026-06-04T14:33:01.3000836Z         "impl",
2026-06-04T14:33:01.3001274Z         "unit"
2026-06-04T14:33:01.3001700Z       ],
2026-06-04T14:33:01.3002159Z       "stages": {
2026-06-04T14:33:01.3002595Z         "doc": {
2026-06-04T14:33:01.3003093Z           "complete": false,
2026-06-04T14:33:01.3003564Z           "evidence": []
2026-06-04T14:33:01.3003995Z         },
2026-06-04T14:33:01.3004444Z         "impl": {
2026-06-04T14:33:01.3004932Z           "complete": true,
2026-06-04T14:33:01.3005402Z           "evidence": [
2026-06-04T14:33:01.3005830Z             {
2026-06-04T14:33:01.3006712Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T14:33:01.3007208Z               "line": 164
2026-06-04T14:33:01.3007653Z             }
2026-06-04T14:33:01.3008096Z           ]
2026-06-04T14:33:01.3008526Z         },
2026-06-04T14:33:01.3008965Z         "int": {
2026-06-04T14:33:01.3009488Z           "complete": true,
2026-06-04T14:33:01.3009956Z           "evidence": [
2026-06-04T14:33:01.3010390Z             {
2026-06-04T14:33:01.3011006Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T14:33:01.3011475Z               "line": 44
2026-06-04T14:33:01.3011909Z             },
2026-06-04T14:33:01.3012352Z             {
2026-06-04T14:33:01.3012959Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T14:33:01.3013434Z               "line": 66
2026-06-04T14:33:01.3013871Z             }
2026-06-04T14:33:01.3014297Z           ]
2026-06-04T14:33:01.3014738Z         },
2026-06-04T14:33:01.3015181Z         "unit": {
2026-06-04T14:33:01.3015670Z           "complete": true,
2026-06-04T14:33:01.3016314Z           "evidence": [
2026-06-04T14:33:01.3016759Z             {
2026-06-04T14:33:01.3017390Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T14:33:01.3017850Z               "line": 181
2026-06-04T14:33:01.3018290Z             },
2026-06-04T14:33:01.3018725Z             {
2026-06-04T14:33:01.3019389Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T14:33:01.3019860Z               "line": 233
2026-06-04T14:33:01.3020298Z             },
2026-06-04T14:33:01.3020731Z             {
2026-06-04T14:33:01.3021339Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T14:33:01.3021818Z               "line": 261
2026-06-04T14:33:01.3022247Z             }
2026-06-04T14:33:01.3022690Z           ]
2026-06-04T14:33:01.3023122Z         }
2026-06-04T14:33:01.3023557Z       }
2026-06-04T14:33:01.3023996Z     },
2026-06-04T14:33:01.3024417Z     {
2026-06-04T14:33:01.3025054Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-04T14:33:01.3027666Z       "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-04T14:33:01.3028172Z       "requiredStages": [
2026-06-04T14:33:01.3028614Z         "impl",
2026-06-04T14:33:01.3029054Z         "unit",
2026-06-04T14:33:01.3029532Z         "int"
2026-06-04T14:33:01.3029959Z       ],
2026-06-04T14:33:01.3030409Z       "stages": {
2026-06-04T14:33:01.3030842Z         "doc": {
2026-06-04T14:33:01.3031336Z           "complete": false,
2026-06-04T14:33:01.3031802Z           "evidence": []
2026-06-04T14:33:01.3032241Z         },
2026-06-04T14:33:01.3032692Z         "impl": {
2026-06-04T14:33:01.3033162Z           "complete": true,
2026-06-04T14:33:01.3033626Z           "evidence": [
2026-06-04T14:33:01.3034061Z             {
2026-06-04T14:33:01.3034741Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3035207Z               "line": 150
2026-06-04T14:33:01.3035659Z             },
2026-06-04T14:33:01.3036121Z             {
2026-06-04T14:33:01.3036785Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3037257Z               "line": 169
2026-06-04T14:33:01.3037699Z             },
2026-06-04T14:33:01.3038133Z             {
2026-06-04T14:33:01.3038754Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.3039262Z               "line": 79
2026-06-04T14:33:01.3039705Z             },
2026-06-04T14:33:01.3040126Z             {
2026-06-04T14:33:01.3040715Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3041177Z               "line": 51
2026-06-04T14:33:01.3041614Z             },
2026-06-04T14:33:01.3042039Z             {
2026-06-04T14:33:01.3042645Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3046694Z               "line": 154
2026-06-04T14:33:01.3047202Z             },
2026-06-04T14:33:01.3047653Z             {
2026-06-04T14:33:01.3048314Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3049075Z               "line": 27
2026-06-04T14:33:01.3049633Z             },
2026-06-04T14:33:01.3050069Z             {
2026-06-04T14:33:01.3050723Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3051181Z               "line": 79
2026-06-04T14:33:01.3051625Z             },
2026-06-04T14:33:01.3052053Z             {
2026-06-04T14:33:01.3052702Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3053178Z               "line": 102
2026-06-04T14:33:01.3053617Z             },
2026-06-04T14:33:01.3054053Z             {
2026-06-04T14:33:01.3054706Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.3055178Z               "line": 108
2026-06-04T14:33:01.3055609Z             }
2026-06-04T14:33:01.3056053Z           ]
2026-06-04T14:33:01.3056485Z         },
2026-06-04T14:33:01.3056928Z         "int": {
2026-06-04T14:33:01.3057407Z           "complete": true,
2026-06-04T14:33:01.3058015Z           "evidence": [
2026-06-04T14:33:01.3058468Z             {
2026-06-04T14:33:01.3059210Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T14:33:01.3059678Z               "line": 35
2026-06-04T14:33:01.3060115Z             }
2026-06-04T14:33:01.3060540Z           ]
2026-06-04T14:33:01.3060972Z         },
2026-06-04T14:33:01.3061408Z         "unit": {
2026-06-04T14:33:01.3061886Z           "complete": true,
2026-06-04T14:33:01.3062344Z           "evidence": [
2026-06-04T14:33:01.3062783Z             {
2026-06-04T14:33:01.3063460Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3063919Z               "line": 544
2026-06-04T14:33:01.3064360Z             },
2026-06-04T14:33:01.3064797Z             {
2026-06-04T14:33:01.3065400Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3065868Z               "line": 330
2026-06-04T14:33:01.3066309Z             },
2026-06-04T14:33:01.3066749Z             {
2026-06-04T14:33:01.3067417Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3067885Z               "line": 124
2026-06-04T14:33:01.3068310Z             },
2026-06-04T14:33:01.3068744Z             {
2026-06-04T14:33:01.3069422Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3069891Z               "line": 136
2026-06-04T14:33:01.3070323Z             },
2026-06-04T14:33:01.3070744Z             {
2026-06-04T14:33:01.3071390Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3071843Z               "line": 146
2026-06-04T14:33:01.3072284Z             },
2026-06-04T14:33:01.3072706Z             {
2026-06-04T14:33:01.3073352Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3073819Z               "line": 159
2026-06-04T14:33:01.3074245Z             },
2026-06-04T14:33:01.3074675Z             {
2026-06-04T14:33:01.3075318Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T14:33:01.3075793Z               "line": 171
2026-06-04T14:33:01.3076249Z             },
2026-06-04T14:33:01.3076688Z             {
2026-06-04T14:33:01.3077332Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.3077791Z               "line": 207
2026-06-04T14:33:01.3078225Z             }
2026-06-04T14:33:01.3078645Z           ]
2026-06-04T14:33:01.3079091Z         }
2026-06-04T14:33:01.3079572Z       }
2026-06-04T14:33:01.3080016Z     },
2026-06-04T14:33:01.3080454Z     {
2026-06-04T14:33:01.3081088Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-04T14:33:01.3085161Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-04T14:33:01.3085656Z       "requiredStages": [],
2026-06-04T14:33:01.3086102Z       "stages": {
2026-06-04T14:33:01.3086538Z         "doc": {
2026-06-04T14:33:01.3087009Z           "complete": false,
2026-06-04T14:33:01.3087665Z           "evidence": []
2026-06-04T14:33:01.3088111Z         },
2026-06-04T14:33:01.3088564Z         "impl": {
2026-06-04T14:33:01.3089043Z           "complete": false,
2026-06-04T14:33:01.3089585Z           "evidence": []
2026-06-04T14:33:01.3090020Z         },
2026-06-04T14:33:01.3090448Z         "int": {
2026-06-04T14:33:01.3090938Z           "complete": false,
2026-06-04T14:33:01.3091402Z           "evidence": []
2026-06-04T14:33:01.3091833Z         },
2026-06-04T14:33:01.3092266Z         "unit": {
2026-06-04T14:33:01.3092751Z           "complete": false,
2026-06-04T14:33:01.3093229Z           "evidence": []
2026-06-04T14:33:01.3093663Z         }
2026-06-04T14:33:01.3094100Z       }
2026-06-04T14:33:01.3094527Z     },
2026-06-04T14:33:01.3094960Z     {
2026-06-04T14:33:01.3095504Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-04T14:33:01.3096546Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-04T14:33:01.3097212Z       "requiredStages": [
2026-06-04T14:33:01.3097661Z         "impl",
2026-06-04T14:33:01.3098098Z         "unit"
2026-06-04T14:33:01.3098516Z       ],
2026-06-04T14:33:01.3098964Z       "stages": {
2026-06-04T14:33:01.3099443Z         "doc": {
2026-06-04T14:33:01.3099944Z           "complete": false,
2026-06-04T14:33:01.3100414Z           "evidence": []
2026-06-04T14:33:01.3100833Z         },
2026-06-04T14:33:01.3101270Z         "impl": {
2026-06-04T14:33:01.3101748Z           "complete": true,
2026-06-04T14:33:01.3102210Z           "evidence": [
2026-06-04T14:33:01.3102631Z             {
2026-06-04T14:33:01.3103256Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3103715Z               "line": 40
2026-06-04T14:33:01.3104149Z             },
2026-06-04T14:33:01.3104580Z             {
2026-06-04T14:33:01.3105188Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3105651Z               "line": 98
2026-06-04T14:33:01.3106082Z             },
2026-06-04T14:33:01.3106533Z             {
2026-06-04T14:33:01.3107159Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3107625Z               "line": 209
2026-06-04T14:33:01.3108062Z             },
2026-06-04T14:33:01.3108490Z             {
2026-06-04T14:33:01.3109100Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3109593Z               "line": 291
2026-06-04T14:33:01.3110023Z             }
2026-06-04T14:33:01.3110457Z           ]
2026-06-04T14:33:01.3110878Z         },
2026-06-04T14:33:01.3111314Z         "int": {
2026-06-04T14:33:01.3111792Z           "complete": false,
2026-06-04T14:33:01.3112260Z           "evidence": []
2026-06-04T14:33:01.3112681Z         },
2026-06-04T14:33:01.3113123Z         "unit": {
2026-06-04T14:33:01.3113605Z           "complete": true,
2026-06-04T14:33:01.3114055Z           "evidence": [
2026-06-04T14:33:01.3114494Z             {
2026-06-04T14:33:01.3115104Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3115578Z               "line": 326
2026-06-04T14:33:01.3116026Z             },
2026-06-04T14:33:01.3116467Z             {
2026-06-04T14:33:01.3117089Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3117546Z               "line": 372
2026-06-04T14:33:01.3117982Z             },
2026-06-04T14:33:01.3118403Z             {
2026-06-04T14:33:01.3119013Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3119543Z               "line": 413
2026-06-04T14:33:01.3119984Z             },
2026-06-04T14:33:01.3120411Z             {
2026-06-04T14:33:01.3121011Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3121482Z               "line": 432
2026-06-04T14:33:01.3121908Z             }
2026-06-04T14:33:01.3122338Z           ]
2026-06-04T14:33:01.3122759Z         }
2026-06-04T14:33:01.3123212Z       }
2026-06-04T14:33:01.3123633Z     },
2026-06-04T14:33:01.3124044Z     {
2026-06-04T14:33:01.3124675Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-04T14:33:01.3125534Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-04T14:33:01.3126056Z       "requiredStages": [
2026-06-04T14:33:01.3126487Z         "impl",
2026-06-04T14:33:01.3126927Z         "unit"
2026-06-04T14:33:01.3127355Z       ],
2026-06-04T14:33:01.3127795Z       "stages": {
2026-06-04T14:33:01.3128231Z         "doc": {
2026-06-04T14:33:01.3128707Z           "complete": false,
2026-06-04T14:33:01.3129218Z           "evidence": []
2026-06-04T14:33:01.3133021Z         },
2026-06-04T14:33:01.3133560Z         "impl": {
2026-06-04T14:33:01.3134055Z           "complete": true,
2026-06-04T14:33:01.3134521Z           "evidence": [
2026-06-04T14:33:01.3134964Z             {
2026-06-04T14:33:01.3135584Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3136059Z               "line": 111
2026-06-04T14:33:01.3136483Z             },
2026-06-04T14:33:01.3136919Z             {
2026-06-04T14:33:01.3137549Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3138295Z               "line": 202
2026-06-04T14:33:01.3138737Z             }
2026-06-04T14:33:01.3139233Z           ]
2026-06-04T14:33:01.3139678Z         },
2026-06-04T14:33:01.3140116Z         "int": {
2026-06-04T14:33:01.3140611Z           "complete": false,
2026-06-04T14:33:01.3141087Z           "evidence": []
2026-06-04T14:33:01.3141513Z         },
2026-06-04T14:33:01.3141966Z         "unit": {
2026-06-04T14:33:01.3142442Z           "complete": true,
2026-06-04T14:33:01.3142912Z           "evidence": [
2026-06-04T14:33:01.3143348Z             {
2026-06-04T14:33:01.3143970Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3144450Z               "line": 347
2026-06-04T14:33:01.3144879Z             },
2026-06-04T14:33:01.3145315Z             {
2026-06-04T14:33:01.3145926Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.3146395Z               "line": 391
2026-06-04T14:33:01.3146826Z             }
2026-06-04T14:33:01.3147266Z           ]
2026-06-04T14:33:01.3147716Z         }
2026-06-04T14:33:01.3148166Z       }
2026-06-04T14:33:01.3148599Z     },
2026-06-04T14:33:01.3149017Z     {
2026-06-04T14:33:01.3149692Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-04T14:33:01.3150928Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-04T14:33:01.3151434Z       "requiredStages": [
2026-06-04T14:33:01.3151879Z         "impl",
2026-06-04T14:33:01.3152305Z         "unit"
2026-06-04T14:33:01.3152735Z       ],
2026-06-04T14:33:01.3153179Z       "stages": {
2026-06-04T14:33:01.3153613Z         "doc": {
2026-06-04T14:33:01.3154090Z           "complete": false,
2026-06-04T14:33:01.3154567Z           "evidence": []
2026-06-04T14:33:01.3154995Z         },
2026-06-04T14:33:01.3155431Z         "impl": {
2026-06-04T14:33:01.3155914Z           "complete": true,
2026-06-04T14:33:01.3156363Z           "evidence": [
2026-06-04T14:33:01.3156791Z             {
2026-06-04T14:33:01.3157408Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3157903Z               "line": 26
2026-06-04T14:33:01.3158345Z             },
2026-06-04T14:33:01.3158769Z             {
2026-06-04T14:33:01.3159428Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3159894Z               "line": 126
2026-06-04T14:33:01.3160336Z             },
2026-06-04T14:33:01.3160757Z             {
2026-06-04T14:33:01.3161441Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3161904Z               "line": 26
2026-06-04T14:33:01.3162329Z             },
2026-06-04T14:33:01.3162761Z             {
2026-06-04T14:33:01.3163442Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3163909Z               "line": 233
2026-06-04T14:33:01.3164343Z             }
2026-06-04T14:33:01.3164766Z           ]
2026-06-04T14:33:01.3165195Z         },
2026-06-04T14:33:01.3165622Z         "int": {
2026-06-04T14:33:01.3166115Z           "complete": false,
2026-06-04T14:33:01.3166609Z           "evidence": []
2026-06-04T14:33:01.3167252Z         },
2026-06-04T14:33:01.3167718Z         "unit": {
2026-06-04T14:33:01.3168192Z           "complete": true,
2026-06-04T14:33:01.3168652Z           "evidence": [
2026-06-04T14:33:01.3169076Z             {
2026-06-04T14:33:01.3169744Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3170211Z               "line": 152
2026-06-04T14:33:01.3170648Z             },
2026-06-04T14:33:01.3171081Z             {
2026-06-04T14:33:01.3171695Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3172159Z               "line": 161
2026-06-04T14:33:01.3172584Z             },
2026-06-04T14:33:01.3173020Z             {
2026-06-04T14:33:01.3173637Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3174109Z               "line": 170
2026-06-04T14:33:01.3174547Z             },
2026-06-04T14:33:01.3174970Z             {
2026-06-04T14:33:01.3175590Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3176223Z               "line": 179
2026-06-04T14:33:01.3176672Z             },
2026-06-04T14:33:01.3177103Z             {
2026-06-04T14:33:01.3177723Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3178197Z               "line": 188
2026-06-04T14:33:01.3178628Z             },
2026-06-04T14:33:01.3179060Z             {
2026-06-04T14:33:01.3179720Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3180188Z               "line": 199
2026-06-04T14:33:01.3180620Z             },
2026-06-04T14:33:01.3181053Z             {
2026-06-04T14:33:01.3181674Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T14:33:01.3182139Z               "line": 225
2026-06-04T14:33:01.3182585Z             },
2026-06-04T14:33:01.3183013Z             {
2026-06-04T14:33:01.3183629Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.3184087Z               "line": 245
2026-06-04T14:33:01.3184521Z             },
2026-06-04T14:33:01.3184976Z             {
2026-06-04T14:33:01.3185611Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3186081Z               "line": 212
2026-06-04T14:33:01.3186515Z             },
2026-06-04T14:33:01.3186944Z             {
2026-06-04T14:33:01.3187623Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3188087Z               "line": 256
2026-06-04T14:33:01.3188522Z             },
2026-06-04T14:33:01.3188952Z             {
2026-06-04T14:33:01.3189685Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3190142Z               "line": 281
2026-06-04T14:33:01.3190576Z             },
2026-06-04T14:33:01.3191003Z             {
2026-06-04T14:33:01.3191685Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3192148Z               "line": 293
2026-06-04T14:33:01.3192576Z             },
2026-06-04T14:33:01.3193003Z             {
2026-06-04T14:33:01.3193673Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T14:33:01.3194181Z               "line": 303
2026-06-04T14:33:01.3194621Z             },
2026-06-04T14:33:01.3195053Z             {
2026-06-04T14:33:01.3195712Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.3196176Z               "line": 502
2026-06-04T14:33:01.3196612Z             }
2026-06-04T14:33:01.3197036Z           ]
2026-06-04T14:33:01.3197466Z         }
2026-06-04T14:33:01.3197894Z       }
2026-06-04T14:33:01.3198308Z     },
2026-06-04T14:33:01.3198736Z     {
2026-06-04T14:33:01.3199411Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-04T14:33:01.3200220Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-04T14:33:01.3200713Z       "requiredStages": [
2026-06-04T14:33:01.3201151Z         "impl",
2026-06-04T14:33:01.3201593Z         "unit"
2026-06-04T14:33:01.3202012Z       ],
2026-06-04T14:33:01.3202456Z       "stages": {
2026-06-04T14:33:01.3202879Z         "doc": {
2026-06-04T14:33:01.3203397Z           "complete": false,
2026-06-04T14:33:01.3204018Z           "evidence": []
2026-06-04T14:33:01.3204468Z         },
2026-06-04T14:33:01.3204922Z         "impl": {
2026-06-04T14:33:01.3205402Z           "complete": true,
2026-06-04T14:33:01.3205865Z           "evidence": [
2026-06-04T14:33:01.3206293Z             {
2026-06-04T14:33:01.3206892Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.3207352Z               "line": 25
2026-06-04T14:33:01.3207791Z             },
2026-06-04T14:33:01.3208228Z             {
2026-06-04T14:33:01.3208839Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.3209338Z               "line": 26
2026-06-04T14:33:01.3209764Z             },
2026-06-04T14:33:01.3210189Z             {
2026-06-04T14:33:01.3210792Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.3211263Z               "line": 153
2026-06-04T14:33:01.3211695Z             }
2026-06-04T14:33:01.3212117Z           ]
2026-06-04T14:33:01.3212715Z         },
2026-06-04T14:33:01.3216495Z         "int": {
2026-06-04T14:33:01.3217059Z           "complete": false,
2026-06-04T14:33:01.3217532Z           "evidence": []
2026-06-04T14:33:01.3217966Z         },
2026-06-04T14:33:01.3218414Z         "unit": {
2026-06-04T14:33:01.3218890Z           "complete": true,
2026-06-04T14:33:01.3219427Z           "evidence": [
2026-06-04T14:33:01.3219861Z             {
2026-06-04T14:33:01.3220470Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.3220933Z               "line": 180
2026-06-04T14:33:01.3221366Z             },
2026-06-04T14:33:01.3221799Z             {
2026-06-04T14:33:01.3222392Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.3222857Z               "line": 205
2026-06-04T14:33:01.3223284Z             },
2026-06-04T14:33:01.3223715Z             {
2026-06-04T14:33:01.3224322Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.3224793Z               "line": 180
2026-06-04T14:33:01.3225256Z             }
2026-06-04T14:33:01.3225698Z           ]
2026-06-04T14:33:01.3226128Z         }
2026-06-04T14:33:01.3226551Z       }
2026-06-04T14:33:01.3226978Z     },
2026-06-04T14:33:01.3227392Z     {
2026-06-04T14:33:01.3227929Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-04T14:33:01.3228846Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-04T14:33:01.3229368Z       "requiredStages": [
2026-06-04T14:33:01.3229815Z         "impl",
2026-06-04T14:33:01.3230243Z         "unit"
2026-06-04T14:33:01.3230685Z       ],
2026-06-04T14:33:01.3231122Z       "stages": {
2026-06-04T14:33:01.3231561Z         "doc": {
2026-06-04T14:33:01.3232044Z           "complete": false,
2026-06-04T14:33:01.3232501Z           "evidence": []
2026-06-04T14:33:01.3232931Z         },
2026-06-04T14:33:01.3233370Z         "impl": {
2026-06-04T14:33:01.3233845Z           "complete": true,
2026-06-04T14:33:01.3234305Z           "evidence": [
2026-06-04T14:33:01.3234736Z             {
2026-06-04T14:33:01.3235399Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3235855Z               "line": 48
2026-06-04T14:33:01.3236287Z             },
2026-06-04T14:33:01.3236715Z             {
2026-06-04T14:33:01.3237340Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3237788Z               "line": 55
2026-06-04T14:33:01.3238217Z             },
2026-06-04T14:33:01.3238653Z             {
2026-06-04T14:33:01.3239301Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3239758Z               "line": 74
2026-06-04T14:33:01.3240180Z             },
2026-06-04T14:33:01.3240602Z             {
2026-06-04T14:33:01.3241223Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3241680Z               "line": 91
2026-06-04T14:33:01.3242110Z             }
2026-06-04T14:33:01.3242538Z           ]
2026-06-04T14:33:01.3242960Z         },
2026-06-04T14:33:01.3243389Z         "int": {
2026-06-04T14:33:01.3243872Z           "complete": false,
2026-06-04T14:33:01.3244622Z           "evidence": []
2026-06-04T14:33:01.3245082Z         },
2026-06-04T14:33:01.3245526Z         "unit": {
2026-06-04T14:33:01.3246003Z           "complete": true,
2026-06-04T14:33:01.3246464Z           "evidence": [
2026-06-04T14:33:01.3246884Z             {
2026-06-04T14:33:01.3247505Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3247968Z               "line": 149
2026-06-04T14:33:01.3248411Z             },
2026-06-04T14:33:01.3248841Z             {
2026-06-04T14:33:01.3249504Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3249974Z               "line": 163
2026-06-04T14:33:01.3250400Z             },
2026-06-04T14:33:01.3250833Z             {
2026-06-04T14:33:01.3251447Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3251921Z               "line": 173
2026-06-04T14:33:01.3252424Z             },
2026-06-04T14:33:01.3253237Z             {
2026-06-04T14:33:01.3254130Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3255016Z               "line": 191
2026-06-04T14:33:01.3255519Z             },
2026-06-04T14:33:01.3256260Z             {
2026-06-04T14:33:01.3256989Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.3257515Z               "line": 204
2026-06-04T14:33:01.3257978Z             }
2026-06-04T14:33:01.3258428Z           ]
2026-06-04T14:33:01.3258865Z         }
2026-06-04T14:33:01.3259396Z       }
2026-06-04T14:33:01.3259991Z     },
2026-06-04T14:33:01.3260420Z     {
2026-06-04T14:33:01.3261072Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-04T14:33:01.3262135Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-04T14:33:01.3262635Z       "requiredStages": [
2026-06-04T14:33:01.3263070Z         "impl",
2026-06-04T14:33:01.3263517Z         "unit"
2026-06-04T14:33:01.3263943Z       ],
2026-06-04T14:33:01.3264395Z       "stages": {
2026-06-04T14:33:01.3264837Z         "doc": {
2026-06-04T14:33:01.3265345Z           "complete": false,
2026-06-04T14:33:01.3265836Z           "evidence": []
2026-06-04T14:33:01.3266264Z         },
2026-06-04T14:33:01.3266713Z         "impl": {
2026-06-04T14:33:01.3267197Z           "complete": true,
2026-06-04T14:33:01.3267661Z           "evidence": [
2026-06-04T14:33:01.3268096Z             {
2026-06-04T14:33:01.3268755Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3269267Z               "line": 341
2026-06-04T14:33:01.3269994Z             },
2026-06-04T14:33:01.3270433Z             {
2026-06-04T14:33:01.3271055Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3271521Z               "line": 26
2026-06-04T14:33:01.3271956Z             }
2026-06-04T14:33:01.3272380Z           ]
2026-06-04T14:33:01.3272811Z         },
2026-06-04T14:33:01.3273247Z         "int": {
2026-06-04T14:33:01.3273733Z           "complete": false,
2026-06-04T14:33:01.3274201Z           "evidence": []
2026-06-04T14:33:01.3274629Z         },
2026-06-04T14:33:01.3275124Z         "unit": {
2026-06-04T14:33:01.3275601Z           "complete": true,
2026-06-04T14:33:01.3276067Z           "evidence": [
2026-06-04T14:33:01.3276493Z             {
2026-06-04T14:33:01.3277121Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3277575Z               "line": 139
2026-06-04T14:33:01.3278014Z             },
2026-06-04T14:33:01.3278456Z             {
2026-06-04T14:33:01.3279077Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3279877Z               "line": 182
2026-06-04T14:33:01.3280302Z             }
2026-06-04T14:33:01.3280737Z           ]
2026-06-04T14:33:01.3281160Z         }
2026-06-04T14:33:01.3281591Z       }
2026-06-04T14:33:01.3282019Z     },
2026-06-04T14:33:01.3282442Z     {
2026-06-04T14:33:01.3283071Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-04T14:33:01.3283917Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-04T14:33:01.3284400Z       "requiredStages": [
2026-06-04T14:33:01.3285072Z         "impl",
2026-06-04T14:33:01.3285525Z         "unit"
2026-06-04T14:33:01.3285953Z       ],
2026-06-04T14:33:01.3286393Z       "stages": {
2026-06-04T14:33:01.3286834Z         "doc": {
2026-06-04T14:33:01.3287313Z           "complete": false,
2026-06-04T14:33:01.3287779Z           "evidence": []
2026-06-04T14:33:01.3288201Z         },
2026-06-04T14:33:01.3288644Z         "impl": {
2026-06-04T14:33:01.3289124Z           "complete": true,
2026-06-04T14:33:01.3289628Z           "evidence": [
2026-06-04T14:33:01.3290077Z             {
2026-06-04T14:33:01.3290732Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3291207Z               "line": 36
2026-06-04T14:33:01.3291639Z             },
2026-06-04T14:33:01.3292071Z             {
2026-06-04T14:33:01.3292728Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3293188Z               "line": 68
2026-06-04T14:33:01.3293620Z             }
2026-06-04T14:33:01.3294256Z           ]
2026-06-04T14:33:01.3294700Z         },
2026-06-04T14:33:01.3295130Z         "int": {
2026-06-04T14:33:01.3295622Z           "complete": false,
2026-06-04T14:33:01.3296093Z           "evidence": []
2026-06-04T14:33:01.3296525Z         },
2026-06-04T14:33:01.3296968Z         "unit": {
2026-06-04T14:33:01.3297437Z           "complete": true,
2026-06-04T14:33:01.3302089Z           "evidence": [
2026-06-04T14:33:01.3302647Z             {
2026-06-04T14:33:01.3303341Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3303817Z               "line": 143
2026-06-04T14:33:01.3304246Z             },
2026-06-04T14:33:01.3304676Z             {
2026-06-04T14:33:01.3305332Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3305804Z               "line": 160
2026-06-04T14:33:01.3306231Z             },
2026-06-04T14:33:01.3306664Z             {
2026-06-04T14:33:01.3307323Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3307828Z               "line": 168
2026-06-04T14:33:01.3308275Z             }
2026-06-04T14:33:01.3308711Z           ]
2026-06-04T14:33:01.3309145Z         }
2026-06-04T14:33:01.3309640Z       }
2026-06-04T14:33:01.3310072Z     },
2026-06-04T14:33:01.3310497Z     {
2026-06-04T14:33:01.3311132Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-04T14:33:01.3312120Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-04T14:33:01.3312608Z       "requiredStages": [
2026-06-04T14:33:01.3313048Z         "impl",
2026-06-04T14:33:01.3313478Z         "unit"
2026-06-04T14:33:01.3313919Z       ],
2026-06-04T14:33:01.3314367Z       "stages": {
2026-06-04T14:33:01.3314798Z         "doc": {
2026-06-04T14:33:01.3315293Z           "complete": false,
2026-06-04T14:33:01.3315754Z           "evidence": []
2026-06-04T14:33:01.3316190Z         },
2026-06-04T14:33:01.3316628Z         "impl": {
2026-06-04T14:33:01.3317105Z           "complete": true,
2026-06-04T14:33:01.3317577Z           "evidence": [
2026-06-04T14:33:01.3318033Z             {
2026-06-04T14:33:01.3318713Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3319215Z               "line": 107
2026-06-04T14:33:01.3319658Z             }
2026-06-04T14:33:01.3320085Z           ]
2026-06-04T14:33:01.3320522Z         },
2026-06-04T14:33:01.3320962Z         "int": {
2026-06-04T14:33:01.3321437Z           "complete": false,
2026-06-04T14:33:01.3321904Z           "evidence": []
2026-06-04T14:33:01.3322331Z         },
2026-06-04T14:33:01.3322772Z         "unit": {
2026-06-04T14:33:01.3323251Z           "complete": true,
2026-06-04T14:33:01.3323713Z           "evidence": [
2026-06-04T14:33:01.3324147Z             {
2026-06-04T14:33:01.3324797Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3325262Z               "line": 184
2026-06-04T14:33:01.3325686Z             },
2026-06-04T14:33:01.3326120Z             {
2026-06-04T14:33:01.3326766Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3327520Z               "line": 193
2026-06-04T14:33:01.3327988Z             },
2026-06-04T14:33:01.3328421Z             {
2026-06-04T14:33:01.3329072Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3329580Z               "line": 201
2026-06-04T14:33:01.3330015Z             },
2026-06-04T14:33:01.3330437Z             {
2026-06-04T14:33:01.3331094Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3331561Z               "line": 210
2026-06-04T14:33:01.3331997Z             },
2026-06-04T14:33:01.3332434Z             {
2026-06-04T14:33:01.3333079Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T14:33:01.3333556Z               "line": 219
2026-06-04T14:33:01.3333991Z             }
2026-06-04T14:33:01.3334419Z           ]
2026-06-04T14:33:01.3334856Z         }
2026-06-04T14:33:01.3335276Z       }
2026-06-04T14:33:01.3335705Z     },
2026-06-04T14:33:01.3336124Z     {
2026-06-04T14:33:01.3336696Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-04T14:33:01.3337773Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-04T14:33:01.3338266Z       "requiredStages": [
2026-06-04T14:33:01.3338709Z         "impl",
2026-06-04T14:33:01.3339135Z         "unit"
2026-06-04T14:33:01.3339698Z       ],
2026-06-04T14:33:01.3340152Z       "stages": {
2026-06-04T14:33:01.3340592Z         "doc": {
2026-06-04T14:33:01.3341086Z           "complete": false,
2026-06-04T14:33:01.3341554Z           "evidence": []
2026-06-04T14:33:01.3341984Z         },
2026-06-04T14:33:01.3342425Z         "impl": {
2026-06-04T14:33:01.3342907Z           "complete": true,
2026-06-04T14:33:01.3343370Z           "evidence": [
2026-06-04T14:33:01.3343808Z             {
2026-06-04T14:33:01.3344397Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3344851Z               "line": 14
2026-06-04T14:33:01.3345293Z             },
2026-06-04T14:33:01.3345727Z             {
2026-06-04T14:33:01.3346372Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3346889Z               "line": 62
2026-06-04T14:33:01.3347332Z             }
2026-06-04T14:33:01.3347767Z           ]
2026-06-04T14:33:01.3348194Z         },
2026-06-04T14:33:01.3348633Z         "int": {
2026-06-04T14:33:01.3349113Z           "complete": false,
2026-06-04T14:33:01.3349631Z           "evidence": []
2026-06-04T14:33:01.3350055Z         },
2026-06-04T14:33:01.3350502Z         "unit": {
2026-06-04T14:33:01.3350977Z           "complete": true,
2026-06-04T14:33:01.3351442Z           "evidence": [
2026-06-04T14:33:01.3351879Z             {
2026-06-04T14:33:01.3352455Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3352924Z               "line": 160
2026-06-04T14:33:01.3353352Z             },
2026-06-04T14:33:01.3353783Z             {
2026-06-04T14:33:01.3354376Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3354841Z               "line": 197
2026-06-04T14:33:01.3355279Z             },
2026-06-04T14:33:01.3355725Z             {
2026-06-04T14:33:01.3356327Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.3356790Z               "line": 213
2026-06-04T14:33:01.3357224Z             }
2026-06-04T14:33:01.3357655Z           ]
2026-06-04T14:33:01.3358082Z         }
2026-06-04T14:33:01.3358504Z       }
2026-06-04T14:33:01.3358926Z     },
2026-06-04T14:33:01.3359381Z     {
2026-06-04T14:33:01.3359988Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-04T14:33:01.3361215Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-04T14:33:01.3361709Z       "requiredStages": [
2026-06-04T14:33:01.3362143Z         "impl",
2026-06-04T14:33:01.3362580Z         "unit"
2026-06-04T14:33:01.3363002Z       ],
2026-06-04T14:33:01.3363452Z       "stages": {
2026-06-04T14:33:01.3363879Z         "doc": {
2026-06-04T14:33:01.3364362Z           "complete": false,
2026-06-04T14:33:01.3364837Z           "evidence": []
2026-06-04T14:33:01.3365263Z         },
2026-06-04T14:33:01.3365730Z         "impl": {
2026-06-04T14:33:01.3366386Z           "complete": true,
2026-06-04T14:33:01.3366872Z           "evidence": [
2026-06-04T14:33:01.3367293Z             {
2026-06-04T14:33:01.3367915Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3368377Z               "line": 76
2026-06-04T14:33:01.3368808Z             },
2026-06-04T14:33:01.3369286Z             {
2026-06-04T14:33:01.3369894Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3370356Z               "line": 163
2026-06-04T14:33:01.3370787Z             },
2026-06-04T14:33:01.3371218Z             {
2026-06-04T14:33:01.3371849Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3372301Z               "line": 229
2026-06-04T14:33:01.3372738Z             },
2026-06-04T14:33:01.3373152Z             {
2026-06-04T14:33:01.3373767Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3374232Z               "line": 265
2026-06-04T14:33:01.3374833Z             }
2026-06-04T14:33:01.3375289Z           ]
2026-06-04T14:33:01.3375720Z         },
2026-06-04T14:33:01.3376160Z         "int": {
2026-06-04T14:33:01.3376654Z           "complete": false,
2026-06-04T14:33:01.3377185Z           "evidence": []
2026-06-04T14:33:01.3377608Z         },
2026-06-04T14:33:01.3378052Z         "unit": {
2026-06-04T14:33:01.3378531Z           "complete": true,
2026-06-04T14:33:01.3378984Z           "evidence": [
2026-06-04T14:33:01.3379478Z             {
2026-06-04T14:33:01.3380114Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3380586Z               "line": 310
2026-06-04T14:33:01.3381014Z             },
2026-06-04T14:33:01.3381438Z             {
2026-06-04T14:33:01.3385561Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3386151Z               "line": 318
2026-06-04T14:33:01.3386605Z             },
2026-06-04T14:33:01.3387032Z             {
2026-06-04T14:33:01.3387665Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3388220Z               "line": 341
2026-06-04T14:33:01.3388673Z             },
2026-06-04T14:33:01.3389105Z             {
2026-06-04T14:33:01.3389790Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3390263Z               "line": 378
2026-06-04T14:33:01.3390694Z             },
2026-06-04T14:33:01.3391124Z             {
2026-06-04T14:33:01.3391735Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3392206Z               "line": 389
2026-06-04T14:33:01.3392645Z             },
2026-06-04T14:33:01.3393075Z             {
2026-06-04T14:33:01.3393693Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3394150Z               "line": 401
2026-06-04T14:33:01.3394584Z             },
2026-06-04T14:33:01.3395017Z             {
2026-06-04T14:33:01.3395633Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T14:33:01.3396095Z               "line": 413
2026-06-04T14:33:01.3396531Z             }
2026-06-04T14:33:01.3396984Z           ]
2026-06-04T14:33:01.3397426Z         }
2026-06-04T14:33:01.3397865Z       }
2026-06-04T14:33:01.3398287Z     },
2026-06-04T14:33:01.3398718Z     {
2026-06-04T14:33:01.3399313Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-04T14:33:01.3400107Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-04T14:33:01.3400598Z       "requiredStages": [
2026-06-04T14:33:01.3401042Z         "impl",
2026-06-04T14:33:01.3401484Z         "int"
2026-06-04T14:33:01.3401918Z       ],
2026-06-04T14:33:01.3402367Z       "stages": {
2026-06-04T14:33:01.3402807Z         "doc": {
2026-06-04T14:33:01.3403298Z           "complete": false,
2026-06-04T14:33:01.3403823Z           "evidence": []
2026-06-04T14:33:01.3404293Z         },
2026-06-04T14:33:01.3404770Z         "impl": {
2026-06-04T14:33:01.3405248Z           "complete": true,
2026-06-04T14:33:01.3405712Z           "evidence": [
2026-06-04T14:33:01.3406145Z             {
2026-06-04T14:33:01.3406764Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.3407526Z               "line": 22
2026-06-04T14:33:01.3407985Z             }
2026-06-04T14:33:01.3408417Z           ]
2026-06-04T14:33:01.3408836Z         },
2026-06-04T14:33:01.3409334Z         "int": {
2026-06-04T14:33:01.3409820Z           "complete": true,
2026-06-04T14:33:01.3410275Z           "evidence": [
2026-06-04T14:33:01.3410710Z             {
2026-06-04T14:33:01.3411373Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T14:33:01.3411837Z               "line": 18
2026-06-04T14:33:01.3412264Z             }
2026-06-04T14:33:01.3412698Z           ]
2026-06-04T14:33:01.3413132Z         },
2026-06-04T14:33:01.3413564Z         "unit": {
2026-06-04T14:33:01.3414055Z           "complete": false,
2026-06-04T14:33:01.3414521Z           "evidence": []
2026-06-04T14:33:01.3414955Z         }
2026-06-04T14:33:01.3415382Z       }
2026-06-04T14:33:01.3415805Z     },
2026-06-04T14:33:01.3416234Z     {
2026-06-04T14:33:01.3416842Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-04T14:33:01.3418091Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-04T14:33:01.3418588Z       "requiredStages": [
2026-06-04T14:33:01.3419032Z         "impl",
2026-06-04T14:33:01.3419509Z         "unit"
2026-06-04T14:33:01.3419942Z       ],
2026-06-04T14:33:01.3420391Z       "stages": {
2026-06-04T14:33:01.3420821Z         "doc": {
2026-06-04T14:33:01.3421305Z           "complete": false,
2026-06-04T14:33:01.3421762Z           "evidence": []
2026-06-04T14:33:01.3422195Z         },
2026-06-04T14:33:01.3422629Z         "impl": {
2026-06-04T14:33:01.3423109Z           "complete": true,
2026-06-04T14:33:01.3423568Z           "evidence": [
2026-06-04T14:33:01.3423991Z             {
2026-06-04T14:33:01.3424654Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3425114Z               "line": 340
2026-06-04T14:33:01.3425549Z             },
2026-06-04T14:33:01.3425969Z             {
2026-06-04T14:33:01.3426632Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3427100Z               "line": 27
2026-06-04T14:33:01.3427528Z             }
2026-06-04T14:33:01.3427961Z           ]
2026-06-04T14:33:01.3428389Z         },
2026-06-04T14:33:01.3428837Z         "int": {
2026-06-04T14:33:01.3429374Z           "complete": false,
2026-06-04T14:33:01.3429868Z           "evidence": []
2026-06-04T14:33:01.3430307Z         },
2026-06-04T14:33:01.3430750Z         "unit": {
2026-06-04T14:33:01.3431239Z           "complete": true,
2026-06-04T14:33:01.3431690Z           "evidence": [
2026-06-04T14:33:01.3432130Z             {
2026-06-04T14:33:01.3432783Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.3433249Z               "line": 745
2026-06-04T14:33:01.3433688Z             },
2026-06-04T14:33:01.3434108Z             {
2026-06-04T14:33:01.3434738Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.3435204Z               "line": 164
2026-06-04T14:33:01.3435693Z             }
2026-06-04T14:33:01.3436139Z           ]
2026-06-04T14:33:01.3436568Z         }
2026-06-04T14:33:01.3436999Z       }
2026-06-04T14:33:01.3437415Z     },
2026-06-04T14:33:01.3437841Z     {
2026-06-04T14:33:01.3438458Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-04T14:33:01.3439394Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-04T14:33:01.3439884Z       "requiredStages": [
2026-06-04T14:33:01.3440335Z         "impl",
2026-06-04T14:33:01.3440772Z         "unit"
2026-06-04T14:33:01.3441191Z       ],
2026-06-04T14:33:01.3441645Z       "stages": {
2026-06-04T14:33:01.3442072Z         "doc": {
2026-06-04T14:33:01.3442561Z           "complete": false,
2026-06-04T14:33:01.3443023Z           "evidence": []
2026-06-04T14:33:01.3443452Z         },
2026-06-04T14:33:01.3443900Z         "impl": {
2026-06-04T14:33:01.3444374Z           "complete": true,
2026-06-04T14:33:01.3444835Z           "evidence": [
2026-06-04T14:33:01.3445253Z             {
2026-06-04T14:33:01.3446074Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3446551Z               "line": 20
2026-06-04T14:33:01.3446996Z             },
2026-06-04T14:33:01.3447430Z             {
2026-06-04T14:33:01.3448061Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3448524Z               "line": 94
2026-06-04T14:33:01.3448950Z             },
2026-06-04T14:33:01.3449431Z             {
2026-06-04T14:33:01.3450104Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T14:33:01.3450566Z               "line": 70
2026-06-04T14:33:01.3450998Z             },
2026-06-04T14:33:01.3451419Z             {
2026-06-04T14:33:01.3452078Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T14:33:01.3452537Z               "line": 82
2026-06-04T14:33:01.3452971Z             }
2026-06-04T14:33:01.3453396Z           ]
2026-06-04T14:33:01.3453829Z         },
2026-06-04T14:33:01.3454266Z         "int": {
2026-06-04T14:33:01.3454961Z           "complete": false,
2026-06-04T14:33:01.3455449Z           "evidence": []
2026-06-04T14:33:01.3455880Z         },
2026-06-04T14:33:01.3456316Z         "unit": {
2026-06-04T14:33:01.3456794Z           "complete": true,
2026-06-04T14:33:01.3457256Z           "evidence": [
2026-06-04T14:33:01.3457697Z             {
2026-06-04T14:33:01.3458324Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3458799Z               "line": 139
2026-06-04T14:33:01.3459269Z             },
2026-06-04T14:33:01.3459714Z             {
2026-06-04T14:33:01.3460328Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3460809Z               "line": 162
2026-06-04T14:33:01.3461250Z             },
2026-06-04T14:33:01.3461671Z             {
2026-06-04T14:33:01.3462296Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3462754Z               "line": 173
2026-06-04T14:33:01.3463193Z             },
2026-06-04T14:33:01.3463642Z             {
2026-06-04T14:33:01.3464683Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3465390Z               "line": 189
2026-06-04T14:33:01.3465938Z             },
2026-06-04T14:33:01.3471050Z             {
2026-06-04T14:33:01.3471904Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T14:33:01.3472427Z               "line": 200
2026-06-04T14:33:01.3472923Z             },
2026-06-04T14:33:01.3473384Z             {
2026-06-04T14:33:01.3474126Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T14:33:01.3474654Z               "line": 139
2026-06-04T14:33:01.3475141Z             }
2026-06-04T14:33:01.3475616Z           ]
2026-06-04T14:33:01.3476098Z         }
2026-06-04T14:33:01.3476588Z       }
2026-06-04T14:33:01.3477028Z     },
2026-06-04T14:33:01.3477482Z     {
2026-06-04T14:33:01.3478041Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-04T14:33:01.3479844Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-04T14:33:01.3480440Z       "requiredStages": [
2026-06-04T14:33:01.3480937Z         "impl",
2026-06-04T14:33:01.3481409Z         "unit"
2026-06-04T14:33:01.3481868Z       ],
2026-06-04T14:33:01.3482337Z       "stages": {
2026-06-04T14:33:01.3482810Z         "doc": {
2026-06-04T14:33:01.3483313Z           "complete": true,
2026-06-04T14:33:01.3483805Z           "evidence": [
2026-06-04T14:33:01.3484278Z             {
2026-06-04T14:33:01.3484885Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T14:33:01.3485374Z               "line": 131
2026-06-04T14:33:01.3485821Z             }
2026-06-04T14:33:01.3486295Z           ]
2026-06-04T14:33:01.3486747Z         },
2026-06-04T14:33:01.3487227Z         "impl": {
2026-06-04T14:33:01.3487748Z           "complete": true,
2026-06-04T14:33:01.3488235Z           "evidence": [
2026-06-04T14:33:01.3488688Z             {
2026-06-04T14:33:01.3489518Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.3490170Z               "line": 65
2026-06-04T14:33:01.3490658Z             },
2026-06-04T14:33:01.3491537Z             {
2026-06-04T14:33:01.3492215Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3492686Z               "line": 17
2026-06-04T14:33:01.3493142Z             },
2026-06-04T14:33:01.3493585Z             {
2026-06-04T14:33:01.3494234Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.3494731Z               "line": 212
2026-06-04T14:33:01.3495203Z             },
2026-06-04T14:33:01.3495673Z             {
2026-06-04T14:33:01.3496332Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.3496841Z               "line": 312
2026-06-04T14:33:01.3497320Z             },
2026-06-04T14:33:01.3497963Z             {
2026-06-04T14:33:01.3498697Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T14:33:01.3499333Z               "line": 32
2026-06-04T14:33:01.3499981Z             }
2026-06-04T14:33:01.3500622Z           ]
2026-06-04T14:33:01.3501167Z         },
2026-06-04T14:33:01.3502075Z         "int": {
2026-06-04T14:33:01.3502743Z           "complete": false,
2026-06-04T14:33:01.3503298Z           "evidence": []
2026-06-04T14:33:01.3503788Z         },
2026-06-04T14:33:01.3504282Z         "unit": {
2026-06-04T14:33:01.3504850Z           "complete": true,
2026-06-04T14:33:01.3505426Z           "evidence": [
2026-06-04T14:33:01.3506046Z             {
2026-06-04T14:33:01.3506665Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3507122Z               "line": 94
2026-06-04T14:33:01.3507564Z             },
2026-06-04T14:33:01.3507995Z             {
2026-06-04T14:33:01.3508576Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3509050Z               "line": 111
2026-06-04T14:33:01.3509554Z             },
2026-06-04T14:33:01.3510000Z             {
2026-06-04T14:33:01.3510585Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3511363Z               "line": 124
2026-06-04T14:33:01.3511811Z             },
2026-06-04T14:33:01.3512272Z             {
2026-06-04T14:33:01.3512885Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3513355Z               "line": 134
2026-06-04T14:33:01.3513794Z             },
2026-06-04T14:33:01.3514223Z             {
2026-06-04T14:33:01.3514820Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3515287Z               "line": 142
2026-06-04T14:33:01.3515721Z             },
2026-06-04T14:33:01.3516158Z             {
2026-06-04T14:33:01.3516738Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T14:33:01.3517206Z               "line": 154
2026-06-04T14:33:01.3517646Z             },
2026-06-04T14:33:01.3518080Z             {
2026-06-04T14:33:01.3518790Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.3519624Z               "line": 636
2026-06-04T14:33:01.3520252Z             }
2026-06-04T14:33:01.3520676Z           ]
2026-06-04T14:33:01.3521108Z         }
2026-06-04T14:33:01.3521543Z       }
2026-06-04T14:33:01.3521987Z     },
2026-06-04T14:33:01.3522416Z     {
2026-06-04T14:33:01.3522983Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-04T14:33:01.3523712Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-04T14:33:01.3524214Z       "requiredStages": [
2026-06-04T14:33:01.3524663Z         "impl",
2026-06-04T14:33:01.3525110Z         "unit"
2026-06-04T14:33:01.3525535Z       ],
2026-06-04T14:33:01.3525983Z       "stages": {
2026-06-04T14:33:01.3526415Z         "doc": {
2026-06-04T14:33:01.3526906Z           "complete": false,
2026-06-04T14:33:01.3527369Z           "evidence": []
2026-06-04T14:33:01.3527806Z         },
2026-06-04T14:33:01.3528258Z         "impl": {
2026-06-04T14:33:01.3529049Z           "complete": true,
2026-06-04T14:33:01.3529562Z           "evidence": [
2026-06-04T14:33:01.3529997Z             {
2026-06-04T14:33:01.3530623Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.3531085Z               "line": 128
2026-06-04T14:33:01.3531521Z             }
2026-06-04T14:33:01.3531981Z           ]
2026-06-04T14:33:01.3532981Z         },
2026-06-04T14:33:01.3533460Z         "int": {
2026-06-04T14:33:01.3533942Z           "complete": false,
2026-06-04T14:33:01.3534412Z           "evidence": []
2026-06-04T14:33:01.3534836Z         },
2026-06-04T14:33:01.3535281Z         "unit": {
2026-06-04T14:33:01.3535752Z           "complete": true,
2026-06-04T14:33:01.3536221Z           "evidence": [
2026-06-04T14:33:01.3536661Z             {
2026-06-04T14:33:01.3537270Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.3537737Z               "line": 205
2026-06-04T14:33:01.3538167Z             }
2026-06-04T14:33:01.3538603Z           ]
2026-06-04T14:33:01.3539025Z         }
2026-06-04T14:33:01.3539495Z       }
2026-06-04T14:33:01.3539919Z     },
2026-06-04T14:33:01.3540342Z     {
2026-06-04T14:33:01.3540938Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-04T14:33:01.3541755Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-04T14:33:01.3542414Z       "requiredStages": [
2026-06-04T14:33:01.3542881Z         "impl",
2026-06-04T14:33:01.3543323Z         "unit"
2026-06-04T14:33:01.3543756Z       ],
2026-06-04T14:33:01.3544196Z       "stages": {
2026-06-04T14:33:01.3544639Z         "doc": {
2026-06-04T14:33:01.3545122Z           "complete": false,
2026-06-04T14:33:01.3545595Z           "evidence": []
2026-06-04T14:33:01.3546018Z         },
2026-06-04T14:33:01.3546464Z         "impl": {
2026-06-04T14:33:01.3546949Z           "complete": true,
2026-06-04T14:33:01.3547407Z           "evidence": [
2026-06-04T14:33:01.3547842Z             {
2026-06-04T14:33:01.3548444Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3548915Z               "line": 231
2026-06-04T14:33:01.3555079Z             },
2026-06-04T14:33:01.3555664Z             {
2026-06-04T14:33:01.3556303Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3556775Z               "line": 242
2026-06-04T14:33:01.3557216Z             },
2026-06-04T14:33:01.3557681Z             {
2026-06-04T14:33:01.3558310Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3558787Z               "line": 260
2026-06-04T14:33:01.3559320Z             }
2026-06-04T14:33:01.3559767Z           ]
2026-06-04T14:33:01.3560189Z         },
2026-06-04T14:33:01.3560631Z         "int": {
2026-06-04T14:33:01.3561107Z           "complete": false,
2026-06-04T14:33:01.3561581Z           "evidence": []
2026-06-04T14:33:01.3562016Z         },
2026-06-04T14:33:01.3562454Z         "unit": {
2026-06-04T14:33:01.3562932Z           "complete": true,
2026-06-04T14:33:01.3563384Z           "evidence": [
2026-06-04T14:33:01.3563821Z             {
2026-06-04T14:33:01.3564426Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3564895Z               "line": 284
2026-06-04T14:33:01.3565331Z             },
2026-06-04T14:33:01.3565752Z             {
2026-06-04T14:33:01.3566359Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3566845Z               "line": 302
2026-06-04T14:33:01.3567299Z             },
2026-06-04T14:33:01.3567732Z             {
2026-06-04T14:33:01.3568339Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3568798Z               "line": 467
2026-06-04T14:33:01.3569261Z             },
2026-06-04T14:33:01.3569697Z             {
2026-06-04T14:33:01.3570298Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3570773Z               "line": 478
2026-06-04T14:33:01.3571201Z             },
2026-06-04T14:33:01.3571638Z             {
2026-06-04T14:33:01.3572254Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.3572713Z               "line": 491
2026-06-04T14:33:01.3573156Z             }
2026-06-04T14:33:01.3573580Z           ]
2026-06-04T14:33:01.3574017Z         }
2026-06-04T14:33:01.3574438Z       }
2026-06-04T14:33:01.3574866Z     },
2026-06-04T14:33:01.3575294Z     {
2026-06-04T14:33:01.3575838Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-04T14:33:01.3577377Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-04T14:33:01.3577902Z       "requiredStages": [
2026-06-04T14:33:01.3578344Z         "impl",
2026-06-04T14:33:01.3578777Z         "unit"
2026-06-04T14:33:01.3579250Z       ],
2026-06-04T14:33:01.3579699Z       "stages": {
2026-06-04T14:33:01.3580128Z         "doc": {
2026-06-04T14:33:01.3580618Z           "complete": false,
2026-06-04T14:33:01.3581076Z           "evidence": []
2026-06-04T14:33:01.3581510Z         },
2026-06-04T14:33:01.3581946Z         "impl": {
2026-06-04T14:33:01.3582429Z           "complete": true,
2026-06-04T14:33:01.3582892Z           "evidence": [
2026-06-04T14:33:01.3583314Z             {
2026-06-04T14:33:01.3583903Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3584359Z               "line": 14
2026-06-04T14:33:01.3584797Z             },
2026-06-04T14:33:01.3585229Z             {
2026-06-04T14:33:01.3585809Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T14:33:01.3586459Z               "line": 315
2026-06-04T14:33:01.3586885Z             }
2026-06-04T14:33:01.3587312Z           ]
2026-06-04T14:33:01.3587733Z         },
2026-06-04T14:33:01.3588174Z         "int": {
2026-06-04T14:33:01.3588652Z           "complete": false,
2026-06-04T14:33:01.3589127Z           "evidence": []
2026-06-04T14:33:01.3589607Z         },
2026-06-04T14:33:01.3590043Z         "unit": {
2026-06-04T14:33:01.3590525Z           "complete": true,
2026-06-04T14:33:01.3590978Z           "evidence": [
2026-06-04T14:33:01.3591410Z             {
2026-06-04T14:33:01.3591990Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3592459Z               "line": 130
2026-06-04T14:33:01.3592896Z             },
2026-06-04T14:33:01.3593332Z             {
2026-06-04T14:33:01.3593925Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3594387Z               "line": 138
2026-06-04T14:33:01.3594823Z             },
2026-06-04T14:33:01.3595269Z             {
2026-06-04T14:33:01.3595869Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3596343Z               "line": 146
2026-06-04T14:33:01.3596775Z             },
2026-06-04T14:33:01.3597205Z             {
2026-06-04T14:33:01.3597787Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3598257Z               "line": 154
2026-06-04T14:33:01.3598683Z             },
2026-06-04T14:33:01.3599115Z             {
2026-06-04T14:33:01.3599746Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3600208Z               "line": 162
2026-06-04T14:33:01.3600647Z             },
2026-06-04T14:33:01.3601074Z             {
2026-06-04T14:33:01.3601660Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T14:33:01.3602120Z               "line": 170
2026-06-04T14:33:01.3602555Z             }
2026-06-04T14:33:01.3602989Z           ]
2026-06-04T14:33:01.3603413Z         }
2026-06-04T14:33:01.3603845Z       }
2026-06-04T14:33:01.3604271Z     },
2026-06-04T14:33:01.3604741Z     {
2026-06-04T14:33:01.3605804Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-04T14:33:01.3612720Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-04T14:33:01.3619686Z       "requiredStages": [
2026-06-04T14:33:01.3620885Z         "impl",
2026-06-04T14:33:01.3622107Z         "unit"
2026-06-04T14:33:01.3623276Z       ],
2026-06-04T14:33:01.3624291Z       "stages": {
2026-06-04T14:33:01.3625410Z         "doc": {
2026-06-04T14:33:01.3626579Z           "complete": false,
2026-06-04T14:33:01.3627872Z           "evidence": []
2026-06-04T14:33:01.3629061Z         },
2026-06-04T14:33:01.3630291Z         "impl": {
2026-06-04T14:33:01.3631437Z           "complete": true,
2026-06-04T14:33:01.3632775Z           "evidence": [
2026-06-04T14:33:01.3633969Z             {
2026-06-04T14:33:01.3635644Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3637379Z               "line": 34
2026-06-04T14:33:01.3638502Z             }
2026-06-04T14:33:01.3639559Z           ]
2026-06-04T14:33:01.3640886Z         },
2026-06-04T14:33:01.3641877Z         "int": {
2026-06-04T14:33:01.3642963Z           "complete": false,
2026-06-04T14:33:01.3644208Z           "evidence": []
2026-06-04T14:33:01.3655021Z         },
2026-06-04T14:33:01.3656110Z         "unit": {
2026-06-04T14:33:01.3657212Z           "complete": true,
2026-06-04T14:33:01.3658430Z           "evidence": [
2026-06-04T14:33:01.3659677Z             {
2026-06-04T14:33:01.3661030Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3662739Z               "line": 188
2026-06-04T14:33:01.3663877Z             },
2026-06-04T14:33:01.3664883Z             {
2026-06-04T14:33:01.3666224Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3668328Z               "line": 200
2026-06-04T14:33:01.3669522Z             },
2026-06-04T14:33:01.3670540Z             {
2026-06-04T14:33:01.3671884Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3673582Z               "line": 211
2026-06-04T14:33:01.3674733Z             },
2026-06-04T14:33:01.3675733Z             {
2026-06-04T14:33:01.3677067Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3678776Z               "line": 245
2026-06-04T14:33:01.3679958Z             },
2026-06-04T14:33:01.3680965Z             {
2026-06-04T14:33:01.3682289Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3683976Z               "line": 267
2026-06-04T14:33:01.3685126Z             },
2026-06-04T14:33:01.3686122Z             {
2026-06-04T14:33:01.3687456Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3689206Z               "line": 288
2026-06-04T14:33:01.3690381Z             },
2026-06-04T14:33:01.3691394Z             {
2026-06-04T14:33:01.3692735Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T14:33:01.3694442Z               "line": 304
2026-06-04T14:33:01.3695593Z             }
2026-06-04T14:33:01.3696596Z           ]
2026-06-04T14:33:01.3697567Z         }
2026-06-04T14:33:01.3698525Z       }
2026-06-04T14:33:01.3699511Z     },
2026-06-04T14:33:01.3700462Z     {
2026-06-04T14:33:01.3701559Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-04T14:33:01.3705839Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-04T14:33:01.3710115Z       "requiredStages": [
2026-06-04T14:33:01.3711285Z         "impl",
2026-06-04T14:33:01.3712323Z         "unit"
2026-06-04T14:33:01.3713331Z       ],
2026-06-04T14:33:01.3714302Z       "stages": {
2026-06-04T14:33:01.3715387Z         "doc": {
2026-06-04T14:33:01.3716474Z           "complete": false,
2026-06-04T14:33:01.3717705Z           "evidence": []
2026-06-04T14:33:01.3718830Z         },
2026-06-04T14:33:01.3719900Z         "impl": {
2026-06-04T14:33:01.3720978Z           "complete": true,
2026-06-04T14:33:01.3722191Z           "evidence": [
2026-06-04T14:33:01.3723296Z             {
2026-06-04T14:33:01.3724471Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3726001Z               "line": 29
2026-06-04T14:33:01.3727128Z             },
2026-06-04T14:33:01.3728134Z             {
2026-06-04T14:33:01.3729376Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3730908Z               "line": 154
2026-06-04T14:33:01.3732043Z             },
2026-06-04T14:33:01.3733067Z             {
2026-06-04T14:33:01.3734242Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3735766Z               "line": 173
2026-06-04T14:33:01.3736933Z             },
2026-06-04T14:33:01.3738147Z             {
2026-06-04T14:33:01.3739400Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3740954Z               "line": 200
2026-06-04T14:33:01.3742092Z             }
2026-06-04T14:33:01.3743100Z           ]
2026-06-04T14:33:01.3744075Z         },
2026-06-04T14:33:01.3745042Z         "int": {
2026-06-04T14:33:01.3746123Z           "complete": false,
2026-06-04T14:33:01.3747358Z           "evidence": []
2026-06-04T14:33:01.3748496Z         },
2026-06-04T14:33:01.3749515Z         "unit": {
2026-06-04T14:33:01.3750596Z           "complete": true,
2026-06-04T14:33:01.3751804Z           "evidence": [
2026-06-04T14:33:01.3752923Z             {
2026-06-04T14:33:01.3754099Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3755631Z               "line": 276
2026-06-04T14:33:01.3756781Z             },
2026-06-04T14:33:01.3757786Z             {
2026-06-04T14:33:01.3758962Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3766146Z               "line": 291
2026-06-04T14:33:01.3767370Z             },
2026-06-04T14:33:01.3768398Z             {
2026-06-04T14:33:01.3769720Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3771247Z               "line": 310
2026-06-04T14:33:01.3772394Z             },
2026-06-04T14:33:01.3773398Z             {
2026-06-04T14:33:01.3774584Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3776096Z               "line": 326
2026-06-04T14:33:01.3777234Z             },
2026-06-04T14:33:01.3778250Z             {
2026-06-04T14:33:01.3779468Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3780992Z               "line": 376
2026-06-04T14:33:01.3782132Z             },
2026-06-04T14:33:01.3783145Z             {
2026-06-04T14:33:01.3784329Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3785842Z               "line": 390
2026-06-04T14:33:01.3786968Z             },
2026-06-04T14:33:01.3787998Z             {
2026-06-04T14:33:01.3789241Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3790762Z               "line": 401
2026-06-04T14:33:01.3791890Z             },
2026-06-04T14:33:01.3792891Z             {
2026-06-04T14:33:01.3794074Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.3795585Z               "line": 412
2026-06-04T14:33:01.3796720Z             }
2026-06-04T14:33:01.3797712Z           ]
2026-06-04T14:33:01.3798696Z         }
2026-06-04T14:33:01.3799685Z       }
2026-06-04T14:33:01.3800630Z     },
2026-06-04T14:33:01.3801572Z     {
2026-06-04T14:33:01.3802706Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-04T14:33:01.3807602Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-04T14:33:01.3812085Z       "requiredStages": [
2026-06-04T14:33:01.3813291Z         "impl",
2026-06-04T14:33:01.3814357Z         "unit"
2026-06-04T14:33:01.3815367Z       ],
2026-06-04T14:33:01.3816332Z       "stages": {
2026-06-04T14:33:01.3817367Z         "doc": {
2026-06-04T14:33:01.3818444Z           "complete": false,
2026-06-04T14:33:01.3819724Z           "evidence": []
2026-06-04T14:33:01.3820862Z         },
2026-06-04T14:33:01.3821836Z         "impl": {
2026-06-04T14:33:01.3822919Z           "complete": true,
2026-06-04T14:33:01.3824134Z           "evidence": [
2026-06-04T14:33:01.3825238Z             {
2026-06-04T14:33:01.3826516Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3828138Z               "line": 27
2026-06-04T14:33:01.3829308Z             },
2026-06-04T14:33:01.3830325Z             {
2026-06-04T14:33:01.3831599Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3833216Z               "line": 110
2026-06-04T14:33:01.3834372Z             },
2026-06-04T14:33:01.3835378Z             {
2026-06-04T14:33:01.3836911Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3838577Z               "line": 153
2026-06-04T14:33:01.3839761Z             },
2026-06-04T14:33:01.3840770Z             {
2026-06-04T14:33:01.3842141Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3843791Z               "line": 182
2026-06-04T14:33:01.3844937Z             },
2026-06-04T14:33:01.3845943Z             {
2026-06-04T14:33:01.3847306Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3849036Z               "line": 31
2026-06-04T14:33:01.3850219Z             },
2026-06-04T14:33:01.3851223Z             {
2026-06-04T14:33:01.3852564Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3854268Z               "line": 113
2026-06-04T14:33:01.3855414Z             },
2026-06-04T14:33:01.3856423Z             {
2026-06-04T14:33:01.3857763Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3859718Z               "line": 138
2026-06-04T14:33:01.3860865Z             }
2026-06-04T14:33:01.3861877Z           ]
2026-06-04T14:33:01.3862852Z         },
2026-06-04T14:33:01.3863818Z         "int": {
2026-06-04T14:33:01.3864898Z           "complete": false,
2026-06-04T14:33:01.3866143Z           "evidence": []
2026-06-04T14:33:01.3867278Z         },
2026-06-04T14:33:01.3868247Z         "unit": {
2026-06-04T14:33:01.3869365Z           "complete": true,
2026-06-04T14:33:01.3875212Z           "evidence": [
2026-06-04T14:33:01.3876452Z             {
2026-06-04T14:33:01.3877736Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3879465Z               "line": 261
2026-06-04T14:33:01.3880623Z             },
2026-06-04T14:33:01.3881622Z             {
2026-06-04T14:33:01.3882888Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3884515Z               "line": 276
2026-06-04T14:33:01.3885710Z             },
2026-06-04T14:33:01.3886731Z             {
2026-06-04T14:33:01.3888018Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3889681Z               "line": 293
2026-06-04T14:33:01.3890845Z             },
2026-06-04T14:33:01.3891852Z             {
2026-06-04T14:33:01.3893128Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3894748Z               "line": 310
2026-06-04T14:33:01.3895886Z             },
2026-06-04T14:33:01.3896895Z             {
2026-06-04T14:33:01.3898162Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3899843Z               "line": 327
2026-06-04T14:33:01.3900980Z             },
2026-06-04T14:33:01.3902009Z             {
2026-06-04T14:33:01.3903271Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.3904888Z               "line": 366
2026-06-04T14:33:01.3906028Z             },
2026-06-04T14:33:01.3907033Z             {
2026-06-04T14:33:01.3908401Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3910146Z               "line": 179
2026-06-04T14:33:01.3911287Z             },
2026-06-04T14:33:01.3912310Z             {
2026-06-04T14:33:01.3913640Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3915361Z               "line": 194
2026-06-04T14:33:01.3916503Z             },
2026-06-04T14:33:01.3917515Z             {
2026-06-04T14:33:01.3918851Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3920601Z               "line": 204
2026-06-04T14:33:01.3921731Z             },
2026-06-04T14:33:01.3922747Z             {
2026-06-04T14:33:01.3924085Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3925798Z               "line": 259
2026-06-04T14:33:01.3926943Z             },
2026-06-04T14:33:01.3927952Z             {
2026-06-04T14:33:01.3929322Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3931325Z               "line": 269
2026-06-04T14:33:01.3932487Z             },
2026-06-04T14:33:01.3933514Z             {
2026-06-04T14:33:01.3934853Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.3936596Z               "line": 283
2026-06-04T14:33:01.3937749Z             }
2026-06-04T14:33:01.3938758Z           ]
2026-06-04T14:33:01.3939781Z         }
2026-06-04T14:33:01.3940735Z       }
2026-06-04T14:33:01.3941672Z     },
2026-06-04T14:33:01.3942620Z     {
2026-06-04T14:33:01.3943734Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-04T14:33:01.3945776Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-04T14:33:01.3947816Z       "requiredStages": [],
2026-06-04T14:33:01.3949010Z       "stages": {
2026-06-04T14:33:01.3950087Z         "doc": {
2026-06-04T14:33:01.3951157Z           "complete": false,
2026-06-04T14:33:01.3952380Z           "evidence": []
2026-06-04T14:33:01.3953685Z         },
2026-06-04T14:33:01.3954691Z         "impl": {
2026-06-04T14:33:01.3955789Z           "complete": false,
2026-06-04T14:33:01.3957017Z           "evidence": []
2026-06-04T14:33:01.3958147Z         },
2026-06-04T14:33:01.3959106Z         "int": {
2026-06-04T14:33:01.3960215Z           "complete": false,
2026-06-04T14:33:01.3961444Z           "evidence": []
2026-06-04T14:33:01.3962574Z         },
2026-06-04T14:33:01.3963549Z         "unit": {
2026-06-04T14:33:01.3964630Z           "complete": false,
2026-06-04T14:33:01.3965850Z           "evidence": []
2026-06-04T14:33:01.3966981Z         }
2026-06-04T14:33:01.3967935Z       }
2026-06-04T14:33:01.3968865Z     },
2026-06-04T14:33:01.3969834Z     {
2026-06-04T14:33:01.3971002Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-04T14:33:01.3983853Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-04T14:33:01.3989043Z       "requiredStages": [
2026-06-04T14:33:01.3990277Z         "impl",
2026-06-04T14:33:01.3991300Z         "unit"
2026-06-04T14:33:01.3997663Z       ],
2026-06-04T14:33:01.3998686Z       "stages": {
2026-06-04T14:33:01.3999833Z         "doc": {
2026-06-04T14:33:01.4000902Z           "complete": false,
2026-06-04T14:33:01.4002140Z           "evidence": []
2026-06-04T14:33:01.4003270Z         },
2026-06-04T14:33:01.4004240Z         "impl": {
2026-06-04T14:33:01.4005317Z           "complete": true,
2026-06-04T14:33:01.4006515Z           "evidence": [
2026-06-04T14:33:01.4007614Z             {
2026-06-04T14:33:01.4008819Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4010417Z               "line": 26
2026-06-04T14:33:01.4011538Z             },
2026-06-04T14:33:01.4012559Z             {
2026-06-04T14:33:01.4013784Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4015392Z               "line": 93
2026-06-04T14:33:01.4016545Z             },
2026-06-04T14:33:01.4017540Z             {
2026-06-04T14:33:01.4018760Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4020379Z               "line": 158
2026-06-04T14:33:01.4021510Z             },
2026-06-04T14:33:01.4022512Z             {
2026-06-04T14:33:01.4023696Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4025214Z               "line": 19
2026-06-04T14:33:01.4026330Z             },
2026-06-04T14:33:01.4027329Z             {
2026-06-04T14:33:01.4028512Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4030108Z               "line": 50
2026-06-04T14:33:01.4031238Z             },
2026-06-04T14:33:01.4032255Z             {
2026-06-04T14:33:01.4033398Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T14:33:01.4034877Z               "line": 18
2026-06-04T14:33:01.4035987Z             },
2026-06-04T14:33:01.4036993Z             {
2026-06-04T14:33:01.4038509Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T14:33:01.4040064Z               "line": 65
2026-06-04T14:33:01.4041187Z             },
2026-06-04T14:33:01.4042190Z             {
2026-06-04T14:33:01.4043369Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.4044860Z               "line": 51
2026-06-04T14:33:01.4045976Z             }
2026-06-04T14:33:01.4046962Z           ]
2026-06-04T14:33:01.4047931Z         },
2026-06-04T14:33:01.4048899Z         "int": {
2026-06-04T14:33:01.4050007Z           "complete": false,
2026-06-04T14:33:01.4051239Z           "evidence": []
2026-06-04T14:33:01.4052377Z         },
2026-06-04T14:33:01.4053355Z         "unit": {
2026-06-04T14:33:01.4054432Z           "complete": true,
2026-06-04T14:33:01.4055632Z           "evidence": [
2026-06-04T14:33:01.4056735Z             {
2026-06-04T14:33:01.4057945Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4059521Z               "line": 276
2026-06-04T14:33:01.4060853Z             },
2026-06-04T14:33:01.4061860Z             {
2026-06-04T14:33:01.4063085Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4064637Z               "line": 295
2026-06-04T14:33:01.4065773Z             },
2026-06-04T14:33:01.4066783Z             {
2026-06-04T14:33:01.4068509Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4070748Z               "line": 323
2026-06-04T14:33:01.4071994Z             },
2026-06-04T14:33:01.4073088Z             {
2026-06-04T14:33:01.4074392Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4076012Z               "line": 372
2026-06-04T14:33:01.4077222Z             },
2026-06-04T14:33:01.4078325Z             {
2026-06-04T14:33:01.4079712Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4081415Z               "line": 383
2026-06-04T14:33:01.4082631Z             },
2026-06-04T14:33:01.4083723Z             {
2026-06-04T14:33:01.4085117Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4086979Z               "line": 414
2026-06-04T14:33:01.4088361Z             },
2026-06-04T14:33:01.4089631Z             {
2026-06-04T14:33:01.4091049Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.4092603Z               "line": 425
2026-06-04T14:33:01.4100860Z             },
2026-06-04T14:33:01.4102048Z             {
2026-06-04T14:33:01.4103259Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4104772Z               "line": 77
2026-06-04T14:33:01.4105909Z             },
2026-06-04T14:33:01.4106905Z             {
2026-06-04T14:33:01.4108099Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4110030Z               "line": 95
2026-06-04T14:33:01.4111159Z             },
2026-06-04T14:33:01.4112171Z             {
2026-06-04T14:33:01.4113357Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4114872Z               "line": 106
2026-06-04T14:33:01.4116070Z             },
2026-06-04T14:33:01.4117074Z             {
2026-06-04T14:33:01.4118266Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4120187Z               "line": 117
2026-06-04T14:33:01.4121322Z             },
2026-06-04T14:33:01.4122324Z             {
2026-06-04T14:33:01.4123517Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4125039Z               "line": 124
2026-06-04T14:33:01.4126179Z             },
2026-06-04T14:33:01.4127170Z             {
2026-06-04T14:33:01.4128361Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T14:33:01.4130270Z               "line": 137
2026-06-04T14:33:01.4131403Z             },
2026-06-04T14:33:01.4132411Z             {
2026-06-04T14:33:01.4133552Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T14:33:01.4135027Z               "line": 106
2026-06-04T14:33:01.4136160Z             },
2026-06-04T14:33:01.4137163Z             {
2026-06-04T14:33:01.4138755Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T14:33:01.4140691Z               "line": 118
2026-06-04T14:33:01.4141825Z             },
2026-06-04T14:33:01.4142825Z             {
2026-06-04T14:33:01.4144001Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T14:33:01.4145503Z               "line": 317
2026-06-04T14:33:01.4146636Z             }
2026-06-04T14:33:01.4147624Z           ]
2026-06-04T14:33:01.4148585Z         }
2026-06-04T14:33:01.4149829Z       }
2026-06-04T14:33:01.4150806Z     },
2026-06-04T14:33:01.4151794Z     {
2026-06-04T14:33:01.4152947Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-04T14:33:01.4155519Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-04T14:33:01.4158035Z       "requiredStages": [
2026-06-04T14:33:01.4159338Z         "impl",
2026-06-04T14:33:01.4160569Z         "unit"
2026-06-04T14:33:01.4161574Z       ],
2026-06-04T14:33:01.4162551Z       "stages": {
2026-06-04T14:33:01.4163833Z         "doc": {
2026-06-04T14:33:01.4164909Z           "complete": true,
2026-06-04T14:33:01.4166133Z           "evidence": [
2026-06-04T14:33:01.4167234Z             {
2026-06-04T14:33:01.4168347Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T14:33:01.4169842Z               "line": 137
2026-06-04T14:33:01.4171000Z             }
2026-06-04T14:33:01.4171994Z           ]
2026-06-04T14:33:01.4172960Z         },
2026-06-04T14:33:01.4173935Z         "impl": {
2026-06-04T14:33:01.4175026Z           "complete": true,
2026-06-04T14:33:01.4176222Z           "evidence": [
2026-06-04T14:33:01.4177327Z             {
2026-06-04T14:33:01.4178476Z               "path": "crates/spt-store/src/db.rs",
2026-06-04T14:33:01.4179985Z               "line": 29
2026-06-04T14:33:01.4181099Z             },
2026-06-04T14:33:01.4182113Z             {
2026-06-04T14:33:01.4183281Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.4184772Z               "line": 101
2026-06-04T14:33:01.4185939Z             },
2026-06-04T14:33:01.4186967Z             {
2026-06-04T14:33:01.4188246Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4189872Z               "line": 30
2026-06-04T14:33:01.4190994Z             },
2026-06-04T14:33:01.4191995Z             {
2026-06-04T14:33:01.4193165Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.4194668Z               "line": 48
2026-06-04T14:33:01.4195796Z             }
2026-06-04T14:33:01.4196795Z           ]
2026-06-04T14:33:01.4197762Z         },
2026-06-04T14:33:01.4198724Z         "int": {
2026-06-04T14:33:01.4199836Z           "complete": false,
2026-06-04T14:33:01.4201065Z           "evidence": []
2026-06-04T14:33:01.4207741Z         },
2026-06-04T14:33:01.4208764Z         "unit": {
2026-06-04T14:33:01.4209949Z           "complete": true,
2026-06-04T14:33:01.4211158Z           "evidence": [
2026-06-04T14:33:01.4212256Z             {
2026-06-04T14:33:01.4213465Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4215058Z               "line": 152
2026-06-04T14:33:01.4216202Z             }
2026-06-04T14:33:01.4217198Z           ]
2026-06-04T14:33:01.4218161Z         }
2026-06-04T14:33:01.4219115Z       }
2026-06-04T14:33:01.4220101Z     },
2026-06-04T14:33:01.4221052Z     {
2026-06-04T14:33:01.4222153Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-04T14:33:01.4225340Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-04T14:33:01.4228134Z       "requiredStages": [
2026-06-04T14:33:01.4229340Z         "doc",
2026-06-04T14:33:01.4230356Z         "impl",
2026-06-04T14:33:01.4231376Z         "unit"
2026-06-04T14:33:01.4232379Z       ],
2026-06-04T14:33:01.4233352Z       "stages": {
2026-06-04T14:33:01.4234387Z         "doc": {
2026-06-04T14:33:01.4235447Z           "complete": true,
2026-06-04T14:33:01.4236645Z           "evidence": [
2026-06-04T14:33:01.4237744Z             {
2026-06-04T14:33:01.4239238Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T14:33:01.4240719Z               "line": 149
2026-06-04T14:33:01.4241854Z             }
2026-06-04T14:33:01.4242872Z           ]
2026-06-04T14:33:01.4243834Z         },
2026-06-04T14:33:01.4244804Z         "impl": {
2026-06-04T14:33:01.4245879Z           "complete": true,
2026-06-04T14:33:01.4247079Z           "evidence": [
2026-06-04T14:33:01.4248181Z             {
2026-06-04T14:33:01.4249415Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4250953Z               "line": 22
2026-06-04T14:33:01.4252078Z             }
2026-06-04T14:33:01.4253078Z           ]
2026-06-04T14:33:01.4254035Z         },
2026-06-04T14:33:01.4255006Z         "int": {
2026-06-04T14:33:01.4256073Z           "complete": false,
2026-06-04T14:33:01.4257303Z           "evidence": []
2026-06-04T14:33:01.4258421Z         },
2026-06-04T14:33:01.4259430Z         "unit": {
2026-06-04T14:33:01.4260510Z           "complete": true,
2026-06-04T14:33:01.4261902Z           "evidence": [
2026-06-04T14:33:01.4263015Z             {
2026-06-04T14:33:01.4264222Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4265779Z               "line": 257
2026-06-04T14:33:01.4266915Z             }
2026-06-04T14:33:01.4267902Z           ]
2026-06-04T14:33:01.4268863Z         }
2026-06-04T14:33:01.4269858Z       }
2026-06-04T14:33:01.4270791Z     },
2026-06-04T14:33:01.4271735Z     {
2026-06-04T14:33:01.4272858Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-04T14:33:01.4276215Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-04T14:33:01.4279387Z       "requiredStages": [
2026-06-04T14:33:01.4280559Z         "impl",
2026-06-04T14:33:01.4281585Z         "unit"
2026-06-04T14:33:01.4282580Z       ],
2026-06-04T14:33:01.4283550Z       "stages": {
2026-06-04T14:33:01.4284597Z         "doc": {
2026-06-04T14:33:01.4285702Z           "complete": true,
2026-06-04T14:33:01.4287520Z           "evidence": [
2026-06-04T14:33:01.4288848Z             {
2026-06-04T14:33:01.4290209Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T14:33:01.4291676Z               "line": 143
2026-06-04T14:33:01.4292803Z             }
2026-06-04T14:33:01.4293789Z           ]
2026-06-04T14:33:01.4294755Z         },
2026-06-04T14:33:01.4295740Z         "impl": {
2026-06-04T14:33:01.4296812Z           "complete": true,
2026-06-04T14:33:01.4298009Z           "evidence": [
2026-06-04T14:33:01.4299108Z             {
2026-06-04T14:33:01.4299807Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4300280Z               "line": 134
2026-06-04T14:33:01.4300713Z             },
2026-06-04T14:33:01.4301141Z             {
2026-06-04T14:33:01.4301755Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T14:33:01.4302219Z               "line": 15
2026-06-04T14:33:01.4302649Z             }
2026-06-04T14:33:01.4303102Z           ]
2026-06-04T14:33:01.4303557Z         },
2026-06-04T14:33:01.4303998Z         "int": {
2026-06-04T14:33:01.4304478Z           "complete": false,
2026-06-04T14:33:01.4304951Z           "evidence": []
2026-06-04T14:33:01.4305382Z         },
2026-06-04T14:33:01.4305832Z         "unit": {
2026-06-04T14:33:01.4311796Z           "complete": true,
2026-06-04T14:33:01.4312384Z           "evidence": [
2026-06-04T14:33:01.4312827Z             {
2026-06-04T14:33:01.4313534Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T14:33:01.4313999Z               "line": 87
2026-06-04T14:33:01.4314429Z             },
2026-06-04T14:33:01.4314866Z             {
2026-06-04T14:33:01.4315520Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4315996Z               "line": 570
2026-06-04T14:33:01.4316442Z             },
2026-06-04T14:33:01.4316875Z             {
2026-06-04T14:33:01.4317530Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4318041Z               "line": 589
2026-06-04T14:33:01.4318850Z             },
2026-06-04T14:33:01.4319390Z             {
2026-06-04T14:33:01.4320076Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.4320551Z               "line": 148
2026-06-04T14:33:01.4320984Z             },
2026-06-04T14:33:01.4321423Z             {
2026-06-04T14:33:01.4322025Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T14:33:01.4322487Z               "line": 74
2026-06-04T14:33:01.4322928Z             },
2026-06-04T14:33:01.4323353Z             {
2026-06-04T14:33:01.4323966Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T14:33:01.4324425Z               "line": 88
2026-06-04T14:33:01.4324871Z             },
2026-06-04T14:33:01.4325300Z             {
2026-06-04T14:33:01.4325920Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T14:33:01.4326392Z               "line": 104
2026-06-04T14:33:01.4326822Z             }
2026-06-04T14:33:01.4327269Z           ]
2026-06-04T14:33:01.4327868Z         }
2026-06-04T14:33:01.4328315Z       }
2026-06-04T14:33:01.4328736Z     },
2026-06-04T14:33:01.4329209Z     {
2026-06-04T14:33:01.4329823Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-04T14:33:01.4330883Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-04T14:33:01.4331382Z       "requiredStages": [
2026-06-04T14:33:01.4331812Z         "impl",
2026-06-04T14:33:01.4332249Z         "unit"
2026-06-04T14:33:01.4332667Z       ],
2026-06-04T14:33:01.4333117Z       "stages": {
2026-06-04T14:33:01.4333568Z         "doc": {
2026-06-04T14:33:01.4334040Z           "complete": false,
2026-06-04T14:33:01.4334509Z           "evidence": []
2026-06-04T14:33:01.4334936Z         },
2026-06-04T14:33:01.4335391Z         "impl": {
2026-06-04T14:33:01.4335868Z           "complete": true,
2026-06-04T14:33:01.4336338Z           "evidence": [
2026-06-04T14:33:01.4336776Z             {
2026-06-04T14:33:01.4337376Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T14:33:01.4337882Z               "line": 15
2026-06-04T14:33:01.4338312Z             },
2026-06-04T14:33:01.4338750Z             {
2026-06-04T14:33:01.4339429Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4339894Z               "line": 55
2026-06-04T14:33:01.4340333Z             },
2026-06-04T14:33:01.4340761Z             {
2026-06-04T14:33:01.4341406Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4341864Z               "line": 62
2026-06-04T14:33:01.4342302Z             },
2026-06-04T14:33:01.4342725Z             {
2026-06-04T14:33:01.4343366Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4343834Z               "line": 107
2026-06-04T14:33:01.4344259Z             },
2026-06-04T14:33:01.4344688Z             {
2026-06-04T14:33:01.4345326Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4345790Z               "line": 128
2026-06-04T14:33:01.4346209Z             }
2026-06-04T14:33:01.4346680Z           ]
2026-06-04T14:33:01.4347109Z         },
2026-06-04T14:33:01.4347536Z         "int": {
2026-06-04T14:33:01.4348038Z           "complete": false,
2026-06-04T14:33:01.4348532Z           "evidence": []
2026-06-04T14:33:01.4348976Z         },
2026-06-04T14:33:01.4349442Z         "unit": {
2026-06-04T14:33:01.4349926Z           "complete": true,
2026-06-04T14:33:01.4350399Z           "evidence": [
2026-06-04T14:33:01.4350819Z             {
2026-06-04T14:33:01.4351435Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T14:33:01.4351896Z               "line": 113
2026-06-04T14:33:01.4352334Z             },
2026-06-04T14:33:01.4352766Z             {
2026-06-04T14:33:01.4353369Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T14:33:01.4353837Z               "line": 119
2026-06-04T14:33:01.4354265Z             },
2026-06-04T14:33:01.4354702Z             {
2026-06-04T14:33:01.4355301Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T14:33:01.4355954Z               "line": 130
2026-06-04T14:33:01.4356393Z             },
2026-06-04T14:33:01.4356822Z             {
2026-06-04T14:33:01.4357477Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4357944Z               "line": 183
2026-06-04T14:33:01.4358389Z             },
2026-06-04T14:33:01.4358819Z             {
2026-06-04T14:33:01.4359507Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4359971Z               "line": 193
2026-06-04T14:33:01.4360418Z             },
2026-06-04T14:33:01.4360849Z             {
2026-06-04T14:33:01.4361482Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4361957Z               "line": 237
2026-06-04T14:33:01.4362395Z             },
2026-06-04T14:33:01.4362835Z             {
2026-06-04T14:33:01.4363483Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4363943Z               "line": 249
2026-06-04T14:33:01.4364376Z             },
2026-06-04T14:33:01.4364952Z             {
2026-06-04T14:33:01.4365609Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.4366074Z               "line": 275
2026-06-04T14:33:01.4366503Z             }
2026-06-04T14:33:01.4366931Z           ]
2026-06-04T14:33:01.4367356Z         }
2026-06-04T14:33:01.4367785Z       }
2026-06-04T14:33:01.4368201Z     },
2026-06-04T14:33:01.4368627Z     {
2026-06-04T14:33:01.4369238Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-04T14:33:01.4370767Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-04T14:33:01.4371266Z       "requiredStages": [
2026-06-04T14:33:01.4371699Z         "impl",
2026-06-04T14:33:01.4372138Z         "unit",
2026-06-04T14:33:01.4372562Z         "int"
2026-06-04T14:33:01.4372991Z       ],
2026-06-04T14:33:01.4373427Z       "stages": {
2026-06-04T14:33:01.4373867Z         "doc": {
2026-06-04T14:33:01.4374353Z           "complete": false,
2026-06-04T14:33:01.4374833Z           "evidence": []
2026-06-04T14:33:01.4375288Z         },
2026-06-04T14:33:01.4375761Z         "impl": {
2026-06-04T14:33:01.4376714Z           "complete": true,
2026-06-04T14:33:01.4377274Z           "evidence": [
2026-06-04T14:33:01.4377802Z             {
2026-06-04T14:33:01.4378550Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.4379081Z               "line": 246
2026-06-04T14:33:01.4379655Z             },
2026-06-04T14:33:01.4380288Z             {
2026-06-04T14:33:01.4380970Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.4381486Z               "line": 506
2026-06-04T14:33:01.4381986Z             },
2026-06-04T14:33:01.4382475Z             {
2026-06-04T14:33:01.4383315Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.4383901Z               "line": 529
2026-06-04T14:33:01.4384448Z             },
2026-06-04T14:33:01.4385019Z             {
2026-06-04T14:33:01.4385777Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.4386457Z               "line": 553
2026-06-04T14:33:01.4386942Z             },
2026-06-04T14:33:01.4387418Z             {
2026-06-04T14:33:01.4388111Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.4388746Z               "line": 463
2026-06-04T14:33:01.4389283Z             },
2026-06-04T14:33:01.4390080Z             {
2026-06-04T14:33:01.4390901Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.4391424Z               "line": 544
2026-06-04T14:33:01.4391890Z             },
2026-06-04T14:33:01.4392346Z             {
2026-06-04T14:33:01.4393225Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.4401409Z               "line": 588
2026-06-04T14:33:01.4401974Z             },
2026-06-04T14:33:01.4402404Z             {
2026-06-04T14:33:01.4403067Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T14:33:01.4403545Z               "line": 631
2026-06-04T14:33:01.4403973Z             },
2026-06-04T14:33:01.4404469Z             {
2026-06-04T14:33:01.4405527Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.4406022Z               "line": 46
2026-06-04T14:33:01.4406454Z             },
2026-06-04T14:33:01.4406889Z             {
2026-06-04T14:33:01.4407528Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.4407983Z               "line": 160
2026-06-04T14:33:01.4408420Z             },
2026-06-04T14:33:01.4408851Z             {
2026-06-04T14:33:01.4409529Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T14:33:01.4409984Z               "line": 71
2026-06-04T14:33:01.4410428Z             },
2026-06-04T14:33:01.4410865Z             {
2026-06-04T14:33:01.4411472Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.4411942Z               "line": 128
2026-06-04T14:33:01.4412370Z             },
2026-06-04T14:33:01.4412807Z             {
2026-06-04T14:33:01.4413419Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.4414078Z               "line": 174
2026-06-04T14:33:01.4414517Z             }
2026-06-04T14:33:01.4414939Z           ]
2026-06-04T14:33:01.4415374Z         },
2026-06-04T14:33:01.4415804Z         "int": {
2026-06-04T14:33:01.4416285Z           "complete": true,
2026-06-04T14:33:01.4416733Z           "evidence": [
2026-06-04T14:33:01.4417171Z             {
2026-06-04T14:33:01.4417876Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-04T14:33:01.4418330Z               "line": 27
2026-06-04T14:33:01.4418771Z             },
2026-06-04T14:33:01.4419236Z             {
2026-06-04T14:33:01.4419934Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T14:33:01.4420403Z               "line": 125
2026-06-04T14:33:01.4420831Z             },
2026-06-04T14:33:01.4421264Z             {
2026-06-04T14:33:01.4421952Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T14:33:01.4422613Z               "line": 189
2026-06-04T14:33:01.4423085Z             }
2026-06-04T14:33:01.4423626Z           ]
2026-06-04T14:33:01.4424107Z         },
2026-06-04T14:33:01.4424591Z         "unit": {
2026-06-04T14:33:01.4425121Z           "complete": true,
2026-06-04T14:33:01.4425618Z           "evidence": [
2026-06-04T14:33:01.4426110Z             {
2026-06-04T14:33:01.4426801Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.4427422Z               "line": 282
2026-06-04T14:33:01.4427865Z             },
2026-06-04T14:33:01.4428295Z             {
2026-06-04T14:33:01.4428935Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.4429601Z               "line": 300
2026-06-04T14:33:01.4430206Z             },
2026-06-04T14:33:01.4430633Z             {
2026-06-04T14:33:01.4431272Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T14:33:01.4431748Z               "line": 318
2026-06-04T14:33:01.4432354Z             },
2026-06-04T14:33:01.4432826Z             {
2026-06-04T14:33:01.4433499Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T14:33:01.4434040Z               "line": 221
2026-06-04T14:33:01.4434481Z             },
2026-06-04T14:33:01.4434929Z             {
2026-06-04T14:33:01.4435629Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T14:33:01.4436130Z               "line": 204
2026-06-04T14:33:01.4436589Z             },
2026-06-04T14:33:01.4437029Z             {
2026-06-04T14:33:01.4437703Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T14:33:01.4438176Z               "line": 182
2026-06-04T14:33:01.4438632Z             },
2026-06-04T14:33:01.4439079Z             {
2026-06-04T14:33:01.4439909Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.4440689Z               "line": 441
2026-06-04T14:33:01.4441120Z             },
2026-06-04T14:33:01.4441564Z             {
2026-06-04T14:33:01.4442173Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.4442652Z               "line": 465
2026-06-04T14:33:01.4443114Z             }
2026-06-04T14:33:01.4443749Z           ]
2026-06-04T14:33:01.4444218Z         }
2026-06-04T14:33:01.4444646Z       }
2026-06-04T14:33:01.4445077Z     },
2026-06-04T14:33:01.4445493Z     {
2026-06-04T14:33:01.4446113Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-04T14:33:01.4447168Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-04T14:33:01.4447657Z       "requiredStages": [
2026-06-04T14:33:01.4448098Z         "impl",
2026-06-04T14:33:01.4448533Z         "unit"
2026-06-04T14:33:01.4449054Z       ],
2026-06-04T14:33:01.4449547Z       "stages": {
2026-06-04T14:33:01.4449997Z         "doc": {
2026-06-04T14:33:01.4450484Z           "complete": false,
2026-06-04T14:33:01.4450958Z           "evidence": []
2026-06-04T14:33:01.4451398Z         },
2026-06-04T14:33:01.4451847Z         "impl": {
2026-06-04T14:33:01.4452335Z           "complete": true,
2026-06-04T14:33:01.4452798Z           "evidence": [
2026-06-04T14:33:01.4453237Z             {
2026-06-04T14:33:01.4454124Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.4454594Z               "line": 56
2026-06-04T14:33:01.4455040Z             },
2026-06-04T14:33:01.4455475Z             {
2026-06-04T14:33:01.4456185Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.4456639Z               "line": 63
2026-06-04T14:33:01.4457073Z             },
2026-06-04T14:33:01.4457513Z             {
2026-06-04T14:33:01.4458120Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4458588Z               "line": 33
2026-06-04T14:33:01.4459012Z             },
2026-06-04T14:33:01.4459513Z             {
2026-06-04T14:33:01.4460134Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4460587Z               "line": 61
2026-06-04T14:33:01.4461033Z             },
2026-06-04T14:33:01.4461456Z             {
2026-06-04T14:33:01.4462084Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4462566Z               "line": 70
2026-06-04T14:33:01.4463018Z             },
2026-06-04T14:33:01.4463462Z             {
2026-06-04T14:33:01.4464076Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4464544Z               "line": 79
2026-06-04T14:33:01.4464975Z             },
2026-06-04T14:33:01.4465419Z             {
2026-06-04T14:33:01.4466029Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4466496Z               "line": 88
2026-06-04T14:33:01.4466938Z             },
2026-06-04T14:33:01.4467362Z             {
2026-06-04T14:33:01.4467978Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4468433Z               "line": 97
2026-06-04T14:33:01.4468873Z             },
2026-06-04T14:33:01.4469340Z             {
2026-06-04T14:33:01.4469956Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4470424Z               "line": 105
2026-06-04T14:33:01.4470859Z             },
2026-06-04T14:33:01.4471300Z             {
2026-06-04T14:33:01.4471942Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4472418Z               "line": 114
2026-06-04T14:33:01.4472847Z             },
2026-06-04T14:33:01.4473283Z             {
2026-06-04T14:33:01.4473899Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4474358Z               "line": 123
2026-06-04T14:33:01.4474796Z             },
2026-06-04T14:33:01.4475222Z             {
2026-06-04T14:33:01.4475847Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4476309Z               "line": 130
2026-06-04T14:33:01.4476748Z             },
2026-06-04T14:33:01.4477183Z             {
2026-06-04T14:33:01.4477792Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4478268Z               "line": 137
2026-06-04T14:33:01.4478699Z             },
2026-06-04T14:33:01.4479132Z             {
2026-06-04T14:33:01.4479786Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4480264Z               "line": 145
2026-06-04T14:33:01.4480936Z             },
2026-06-04T14:33:01.4481382Z             {
2026-06-04T14:33:01.4482002Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4482462Z               "line": 154
2026-06-04T14:33:01.4482901Z             },
2026-06-04T14:33:01.4483330Z             {
2026-06-04T14:33:01.4483957Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4484432Z               "line": 221
2026-06-04T14:33:01.4491314Z             },
2026-06-04T14:33:01.4491899Z             {
2026-06-04T14:33:01.4492528Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4493005Z               "line": 233
2026-06-04T14:33:01.4493439Z             },
2026-06-04T14:33:01.4493890Z             {
2026-06-04T14:33:01.4494505Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4494965Z               "line": 320
2026-06-04T14:33:01.4495403Z             }
2026-06-04T14:33:01.4495831Z           ]
2026-06-04T14:33:01.4496580Z         },
2026-06-04T14:33:01.4497032Z         "int": {
2026-06-04T14:33:01.4497532Z           "complete": false,
2026-06-04T14:33:01.4498012Z           "evidence": []
2026-06-04T14:33:01.4498442Z         },
2026-06-04T14:33:01.4498889Z         "unit": {
2026-06-04T14:33:01.4499418Z           "complete": true,
2026-06-04T14:33:01.4499887Z           "evidence": [
2026-06-04T14:33:01.4500313Z             {
2026-06-04T14:33:01.4500940Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4501416Z               "line": 390
2026-06-04T14:33:01.4501850Z             },
2026-06-04T14:33:01.4502284Z             {
2026-06-04T14:33:01.4502885Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4503355Z               "line": 416
2026-06-04T14:33:01.4503793Z             },
2026-06-04T14:33:01.4504222Z             {
2026-06-04T14:33:01.4504834Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4505299Z               "line": 429
2026-06-04T14:33:01.4505763Z             },
2026-06-04T14:33:01.4506204Z             {
2026-06-04T14:33:01.4506827Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4507305Z               "line": 471
2026-06-04T14:33:01.4507729Z             }
2026-06-04T14:33:01.4508160Z           ]
2026-06-04T14:33:01.4508588Z         }
2026-06-04T14:33:01.4509018Z       }
2026-06-04T14:33:01.4509486Z     },
2026-06-04T14:33:01.4509922Z     {
2026-06-04T14:33:01.4510467Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-04T14:33:01.4511540Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-04T14:33:01.4512039Z       "requiredStages": [
2026-06-04T14:33:01.4512487Z         "impl",
2026-06-04T14:33:01.4512927Z         "unit"
2026-06-04T14:33:01.4513350Z       ],
2026-06-04T14:33:01.4513808Z       "stages": {
2026-06-04T14:33:01.4514255Z         "doc": {
2026-06-04T14:33:01.4514728Z           "complete": false,
2026-06-04T14:33:01.4515205Z           "evidence": []
2026-06-04T14:33:01.4515651Z         },
2026-06-04T14:33:01.4516117Z         "impl": {
2026-06-04T14:33:01.4516596Z           "complete": true,
2026-06-04T14:33:01.4517057Z           "evidence": [
2026-06-04T14:33:01.4517494Z             {
2026-06-04T14:33:01.4518079Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.4518554Z               "line": 132
2026-06-04T14:33:01.4518980Z             },
2026-06-04T14:33:01.4519455Z             {
2026-06-04T14:33:01.4520091Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.4520557Z               "line": 118
2026-06-04T14:33:01.4520996Z             }
2026-06-04T14:33:01.4521421Z           ]
2026-06-04T14:33:01.4521852Z         },
2026-06-04T14:33:01.4522288Z         "int": {
2026-06-04T14:33:01.4522778Z           "complete": false,
2026-06-04T14:33:01.4523243Z           "evidence": []
2026-06-04T14:33:01.4523676Z         },
2026-06-04T14:33:01.4524124Z         "unit": {
2026-06-04T14:33:01.4524600Z           "complete": true,
2026-06-04T14:33:01.4525090Z           "evidence": [
2026-06-04T14:33:01.4525698Z             {
2026-06-04T14:33:01.4526326Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.4526781Z               "line": 250
2026-06-04T14:33:01.4527218Z             },
2026-06-04T14:33:01.4527655Z             {
2026-06-04T14:33:01.4528309Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.4528786Z               "line": 345
2026-06-04T14:33:01.4529247Z             },
2026-06-04T14:33:01.4529689Z             {
2026-06-04T14:33:01.4530322Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.4530786Z               "line": 355
2026-06-04T14:33:01.4531232Z             }
2026-06-04T14:33:01.4531657Z           ]
2026-06-04T14:33:01.4532092Z         }
2026-06-04T14:33:01.4532515Z       }
2026-06-04T14:33:01.4532942Z     },
2026-06-04T14:33:01.4533362Z     {
2026-06-04T14:33:01.4533927Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-04T14:33:01.4534650Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-04T14:33:01.4535314Z       "requiredStages": [],
2026-06-04T14:33:01.4535783Z       "stages": {
2026-06-04T14:33:01.4536227Z         "doc": {
2026-06-04T14:33:01.4536721Z           "complete": false,
2026-06-04T14:33:01.4537179Z           "evidence": []
2026-06-04T14:33:01.4537611Z         },
2026-06-04T14:33:01.4538058Z         "impl": {
2026-06-04T14:33:01.4538545Z           "complete": false,
2026-06-04T14:33:01.4539013Z           "evidence": []
2026-06-04T14:33:01.4539482Z         },
2026-06-04T14:33:01.4539926Z         "int": {
2026-06-04T14:33:01.4540402Z           "complete": false,
2026-06-04T14:33:01.4540870Z           "evidence": []
2026-06-04T14:33:01.4541309Z         },
2026-06-04T14:33:01.4541745Z         "unit": {
2026-06-04T14:33:01.4542227Z           "complete": false,
2026-06-04T14:33:01.4542687Z           "evidence": []
2026-06-04T14:33:01.4543116Z         }
2026-06-04T14:33:01.4543538Z       }
2026-06-04T14:33:01.4543962Z     },
2026-06-04T14:33:01.4544413Z     {
2026-06-04T14:33:01.4545040Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-04T14:33:01.4545954Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-04T14:33:01.4546431Z       "requiredStages": [
2026-06-04T14:33:01.4546870Z         "impl",
2026-06-04T14:33:01.4547302Z         "unit"
2026-06-04T14:33:01.4547740Z       ],
2026-06-04T14:33:01.4548202Z       "stages": {
2026-06-04T14:33:01.4548638Z         "doc": {
2026-06-04T14:33:01.4549126Z           "complete": false,
2026-06-04T14:33:01.4549632Z           "evidence": []
2026-06-04T14:33:01.4550078Z         },
2026-06-04T14:33:01.4550516Z         "impl": {
2026-06-04T14:33:01.4550998Z           "complete": true,
2026-06-04T14:33:01.4551468Z           "evidence": [
2026-06-04T14:33:01.4551898Z             {
2026-06-04T14:33:01.4552561Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.4553015Z               "line": 424
2026-06-04T14:33:01.4553460Z             },
2026-06-04T14:33:01.4553898Z             {
2026-06-04T14:33:01.4554529Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.4555004Z               "line": 28
2026-06-04T14:33:01.4555433Z             }
2026-06-04T14:33:01.4555868Z           ]
2026-06-04T14:33:01.4556294Z         },
2026-06-04T14:33:01.4556735Z         "int": {
2026-06-04T14:33:01.4557211Z           "complete": false,
2026-06-04T14:33:01.4557678Z           "evidence": []
2026-06-04T14:33:01.4558119Z         },
2026-06-04T14:33:01.4558550Z         "unit": {
2026-06-04T14:33:01.4559030Z           "complete": true,
2026-06-04T14:33:01.4559530Z           "evidence": [
2026-06-04T14:33:01.4559963Z             {
2026-06-04T14:33:01.4560571Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.4561041Z               "line": 200
2026-06-04T14:33:01.4561486Z             }
2026-06-04T14:33:01.4561916Z           ]
2026-06-04T14:33:01.4562351Z         }
2026-06-04T14:33:01.4562767Z       }
2026-06-04T14:33:01.4563219Z     },
2026-06-04T14:33:01.4563822Z     {
2026-06-04T14:33:01.4564409Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-04T14:33:01.4565139Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-04T14:33:01.4565625Z       "requiredStages": [],
2026-06-04T14:33:01.4566073Z       "stages": {
2026-06-04T14:33:01.4566513Z         "doc": {
2026-06-04T14:33:01.4566994Z           "complete": false,
2026-06-04T14:33:01.4567452Z           "evidence": []
2026-06-04T14:33:01.4567890Z         },
2026-06-04T14:33:01.4568334Z         "impl": {
2026-06-04T14:33:01.4568814Z           "complete": false,
2026-06-04T14:33:01.4569329Z           "evidence": []
2026-06-04T14:33:01.4569758Z         },
2026-06-04T14:33:01.4575322Z         "int": {
2026-06-04T14:33:01.4575903Z           "complete": false,
2026-06-04T14:33:01.4576385Z           "evidence": []
2026-06-04T14:33:01.4576825Z         },
2026-06-04T14:33:01.4577259Z         "unit": {
2026-06-04T14:33:01.4577739Z           "complete": false,
2026-06-04T14:33:01.4578477Z           "evidence": []
2026-06-04T14:33:01.4578931Z         }
2026-06-04T14:33:01.4579452Z       }
2026-06-04T14:33:01.4579883Z     },
2026-06-04T14:33:01.4580309Z     {
2026-06-04T14:33:01.4580903Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-04T14:33:01.4581716Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-04T14:33:01.4582196Z       "requiredStages": [
2026-06-04T14:33:01.4582634Z         "impl",
2026-06-04T14:33:01.4583070Z         "unit"
2026-06-04T14:33:01.4583496Z       ],
2026-06-04T14:33:01.4583950Z       "stages": {
2026-06-04T14:33:01.4584378Z         "doc": {
2026-06-04T14:33:01.4584865Z           "complete": false,
2026-06-04T14:33:01.4585322Z           "evidence": []
2026-06-04T14:33:01.4585749Z         },
2026-06-04T14:33:01.4586185Z         "impl": {
2026-06-04T14:33:01.4586665Z           "complete": true,
2026-06-04T14:33:01.4587123Z           "evidence": [
2026-06-04T14:33:01.4587558Z             {
2026-06-04T14:33:01.4588180Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T14:33:01.4588651Z               "line": 19
2026-06-04T14:33:01.4589090Z             },
2026-06-04T14:33:01.4589559Z             {
2026-06-04T14:33:01.4590224Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.4590696Z               "line": 325
2026-06-04T14:33:01.4591124Z             },
2026-06-04T14:33:01.4591557Z             {
2026-06-04T14:33:01.4592192Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.4592655Z               "line": 361
2026-06-04T14:33:01.4593076Z             },
2026-06-04T14:33:01.4593507Z             {
2026-06-04T14:33:01.4594120Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T14:33:01.4594573Z               "line": 15
2026-06-04T14:33:01.4595012Z             },
2026-06-04T14:33:01.4595433Z             {
2026-06-04T14:33:01.4596051Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T14:33:01.4596499Z               "line": 48
2026-06-04T14:33:01.4596948Z             },
2026-06-04T14:33:01.4597395Z             {
2026-06-04T14:33:01.4598006Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T14:33:01.4598465Z               "line": 106
2026-06-04T14:33:01.4598887Z             }
2026-06-04T14:33:01.4599352Z           ]
2026-06-04T14:33:01.4599778Z         },
2026-06-04T14:33:01.4600222Z         "int": {
2026-06-04T14:33:01.4600703Z           "complete": false,
2026-06-04T14:33:01.4601163Z           "evidence": []
2026-06-04T14:33:01.4601594Z         },
2026-06-04T14:33:01.4602022Z         "unit": {
2026-06-04T14:33:01.4602502Z           "complete": true,
2026-06-04T14:33:01.4602957Z           "evidence": [
2026-06-04T14:33:01.4603397Z             {
2026-06-04T14:33:01.4604045Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.4604501Z               "line": 453
2026-06-04T14:33:01.4604936Z             },
2026-06-04T14:33:01.4605358Z             {
2026-06-04T14:33:01.4605971Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T14:33:01.4606630Z               "line": 149
2026-06-04T14:33:01.4607085Z             },
2026-06-04T14:33:01.4607520Z             {
2026-06-04T14:33:01.4608126Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T14:33:01.4608593Z               "line": 156
2026-06-04T14:33:01.4609015Z             }
2026-06-04T14:33:01.4609585Z           ]
2026-06-04T14:33:01.4610012Z         }
2026-06-04T14:33:01.4610435Z       }
2026-06-04T14:33:01.4610862Z     },
2026-06-04T14:33:01.4611289Z     {
2026-06-04T14:33:01.4611877Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-04T14:33:01.4612709Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-04T14:33:01.4613197Z       "requiredStages": [
2026-06-04T14:33:01.4613633Z         "impl",
2026-06-04T14:33:01.4614073Z         "unit"
2026-06-04T14:33:01.4614508Z       ],
2026-06-04T14:33:01.4614960Z       "stages": {
2026-06-04T14:33:01.4615402Z         "doc": {
2026-06-04T14:33:01.4615887Z           "complete": false,
2026-06-04T14:33:01.4616590Z           "evidence": []
2026-06-04T14:33:01.4617016Z         },
2026-06-04T14:33:01.4617457Z         "impl": {
2026-06-04T14:33:01.4617936Z           "complete": true,
2026-06-04T14:33:01.4618389Z           "evidence": [
2026-06-04T14:33:01.4618822Z             {
2026-06-04T14:33:01.4619468Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.4619931Z               "line": 35
2026-06-04T14:33:01.4620384Z             }
2026-06-04T14:33:01.4620811Z           ]
2026-06-04T14:33:01.4621247Z         },
2026-06-04T14:33:01.4621676Z         "int": {
2026-06-04T14:33:01.4622161Z           "complete": false,
2026-06-04T14:33:01.4622624Z           "evidence": []
2026-06-04T14:33:01.4623052Z         },
2026-06-04T14:33:01.4623490Z         "unit": {
2026-06-04T14:33:01.4623964Z           "complete": true,
2026-06-04T14:33:01.4624426Z           "evidence": [
2026-06-04T14:33:01.4624847Z             {
2026-06-04T14:33:01.4625461Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T14:33:01.4625950Z               "line": 217
2026-06-04T14:33:01.4626396Z             }
2026-06-04T14:33:01.4626814Z           ]
2026-06-04T14:33:01.4627243Z         }
2026-06-04T14:33:01.4627670Z       }
2026-06-04T14:33:01.4628085Z     },
2026-06-04T14:33:01.4628518Z     {
2026-06-04T14:33:01.4629061Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-04T14:33:01.4630583Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-04T14:33:01.4631061Z       "requiredStages": [
2026-06-04T14:33:01.4631500Z         "impl",
2026-06-04T14:33:01.4631939Z         "unit"
2026-06-04T14:33:01.4632365Z       ],
2026-06-04T14:33:01.4632811Z       "stages": {
2026-06-04T14:33:01.4633246Z         "doc": {
2026-06-04T14:33:01.4633733Z           "complete": false,
2026-06-04T14:33:01.4634202Z           "evidence": []
2026-06-04T14:33:01.4634635Z         },
2026-06-04T14:33:01.4635089Z         "impl": {
2026-06-04T14:33:01.4635571Z           "complete": true,
2026-06-04T14:33:01.4636053Z           "evidence": [
2026-06-04T14:33:01.4636471Z             {
2026-06-04T14:33:01.4637140Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.4637595Z               "line": 256
2026-06-04T14:33:01.4638021Z             },
2026-06-04T14:33:01.4638446Z             {
2026-06-04T14:33:01.4639075Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.4639573Z               "line": 221
2026-06-04T14:33:01.4639998Z             },
2026-06-04T14:33:01.4640433Z             {
2026-06-04T14:33:01.4641062Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.4641528Z               "line": 150
2026-06-04T14:33:01.4641961Z             }
2026-06-04T14:33:01.4642380Z           ]
2026-06-04T14:33:01.4642821Z         },
2026-06-04T14:33:01.4643261Z         "int": {
2026-06-04T14:33:01.4643737Z           "complete": false,
2026-06-04T14:33:01.4644190Z           "evidence": []
2026-06-04T14:33:01.4644646Z         },
2026-06-04T14:33:01.4645250Z         "unit": {
2026-06-04T14:33:01.4645739Z           "complete": true,
2026-06-04T14:33:01.4646207Z           "evidence": [
2026-06-04T14:33:01.4646628Z             {
2026-06-04T14:33:01.4647270Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.4647723Z               "line": 477
2026-06-04T14:33:01.4648159Z             },
2026-06-04T14:33:01.4648595Z             {
2026-06-04T14:33:01.4649255Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.4649721Z               "line": 488
2026-06-04T14:33:01.4650146Z             },
2026-06-04T14:33:01.4650581Z             {
2026-06-04T14:33:01.4651210Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.4651677Z               "line": 504
2026-06-04T14:33:01.4652110Z             },
2026-06-04T14:33:01.4652536Z             {
2026-06-04T14:33:01.4653170Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.4653782Z               "line": 518
2026-06-04T14:33:01.4654232Z             },
2026-06-04T14:33:01.4654662Z             {
2026-06-04T14:33:01.4660441Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T14:33:01.4660921Z               "line": 268
2026-06-04T14:33:01.4661341Z             }
2026-06-04T14:33:01.4661766Z           ]
2026-06-04T14:33:01.4662183Z         }
2026-06-04T14:33:01.4662609Z       }
2026-06-04T14:33:01.4663024Z     },
2026-06-04T14:33:01.4663444Z     {
2026-06-04T14:33:01.4663995Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-04T14:33:01.4668658Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-04T14:33:01.4669199Z       "requiredStages": [
2026-06-04T14:33:01.4669648Z         "doc",
2026-06-04T14:33:01.4670086Z         "impl",
2026-06-04T14:33:01.4670570Z         "unit"
2026-06-04T14:33:01.4671009Z       ],
2026-06-04T14:33:01.4671450Z       "stages": {
2026-06-04T14:33:01.4671886Z         "doc": {
2026-06-04T14:33:01.4672367Z           "complete": true,
2026-06-04T14:33:01.4672816Z           "evidence": [
2026-06-04T14:33:01.4673252Z             {
2026-06-04T14:33:01.4673814Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T14:33:01.4674265Z               "line": 259
2026-06-04T14:33:01.4674693Z             }
2026-06-04T14:33:01.4675108Z           ]
2026-06-04T14:33:01.4675530Z         },
2026-06-04T14:33:01.4675960Z         "impl": {
2026-06-04T14:33:01.4676433Z           "complete": true,
2026-06-04T14:33:01.4676898Z           "evidence": [
2026-06-04T14:33:01.4677321Z             {
2026-06-04T14:33:01.4677958Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.4678412Z               "line": 85
2026-06-04T14:33:01.4678847Z             },
2026-06-04T14:33:01.4679296Z             {
2026-06-04T14:33:01.4679963Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.4680417Z               "line": 99
2026-06-04T14:33:01.4680838Z             },
2026-06-04T14:33:01.4681269Z             {
2026-06-04T14:33:01.4681911Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.4682369Z               "line": 53
2026-06-04T14:33:01.4682792Z             },
2026-06-04T14:33:01.4683221Z             {
2026-06-04T14:33:01.4683878Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.4684336Z               "line": 89
2026-06-04T14:33:01.4684770Z             },
2026-06-04T14:33:01.4685197Z             {
2026-06-04T14:33:01.4685853Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.4686297Z               "line": 29
2026-06-04T14:33:01.4686729Z             },
2026-06-04T14:33:01.4687164Z             {
2026-06-04T14:33:01.4687812Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.4688276Z               "line": 75
2026-06-04T14:33:01.4688989Z             },
2026-06-04T14:33:01.4689478Z             {
2026-06-04T14:33:01.4690169Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.4690629Z               "line": 121
2026-06-04T14:33:01.4691069Z             },
2026-06-04T14:33:01.4691491Z             {
2026-06-04T14:33:01.4692101Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.4692559Z               "line": 40
2026-06-04T14:33:01.4692992Z             },
2026-06-04T14:33:01.4693424Z             {
2026-06-04T14:33:01.4694015Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.4694475Z               "line": 161
2026-06-04T14:33:01.4694898Z             },
2026-06-04T14:33:01.4695324Z             {
2026-06-04T14:33:01.4695903Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T14:33:01.4696360Z               "line": 70
2026-06-04T14:33:01.4696787Z             },
2026-06-04T14:33:01.4697205Z             {
2026-06-04T14:33:01.4697974Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.4698431Z               "line": 210
2026-06-04T14:33:01.4698857Z             },
2026-06-04T14:33:01.4699323Z             {
2026-06-04T14:33:01.4699938Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T14:33:01.4700404Z               "line": 37
2026-06-04T14:33:01.4700825Z             },
2026-06-04T14:33:01.4701251Z             {
2026-06-04T14:33:01.4701878Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T14:33:01.4702335Z               "line": 38
2026-06-04T14:33:01.4702759Z             },
2026-06-04T14:33:01.4703197Z             {
2026-06-04T14:33:01.4703830Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.4704287Z               "line": 36
2026-06-04T14:33:01.4704725Z             },
2026-06-04T14:33:01.4705156Z             {
2026-06-04T14:33:01.4705764Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T14:33:01.4706215Z               "line": 40
2026-06-04T14:33:01.4706684Z             }
2026-06-04T14:33:01.4707127Z           ]
2026-06-04T14:33:01.4707551Z         },
2026-06-04T14:33:01.4707990Z         "int": {
2026-06-04T14:33:01.4708465Z           "complete": false,
2026-06-04T14:33:01.4708933Z           "evidence": []
2026-06-04T14:33:01.4709408Z         },
2026-06-04T14:33:01.4709870Z         "unit": {
2026-06-04T14:33:01.4710373Z           "complete": true,
2026-06-04T14:33:01.4710823Z           "evidence": [
2026-06-04T14:33:01.4711255Z             {
2026-06-04T14:33:01.4711906Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.4712368Z               "line": 179
2026-06-04T14:33:01.4712790Z             },
2026-06-04T14:33:01.4713218Z             {
2026-06-04T14:33:01.4713893Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T14:33:01.4714349Z               "line": 117
2026-06-04T14:33:01.4714784Z             },
2026-06-04T14:33:01.4715204Z             {
2026-06-04T14:33:01.4715920Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T14:33:01.4716378Z               "line": 344
2026-06-04T14:33:01.4716809Z             },
2026-06-04T14:33:01.4717239Z             {
2026-06-04T14:33:01.4717866Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.4718327Z               "line": 204
2026-06-04T14:33:01.4718742Z             },
2026-06-04T14:33:01.4719216Z             {
2026-06-04T14:33:01.4719854Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T14:33:01.4720315Z               "line": 147
2026-06-04T14:33:01.4720747Z             },
2026-06-04T14:33:01.4721172Z             {
2026-06-04T14:33:01.4721795Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.4722246Z               "line": 106
2026-06-04T14:33:01.4722680Z             },
2026-06-04T14:33:01.4723102Z             {
2026-06-04T14:33:01.4723709Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T14:33:01.4724166Z               "line": 142
2026-06-04T14:33:01.4724768Z             },
2026-06-04T14:33:01.4725214Z             {
2026-06-04T14:33:01.4725842Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T14:33:01.4726299Z               "line": 139
2026-06-04T14:33:01.4726728Z             },
2026-06-04T14:33:01.4727152Z             {
2026-06-04T14:33:01.4727790Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.4728242Z               "line": 126
2026-06-04T14:33:01.4728672Z             },
2026-06-04T14:33:01.4729088Z             {
2026-06-04T14:33:01.4729729Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T14:33:01.4730197Z               "line": 135
2026-06-04T14:33:01.4730618Z             }
2026-06-04T14:33:01.4731051Z           ]
2026-06-04T14:33:01.4731469Z         }
2026-06-04T14:33:01.4731902Z       }
2026-06-04T14:33:01.4732316Z     },
2026-06-04T14:33:01.4732731Z     {
2026-06-04T14:33:01.4733327Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-04T14:33:01.4734338Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-04T14:33:01.4734831Z       "requiredStages": [
2026-06-04T14:33:01.4735262Z         "impl",
2026-06-04T14:33:01.4735705Z         "unit"
2026-06-04T14:33:01.4736126Z       ],
2026-06-04T14:33:01.4736572Z       "stages": {
2026-06-04T14:33:01.4737007Z         "doc": {
2026-06-04T14:33:01.4737477Z           "complete": false,
2026-06-04T14:33:01.4737939Z           "evidence": []
2026-06-04T14:33:01.4738361Z         },
2026-06-04T14:33:01.4738804Z         "impl": {
2026-06-04T14:33:01.4739305Z           "complete": true,
2026-06-04T14:33:01.4739765Z           "evidence": [
2026-06-04T14:33:01.4740198Z             {
2026-06-04T14:33:01.4740801Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.4741268Z               "line": 95
2026-06-04T14:33:01.4741694Z             },
2026-06-04T14:33:01.4742127Z             {
2026-06-04T14:33:01.4742725Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.4748228Z               "line": 99
2026-06-04T14:33:01.4748750Z             }
2026-06-04T14:33:01.4749276Z           ]
2026-06-04T14:33:01.4749708Z         },
2026-06-04T14:33:01.4750146Z         "int": {
2026-06-04T14:33:01.4750632Z           "complete": false,
2026-06-04T14:33:01.4751095Z           "evidence": []
2026-06-04T14:33:01.4751520Z         },
2026-06-04T14:33:01.4751956Z         "unit": {
2026-06-04T14:33:01.4752425Z           "complete": true,
2026-06-04T14:33:01.4752878Z           "evidence": [
2026-06-04T14:33:01.4753299Z             {
2026-06-04T14:33:01.4753916Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.4754367Z               "line": 250
2026-06-04T14:33:01.4754799Z             },
2026-06-04T14:33:01.4755221Z             {
2026-06-04T14:33:01.4755814Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T14:33:01.4756272Z               "line": 139
2026-06-04T14:33:01.4756692Z             },
2026-06-04T14:33:01.4757120Z             {
2026-06-04T14:33:01.4757755Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.4758217Z               "line": 432
2026-06-04T14:33:01.4758647Z             },
2026-06-04T14:33:01.4759067Z             {
2026-06-04T14:33:01.4759705Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.4760156Z               "line": 462
2026-06-04T14:33:01.4760585Z             }
2026-06-04T14:33:01.4761013Z           ]
2026-06-04T14:33:01.4761439Z         }
2026-06-04T14:33:01.4761865Z       }
2026-06-04T14:33:01.4762278Z     },
2026-06-04T14:33:01.4762705Z     {
2026-06-04T14:33:01.4763231Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-04T14:33:01.4764216Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-04T14:33:01.4764692Z       "requiredStages": [
2026-06-04T14:33:01.4765127Z         "impl",
2026-06-04T14:33:01.4765562Z         "unit"
2026-06-04T14:33:01.4765984Z       ],
2026-06-04T14:33:01.4766421Z       "stages": {
2026-06-04T14:33:01.4766848Z         "doc": {
2026-06-04T14:33:01.4767606Z           "complete": false,
2026-06-04T14:33:01.4768094Z           "evidence": []
2026-06-04T14:33:01.4768527Z         },
2026-06-04T14:33:01.4768972Z         "impl": {
2026-06-04T14:33:01.4769479Z           "complete": true,
2026-06-04T14:33:01.4769941Z           "evidence": [
2026-06-04T14:33:01.4770364Z             {
2026-06-04T14:33:01.4770970Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4771426Z               "line": 177
2026-06-04T14:33:01.4771859Z             },
2026-06-04T14:33:01.4772289Z             {
2026-06-04T14:33:01.4772893Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4773356Z               "line": 222
2026-06-04T14:33:01.4773779Z             },
2026-06-04T14:33:01.4774206Z             {
2026-06-04T14:33:01.4774809Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4775271Z               "line": 234
2026-06-04T14:33:01.4775702Z             }
2026-06-04T14:33:01.4776328Z           ]
2026-06-04T14:33:01.4776768Z         },
2026-06-04T14:33:01.4777197Z         "int": {
2026-06-04T14:33:01.4777682Z           "complete": false,
2026-06-04T14:33:01.4778133Z           "evidence": []
2026-06-04T14:33:01.4778558Z         },
2026-06-04T14:33:01.4778996Z         "unit": {
2026-06-04T14:33:01.4779504Z           "complete": true,
2026-06-04T14:33:01.4780148Z           "evidence": [
2026-06-04T14:33:01.4780937Z             {
2026-06-04T14:33:01.4781721Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4782293Z               "line": 370
2026-06-04T14:33:01.4782897Z             },
2026-06-04T14:33:01.4783327Z             {
2026-06-04T14:33:01.4783933Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.4784407Z               "line": 399
2026-06-04T14:33:01.4784983Z             }
2026-06-04T14:33:01.4785470Z           ]
2026-06-04T14:33:01.4785917Z         }
2026-06-04T14:33:01.4786364Z       }
2026-06-04T14:33:01.4786816Z     },
2026-06-04T14:33:01.4787283Z     {
2026-06-04T14:33:01.4787802Z       "id": "REQ-INFRA-1",
2026-06-04T14:33:01.4788811Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-04T14:33:01.4789547Z       "requiredStages": [],
2026-06-04T14:33:01.4789997Z       "stages": {
2026-06-04T14:33:01.4790439Z         "doc": {
2026-06-04T14:33:01.4790926Z           "complete": false,
2026-06-04T14:33:01.4791382Z           "evidence": []
2026-06-04T14:33:01.4791823Z         },
2026-06-04T14:33:01.4792254Z         "impl": {
2026-06-04T14:33:01.4792736Z           "complete": false,
2026-06-04T14:33:01.4793197Z           "evidence": []
2026-06-04T14:33:01.4793632Z         },
2026-06-04T14:33:01.4794074Z         "int": {
2026-06-04T14:33:01.4794548Z           "complete": false,
2026-06-04T14:33:01.4795012Z           "evidence": []
2026-06-04T14:33:01.4795436Z         },
2026-06-04T14:33:01.4795885Z         "unit": {
2026-06-04T14:33:01.4796359Z           "complete": false,
2026-06-04T14:33:01.4796843Z           "evidence": []
2026-06-04T14:33:01.4797286Z         }
2026-06-04T14:33:01.4797706Z       }
2026-06-04T14:33:01.4798132Z     },
2026-06-04T14:33:01.4798543Z     {
2026-06-04T14:33:01.4799013Z       "id": "REQ-INST-1",
2026-06-04T14:33:01.4800226Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-04T14:33:01.4800877Z       "requiredStages": [],
2026-06-04T14:33:01.4801446Z       "stages": {
2026-06-04T14:33:01.4802076Z         "doc": {
2026-06-04T14:33:01.4802584Z           "complete": false,
2026-06-04T14:33:01.4803071Z           "evidence": []
2026-06-04T14:33:01.4803517Z         },
2026-06-04T14:33:01.4803989Z         "impl": {
2026-06-04T14:33:01.4804508Z           "complete": false,
2026-06-04T14:33:01.4804984Z           "evidence": []
2026-06-04T14:33:01.4805409Z         },
2026-06-04T14:33:01.4805850Z         "int": {
2026-06-04T14:33:01.4806328Z           "complete": false,
2026-06-04T14:33:01.4806805Z           "evidence": []
2026-06-04T14:33:01.4807230Z         },
2026-06-04T14:33:01.4808002Z         "unit": {
2026-06-04T14:33:01.4808543Z           "complete": false,
2026-06-04T14:33:01.4809005Z           "evidence": []
2026-06-04T14:33:01.4809671Z         }
2026-06-04T14:33:01.4810258Z       }
2026-06-04T14:33:01.4810689Z     },
2026-06-04T14:33:01.4811106Z     {
2026-06-04T14:33:01.4811595Z       "id": "REQ-INST-10",
2026-06-04T14:33:01.4812815Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-04T14:33:01.4813298Z       "requiredStages": [
2026-06-04T14:33:01.4813739Z         "impl",
2026-06-04T14:33:01.4814171Z         "unit"
2026-06-04T14:33:01.4814601Z       ],
2026-06-04T14:33:01.4815045Z       "stages": {
2026-06-04T14:33:01.4815656Z         "doc": {
2026-06-04T14:33:01.4816170Z           "complete": false,
2026-06-04T14:33:01.4816647Z           "evidence": []
2026-06-04T14:33:01.4817097Z         },
2026-06-04T14:33:01.4817554Z         "impl": {
2026-06-04T14:33:01.4818049Z           "complete": true,
2026-06-04T14:33:01.4818728Z           "evidence": [
2026-06-04T14:33:01.4819265Z             {
2026-06-04T14:33:01.4820147Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4820639Z               "line": 413
2026-06-04T14:33:01.4821093Z             },
2026-06-04T14:33:01.4821528Z             {
2026-06-04T14:33:01.4822339Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4822817Z               "line": 468
2026-06-04T14:33:01.4823266Z             },
2026-06-04T14:33:01.4823730Z             {
2026-06-04T14:33:01.4824370Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4824856Z               "line": 13
2026-06-04T14:33:01.4825293Z             },
2026-06-04T14:33:01.4825747Z             {
2026-06-04T14:33:01.4826367Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4826859Z               "line": 67
2026-06-04T14:33:01.4827307Z             },
2026-06-04T14:33:01.4827759Z             {
2026-06-04T14:33:01.4828406Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T14:33:01.4828879Z               "line": 18
2026-06-04T14:33:01.4829378Z             }
2026-06-04T14:33:01.4829820Z           ]
2026-06-04T14:33:01.4830265Z         },
2026-06-04T14:33:01.4837392Z         "int": {
2026-06-04T14:33:01.4838037Z           "complete": false,
2026-06-04T14:33:01.4838532Z           "evidence": []
2026-06-04T14:33:01.4838971Z         },
2026-06-04T14:33:01.4839517Z         "unit": {
2026-06-04T14:33:01.4840012Z           "complete": true,
2026-06-04T14:33:01.4840490Z           "evidence": [
2026-06-04T14:33:01.4840937Z             {
2026-06-04T14:33:01.4841630Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4842120Z               "line": 612
2026-06-04T14:33:01.4842586Z             },
2026-06-04T14:33:01.4843088Z             {
2026-06-04T14:33:01.4843774Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4844260Z               "line": 709
2026-06-04T14:33:01.4844762Z             },
2026-06-04T14:33:01.4845227Z             {
2026-06-04T14:33:01.4845906Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4846385Z               "line": 717
2026-06-04T14:33:01.4846840Z             },
2026-06-04T14:33:01.4847283Z             {
2026-06-04T14:33:01.4847962Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4848444Z               "line": 730
2026-06-04T14:33:01.4848887Z             },
2026-06-04T14:33:01.4849401Z             {
2026-06-04T14:33:01.4850256Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4850725Z               "line": 743
2026-06-04T14:33:01.4851151Z             },
2026-06-04T14:33:01.4851591Z             {
2026-06-04T14:33:01.4852246Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4852713Z               "line": 759
2026-06-04T14:33:01.4853152Z             },
2026-06-04T14:33:01.4853578Z             {
2026-06-04T14:33:01.4854507Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4855029Z               "line": 988
2026-06-04T14:33:01.4855464Z             },
2026-06-04T14:33:01.4855902Z             {
2026-06-04T14:33:01.4856501Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4856964Z               "line": 121
2026-06-04T14:33:01.4857392Z             },
2026-06-04T14:33:01.4857829Z             {
2026-06-04T14:33:01.4858431Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4858887Z               "line": 142
2026-06-04T14:33:01.4859554Z             },
2026-06-04T14:33:01.4860155Z             {
2026-06-04T14:33:01.4860781Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4861238Z               "line": 150
2026-06-04T14:33:01.4861685Z             },
2026-06-04T14:33:01.4862122Z             {
2026-06-04T14:33:01.4862724Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T14:33:01.4863206Z               "line": 158
2026-06-04T14:33:01.4863819Z             }
2026-06-04T14:33:01.4864281Z           ]
2026-06-04T14:33:01.4864711Z         }
2026-06-04T14:33:01.4865150Z       }
2026-06-04T14:33:01.4865581Z     },
2026-06-04T14:33:01.4866001Z     {
2026-06-04T14:33:01.4866484Z       "id": "REQ-INST-11",
2026-06-04T14:33:01.4867706Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-04T14:33:01.4868207Z       "requiredStages": [
2026-06-04T14:33:01.4868647Z         "impl",
2026-06-04T14:33:01.4869078Z         "unit"
2026-06-04T14:33:01.4869854Z       ],
2026-06-04T14:33:01.4870299Z       "stages": {
2026-06-04T14:33:01.4870737Z         "doc": {
2026-06-04T14:33:01.4871216Z           "complete": false,
2026-06-04T14:33:01.4871683Z           "evidence": []
2026-06-04T14:33:01.4872109Z         },
2026-06-04T14:33:01.4872558Z         "impl": {
2026-06-04T14:33:01.4873036Z           "complete": true,
2026-06-04T14:33:01.4873502Z           "evidence": [
2026-06-04T14:33:01.4873935Z             {
2026-06-04T14:33:01.4874610Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4875073Z               "line": 315
2026-06-04T14:33:01.4875505Z             },
2026-06-04T14:33:01.4875940Z             {
2026-06-04T14:33:01.4876631Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.4877091Z               "line": 243
2026-06-04T14:33:01.4877525Z             },
2026-06-04T14:33:01.4877956Z             {
2026-06-04T14:33:01.4878580Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T14:33:01.4879030Z               "line": 59
2026-06-04T14:33:01.4879712Z             },
2026-06-04T14:33:01.4880304Z             {
2026-06-04T14:33:01.4880862Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.4881336Z               "line": 1204
2026-06-04T14:33:01.4881759Z             },
2026-06-04T14:33:01.4882187Z             {
2026-06-04T14:33:01.4882733Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.4883199Z               "line": 1309
2026-06-04T14:33:01.4883665Z             }
2026-06-04T14:33:01.4884102Z           ]
2026-06-04T14:33:01.4884537Z         },
2026-06-04T14:33:01.4884967Z         "int": {
2026-06-04T14:33:01.4885454Z           "complete": false,
2026-06-04T14:33:01.4885914Z           "evidence": []
2026-06-04T14:33:01.4886345Z         },
2026-06-04T14:33:01.4886797Z         "unit": {
2026-06-04T14:33:01.4887270Z           "complete": true,
2026-06-04T14:33:01.4887742Z           "evidence": [
2026-06-04T14:33:01.4888170Z             {
2026-06-04T14:33:01.4888825Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4889617Z               "line": 852
2026-06-04T14:33:01.4890063Z             },
2026-06-04T14:33:01.4890500Z             {
2026-06-04T14:33:01.4891141Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4891610Z               "line": 875
2026-06-04T14:33:01.4892034Z             },
2026-06-04T14:33:01.4892468Z             {
2026-06-04T14:33:01.4893323Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.4893804Z               "line": 462
2026-06-04T14:33:01.4894239Z             },
2026-06-04T14:33:01.4894667Z             {
2026-06-04T14:33:01.4895283Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T14:33:01.4895739Z               "line": 156
2026-06-04T14:33:01.4896175Z             },
2026-06-04T14:33:01.4896603Z             {
2026-06-04T14:33:01.4897228Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T14:33:01.4897693Z               "line": 177
2026-06-04T14:33:01.4898121Z             },
2026-06-04T14:33:01.4898558Z             {
2026-06-04T14:33:01.4899205Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T14:33:01.4899689Z               "line": 209
2026-06-04T14:33:01.4900129Z             },
2026-06-04T14:33:01.4900576Z             {
2026-06-04T14:33:01.4901471Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.4902108Z               "line": 1402
2026-06-04T14:33:01.4902827Z             }
2026-06-04T14:33:01.4903340Z           ]
2026-06-04T14:33:01.4903929Z         }
2026-06-04T14:33:01.4904364Z       }
2026-06-04T14:33:01.4904785Z     },
2026-06-04T14:33:01.4905210Z     {
2026-06-04T14:33:01.4905692Z       "id": "REQ-INST-12",
2026-06-04T14:33:01.4907372Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-04T14:33:01.4907851Z       "requiredStages": [
2026-06-04T14:33:01.4908293Z         "impl",
2026-06-04T14:33:01.4908733Z         "unit"
2026-06-04T14:33:01.4909205Z       ],
2026-06-04T14:33:01.4909953Z       "stages": {
2026-06-04T14:33:01.4910386Z         "doc": {
2026-06-04T14:33:01.4910873Z           "complete": false,
2026-06-04T14:33:01.4911336Z           "evidence": []
2026-06-04T14:33:01.4911778Z         },
2026-06-04T14:33:01.4912230Z         "impl": {
2026-06-04T14:33:01.4912708Z           "complete": true,
2026-06-04T14:33:01.4913170Z           "evidence": [
2026-06-04T14:33:01.4913625Z             {
2026-06-04T14:33:01.4914300Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4914765Z               "line": 367
2026-06-04T14:33:01.4915206Z             },
2026-06-04T14:33:01.4915641Z             {
2026-06-04T14:33:01.4916288Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4916760Z               "line": 424
2026-06-04T14:33:01.4917188Z             },
2026-06-04T14:33:01.4917618Z             {
2026-06-04T14:33:01.4918256Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4918723Z               "line": 482
2026-06-04T14:33:01.4919206Z             },
2026-06-04T14:33:01.4919841Z             {
2026-06-04T14:33:01.4920632Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.4921079Z               "line": 87
2026-06-04T14:33:01.4921528Z             },
2026-06-04T14:33:01.4927952Z             {
2026-06-04T14:33:01.4928746Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.4929388Z               "line": 216
2026-06-04T14:33:01.4929826Z             },
2026-06-04T14:33:01.4930270Z             {
2026-06-04T14:33:01.4930926Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4931402Z               "line": 132
2026-06-04T14:33:01.4931841Z             }
2026-06-04T14:33:01.4932280Z           ]
2026-06-04T14:33:01.4932718Z         },
2026-06-04T14:33:01.4933153Z         "int": {
2026-06-04T14:33:01.4933636Z           "complete": false,
2026-06-04T14:33:01.4934093Z           "evidence": []
2026-06-04T14:33:01.4934523Z         },
2026-06-04T14:33:01.4934960Z         "unit": {
2026-06-04T14:33:01.4935438Z           "complete": true,
2026-06-04T14:33:01.4935902Z           "evidence": [
2026-06-04T14:33:01.4936326Z             {
2026-06-04T14:33:01.4936989Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4937452Z               "line": 910
2026-06-04T14:33:01.4937908Z             },
2026-06-04T14:33:01.4938362Z             {
2026-06-04T14:33:01.4939402Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4939901Z               "line": 927
2026-06-04T14:33:01.4940332Z             },
2026-06-04T14:33:01.4940767Z             {
2026-06-04T14:33:01.4941417Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4941889Z               "line": 958
2026-06-04T14:33:01.4942316Z             },
2026-06-04T14:33:01.4942747Z             {
2026-06-04T14:33:01.4943369Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.4943830Z               "line": 350
2026-06-04T14:33:01.4944266Z             },
2026-06-04T14:33:01.4944693Z             {
2026-06-04T14:33:01.4945344Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4945807Z               "line": 169
2026-06-04T14:33:01.4946249Z             },
2026-06-04T14:33:01.4946682Z             {
2026-06-04T14:33:01.4947329Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4947968Z               "line": 181
2026-06-04T14:33:01.4948406Z             },
2026-06-04T14:33:01.4948845Z             {
2026-06-04T14:33:01.4949558Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4950031Z               "line": 198
2026-06-04T14:33:01.4950467Z             }
2026-06-04T14:33:01.4950893Z           ]
2026-06-04T14:33:01.4951329Z         }
2026-06-04T14:33:01.4951747Z       }
2026-06-04T14:33:01.4952180Z     },
2026-06-04T14:33:01.4952601Z     {
2026-06-04T14:33:01.4953082Z       "id": "REQ-INST-13",
2026-06-04T14:33:01.4954082Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-04T14:33:01.4954562Z       "requiredStages": [
2026-06-04T14:33:01.4955009Z         "impl",
2026-06-04T14:33:01.4955444Z         "unit"
2026-06-04T14:33:01.4955887Z       ],
2026-06-04T14:33:01.4956319Z       "stages": {
2026-06-04T14:33:01.4956766Z         "doc": {
2026-06-04T14:33:01.4957252Z           "complete": false,
2026-06-04T14:33:01.4957747Z           "evidence": []
2026-06-04T14:33:01.4958191Z         },
2026-06-04T14:33:01.4958631Z         "impl": {
2026-06-04T14:33:01.4959116Z           "complete": true,
2026-06-04T14:33:01.4959619Z           "evidence": [
2026-06-04T14:33:01.4960063Z             {
2026-06-04T14:33:01.4960678Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.4961138Z               "line": 94
2026-06-04T14:33:01.4961585Z             },
2026-06-04T14:33:01.4962012Z             {
2026-06-04T14:33:01.4962672Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4963151Z               "line": 155
2026-06-04T14:33:01.4963577Z             }
2026-06-04T14:33:01.4964005Z           ]
2026-06-04T14:33:01.4964429Z         },
2026-06-04T14:33:01.4964868Z         "int": {
2026-06-04T14:33:01.4965338Z           "complete": false,
2026-06-04T14:33:01.4965803Z           "evidence": []
2026-06-04T14:33:01.4966234Z         },
2026-06-04T14:33:01.4966679Z         "unit": {
2026-06-04T14:33:01.4967200Z           "complete": true,
2026-06-04T14:33:01.4967671Z           "evidence": [
2026-06-04T14:33:01.4968112Z             {
2026-06-04T14:33:01.4968762Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4969281Z               "line": 221
2026-06-04T14:33:01.4969725Z             },
2026-06-04T14:33:01.4970153Z             {
2026-06-04T14:33:01.4970813Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T14:33:01.4971275Z               "line": 233
2026-06-04T14:33:01.4971704Z             }
2026-06-04T14:33:01.4972127Z           ]
2026-06-04T14:33:01.4972564Z         }
2026-06-04T14:33:01.4973002Z       }
2026-06-04T14:33:01.4973425Z     },
2026-06-04T14:33:01.4973855Z     {
2026-06-04T14:33:01.4974327Z       "id": "REQ-INST-14",
2026-06-04T14:33:01.4976540Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-04T14:33:01.4977055Z       "requiredStages": [
2026-06-04T14:33:01.4977655Z         "doc",
2026-06-04T14:33:01.4978123Z         "impl",
2026-06-04T14:33:01.4978552Z         "unit"
2026-06-04T14:33:01.4978987Z       ],
2026-06-04T14:33:01.4979477Z       "stages": {
2026-06-04T14:33:01.4979921Z         "doc": {
2026-06-04T14:33:01.4980386Z           "complete": true,
2026-06-04T14:33:01.4980849Z           "evidence": [
2026-06-04T14:33:01.4981292Z             {
2026-06-04T14:33:01.4981811Z               "path": "docs/STORAGE.md",
2026-06-04T14:33:01.4982270Z               "line": 49
2026-06-04T14:33:01.4982703Z             }
2026-06-04T14:33:01.4983136Z           ]
2026-06-04T14:33:01.4983560Z         },
2026-06-04T14:33:01.4984002Z         "impl": {
2026-06-04T14:33:01.4984492Z           "complete": true,
2026-06-04T14:33:01.4984950Z           "evidence": [
2026-06-04T14:33:01.4985385Z             {
2026-06-04T14:33:01.4986076Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.4986748Z               "line": 242
2026-06-04T14:33:01.4987206Z             },
2026-06-04T14:33:01.4987669Z             {
2026-06-04T14:33:01.4988336Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.4988798Z               "line": 182
2026-06-04T14:33:01.4989271Z             },
2026-06-04T14:33:01.4989696Z             {
2026-06-04T14:33:01.4990299Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.4990756Z               "line": 202
2026-06-04T14:33:01.4991192Z             },
2026-06-04T14:33:01.4991623Z             {
2026-06-04T14:33:01.4992172Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.4992635Z               "line": 515
2026-06-04T14:33:01.4993060Z             }
2026-06-04T14:33:01.4993491Z           ]
2026-06-04T14:33:01.4993927Z         },
2026-06-04T14:33:01.4994366Z         "int": {
2026-06-04T14:33:01.4994851Z           "complete": false,
2026-06-04T14:33:01.4995310Z           "evidence": []
2026-06-04T14:33:01.4995740Z         },
2026-06-04T14:33:01.4996190Z         "unit": {
2026-06-04T14:33:01.4996685Z           "complete": true,
2026-06-04T14:33:01.4997140Z           "evidence": [
2026-06-04T14:33:01.4997581Z             {
2026-06-04T14:33:01.4998281Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.4998737Z               "line": 391
2026-06-04T14:33:01.4999219Z             },
2026-06-04T14:33:01.4999691Z             {
2026-06-04T14:33:01.5000363Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5000821Z               "line": 621
2026-06-04T14:33:01.5001258Z             },
2026-06-04T14:33:01.5001681Z             {
2026-06-04T14:33:01.5002321Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5002791Z               "line": 662
2026-06-04T14:33:01.5003226Z             },
2026-06-04T14:33:01.5003661Z             {
2026-06-04T14:33:01.5004254Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.5004720Z               "line": 411
2026-06-04T14:33:01.5005190Z             },
2026-06-04T14:33:01.5005617Z             {
2026-06-04T14:33:01.5006174Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5006632Z               "line": 1418
2026-06-04T14:33:01.5007069Z             }
2026-06-04T14:33:01.5007488Z           ]
2026-06-04T14:33:01.5007915Z         }
2026-06-04T14:33:01.5008347Z       }
2026-06-04T14:33:01.5014172Z     },
2026-06-04T14:33:01.5014701Z     {
2026-06-04T14:33:01.5015198Z       "id": "REQ-INST-15",
2026-06-04T14:33:01.5019670Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-04T14:33:01.5020174Z       "requiredStages": [
2026-06-04T14:33:01.5020606Z         "doc",
2026-06-04T14:33:01.5021053Z         "impl",
2026-06-04T14:33:01.5021495Z         "unit"
2026-06-04T14:33:01.5021980Z       ],
2026-06-04T14:33:01.5022677Z       "stages": {
2026-06-04T14:33:01.5023148Z         "doc": {
2026-06-04T14:33:01.5023631Z           "complete": true,
2026-06-04T14:33:01.5024084Z           "evidence": [
2026-06-04T14:33:01.5024523Z             {
2026-06-04T14:33:01.5025475Z               "path": "docs/adr/0010-immutable-home-subnet-fork-not-rehome.md",
2026-06-04T14:33:01.5025933Z               "line": 3
2026-06-04T14:33:01.5026364Z             }
2026-06-04T14:33:01.5026803Z           ]
2026-06-04T14:33:01.5027240Z         },
2026-06-04T14:33:01.5027673Z         "impl": {
2026-06-04T14:33:01.5028156Z           "complete": true,
2026-06-04T14:33:01.5028609Z           "evidence": [
2026-06-04T14:33:01.5029044Z             {
2026-06-04T14:33:01.5029772Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5030239Z               "line": 206
2026-06-04T14:33:01.5030670Z             },
2026-06-04T14:33:01.5031099Z             {
2026-06-04T14:33:01.5031869Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5032325Z               "line": 60
2026-06-04T14:33:01.5032758Z             },
2026-06-04T14:33:01.5033181Z             {
2026-06-04T14:33:01.5033865Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.5034329Z               "line": 317
2026-06-04T14:33:01.5034749Z             },
2026-06-04T14:33:01.5035179Z             {
2026-06-04T14:33:01.5035859Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.5036322Z               "line": 367
2026-06-04T14:33:01.5036744Z             },
2026-06-04T14:33:01.5037176Z             {
2026-06-04T14:33:01.5037769Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5038213Z               "line": 19
2026-06-04T14:33:01.5038645Z             },
2026-06-04T14:33:01.5039070Z             {
2026-06-04T14:33:01.5039726Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5040181Z               "line": 67
2026-06-04T14:33:01.5040639Z             },
2026-06-04T14:33:01.5041094Z             {
2026-06-04T14:33:01.5041682Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5042145Z               "line": 91
2026-06-04T14:33:01.5042570Z             },
2026-06-04T14:33:01.5043001Z             {
2026-06-04T14:33:01.5043592Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5044057Z               "line": 116
2026-06-04T14:33:01.5044495Z             },
2026-06-04T14:33:01.5044918Z             {
2026-06-04T14:33:01.5045520Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5045975Z               "line": 167
2026-06-04T14:33:01.5046413Z             },
2026-06-04T14:33:01.5046849Z             {
2026-06-04T14:33:01.5047452Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.5047925Z               "line": 141
2026-06-04T14:33:01.5048349Z             },
2026-06-04T14:33:01.5048788Z             {
2026-06-04T14:33:01.5049385Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5049880Z               "line": 407
2026-06-04T14:33:01.5050316Z             }
2026-06-04T14:33:01.5050741Z           ]
2026-06-04T14:33:01.5051170Z         },
2026-06-04T14:33:01.5051601Z         "int": {
2026-06-04T14:33:01.5052093Z           "complete": false,
2026-06-04T14:33:01.5052572Z           "evidence": []
2026-06-04T14:33:01.5053006Z         },
2026-06-04T14:33:01.5053458Z         "unit": {
2026-06-04T14:33:01.5053925Z           "complete": true,
2026-06-04T14:33:01.5054396Z           "evidence": [
2026-06-04T14:33:01.5054817Z             {
2026-06-04T14:33:01.5055497Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.5055954Z               "line": 506
2026-06-04T14:33:01.5056406Z             },
2026-06-04T14:33:01.5056841Z             {
2026-06-04T14:33:01.5057511Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.5057981Z               "line": 562
2026-06-04T14:33:01.5058427Z             },
2026-06-04T14:33:01.5059019Z             {
2026-06-04T14:33:01.5059673Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5060139Z               "line": 206
2026-06-04T14:33:01.5060570Z             },
2026-06-04T14:33:01.5060993Z             {
2026-06-04T14:33:01.5061591Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5062046Z               "line": 239
2026-06-04T14:33:01.5062484Z             },
2026-06-04T14:33:01.5062911Z             {
2026-06-04T14:33:01.5063515Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5063982Z               "line": 252
2026-06-04T14:33:01.5064408Z             },
2026-06-04T14:33:01.5064843Z             {
2026-06-04T14:33:01.5065438Z               "path": "crates/spt-store/src/home.rs",
2026-06-04T14:33:01.5065912Z               "line": 316
2026-06-04T14:33:01.5066350Z             },
2026-06-04T14:33:01.5066785Z             {
2026-06-04T14:33:01.5067389Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.5068026Z               "line": 477
2026-06-04T14:33:01.5068463Z             },
2026-06-04T14:33:01.5068880Z             {
2026-06-04T14:33:01.5069483Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5069944Z               "line": 1405
2026-06-04T14:33:01.5070374Z             },
2026-06-04T14:33:01.5070802Z             {
2026-06-04T14:33:01.5071341Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5071818Z               "line": 1557
2026-06-04T14:33:01.5072248Z             }
2026-06-04T14:33:01.5072679Z           ]
2026-06-04T14:33:01.5073093Z         }
2026-06-04T14:33:01.5073517Z       }
2026-06-04T14:33:01.5073937Z     },
2026-06-04T14:33:01.5074356Z     {
2026-06-04T14:33:01.5074841Z       "id": "REQ-INST-2",
2026-06-04T14:33:01.5078995Z       "title": "Per-node files, synced Psyche mind",
2026-06-04T14:33:01.5079563Z       "requiredStages": [
2026-06-04T14:33:01.5080008Z         "impl",
2026-06-04T14:33:01.5080444Z         "unit"
2026-06-04T14:33:01.5080901Z       ],
2026-06-04T14:33:01.5081365Z       "stages": {
2026-06-04T14:33:01.5081802Z         "doc": {
2026-06-04T14:33:01.5082280Z           "complete": false,
2026-06-04T14:33:01.5082745Z           "evidence": []
2026-06-04T14:33:01.5083166Z         },
2026-06-04T14:33:01.5083609Z         "impl": {
2026-06-04T14:33:01.5084090Z           "complete": true,
2026-06-04T14:33:01.5084543Z           "evidence": [
2026-06-04T14:33:01.5084973Z             {
2026-06-04T14:33:01.5085616Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5086075Z               "line": 86
2026-06-04T14:33:01.5086500Z             },
2026-06-04T14:33:01.5086946Z             {
2026-06-04T14:33:01.5087553Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.5088004Z               "line": 28
2026-06-04T14:33:01.5088440Z             },
2026-06-04T14:33:01.5088864Z             {
2026-06-04T14:33:01.5089542Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.5090048Z               "line": 74
2026-06-04T14:33:01.5090473Z             },
2026-06-04T14:33:01.5090908Z             {
2026-06-04T14:33:01.5091510Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.5091978Z               "line": 96
2026-06-04T14:33:01.5092408Z             },
2026-06-04T14:33:01.5092842Z             {
2026-06-04T14:33:01.5093456Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.5093910Z               "line": 81
2026-06-04T14:33:01.5094348Z             },
2026-06-04T14:33:01.5094771Z             {
2026-06-04T14:33:01.5095395Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T14:33:01.5101735Z               "line": 118
2026-06-04T14:33:01.5102268Z             }
2026-06-04T14:33:01.5102686Z           ]
2026-06-04T14:33:01.5103107Z         },
2026-06-04T14:33:01.5103544Z         "int": {
2026-06-04T14:33:01.5104023Z           "complete": false,
2026-06-04T14:33:01.5104483Z           "evidence": []
2026-06-04T14:33:01.5104947Z         },
2026-06-04T14:33:01.5105673Z         "unit": {
2026-06-04T14:33:01.5106174Z           "complete": true,
2026-06-04T14:33:01.5106642Z           "evidence": [
2026-06-04T14:33:01.5107074Z             {
2026-06-04T14:33:01.5107677Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T14:33:01.5108141Z               "line": 203
2026-06-04T14:33:01.5108567Z             },
2026-06-04T14:33:01.5109001Z             {
2026-06-04T14:33:01.5109675Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.5110143Z               "line": 232
2026-06-04T14:33:01.5110580Z             }
2026-06-04T14:33:01.5111009Z           ]
2026-06-04T14:33:01.5111443Z         }
2026-06-04T14:33:01.5111865Z       }
2026-06-04T14:33:01.5112291Z     },
2026-06-04T14:33:01.5112708Z     {
2026-06-04T14:33:01.5113176Z       "id": "REQ-INST-3",
2026-06-04T14:33:01.5113961Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-04T14:33:01.5114442Z       "requiredStages": [
2026-06-04T14:33:01.5115036Z         "doc",
2026-06-04T14:33:01.5115489Z         "impl",
2026-06-04T14:33:01.5115928Z         "unit"
2026-06-04T14:33:01.5116353Z       ],
2026-06-04T14:33:01.5116801Z       "stages": {
2026-06-04T14:33:01.5117250Z         "doc": {
2026-06-04T14:33:01.5117722Z           "complete": true,
2026-06-04T14:33:01.5118182Z           "evidence": [
2026-06-04T14:33:01.5118607Z             {
2026-06-04T14:33:01.5119220Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-04T14:33:01.5119673Z               "line": 3
2026-06-04T14:33:01.5120107Z             }
2026-06-04T14:33:01.5120542Z           ]
2026-06-04T14:33:01.5120966Z         },
2026-06-04T14:33:01.5121406Z         "impl": {
2026-06-04T14:33:01.5121876Z           "complete": true,
2026-06-04T14:33:01.5122339Z           "evidence": [
2026-06-04T14:33:01.5122760Z             {
2026-06-04T14:33:01.5123396Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.5123854Z               "line": 70
2026-06-04T14:33:01.5124300Z             },
2026-06-04T14:33:01.5124747Z             {
2026-06-04T14:33:01.5125388Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5125856Z               "line": 385
2026-06-04T14:33:01.5126281Z             },
2026-06-04T14:33:01.5126717Z             {
2026-06-04T14:33:01.5127370Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5127823Z               "line": 197
2026-06-04T14:33:01.5128254Z             },
2026-06-04T14:33:01.5128675Z             {
2026-06-04T14:33:01.5129364Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5129827Z               "line": 272
2026-06-04T14:33:01.5130264Z             },
2026-06-04T14:33:01.5130701Z             {
2026-06-04T14:33:01.5131341Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5131809Z               "line": 293
2026-06-04T14:33:01.5132232Z             },
2026-06-04T14:33:01.5132665Z             {
2026-06-04T14:33:01.5133344Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T14:33:01.5133820Z               "line": 234
2026-06-04T14:33:01.5134256Z             },
2026-06-04T14:33:01.5134679Z             {
2026-06-04T14:33:01.5135375Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5135832Z               "line": 147
2026-06-04T14:33:01.5136264Z             },
2026-06-04T14:33:01.5136690Z             {
2026-06-04T14:33:01.5137366Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5137826Z               "line": 228
2026-06-04T14:33:01.5138247Z             },
2026-06-04T14:33:01.5138675Z             {
2026-06-04T14:33:01.5139338Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5139804Z               "line": 44
2026-06-04T14:33:01.5140236Z             },
2026-06-04T14:33:01.5140658Z             {
2026-06-04T14:33:01.5141287Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5141739Z               "line": 113
2026-06-04T14:33:01.5142347Z             },
2026-06-04T14:33:01.5142789Z             {
2026-06-04T14:33:01.5143431Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5143892Z               "line": 151
2026-06-04T14:33:01.5144324Z             },
2026-06-04T14:33:01.5144758Z             {
2026-06-04T14:33:01.5145385Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5145852Z               "line": 167
2026-06-04T14:33:01.5146282Z             },
2026-06-04T14:33:01.5146720Z             {
2026-06-04T14:33:01.5147360Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5147808Z               "line": 177
2026-06-04T14:33:01.5148240Z             },
2026-06-04T14:33:01.5148667Z             {
2026-06-04T14:33:01.5149349Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5149801Z               "line": 209
2026-06-04T14:33:01.5150233Z             },
2026-06-04T14:33:01.5150672Z             {
2026-06-04T14:33:01.5151469Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5151937Z               "line": 282
2026-06-04T14:33:01.5152365Z             },
2026-06-04T14:33:01.5152799Z             {
2026-06-04T14:33:01.5153422Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5153889Z               "line": 306
2026-06-04T14:33:01.5154319Z             },
2026-06-04T14:33:01.5154747Z             {
2026-06-04T14:33:01.5155384Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5155840Z               "line": 346
2026-06-04T14:33:01.5156276Z             },
2026-06-04T14:33:01.5156696Z             {
2026-06-04T14:33:01.5157341Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5157804Z               "line": 361
2026-06-04T14:33:01.5158227Z             },
2026-06-04T14:33:01.5158658Z             {
2026-06-04T14:33:01.5159326Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-04T14:33:01.5159801Z               "line": 37
2026-06-04T14:33:01.5160250Z             },
2026-06-04T14:33:01.5160676Z             {
2026-06-04T14:33:01.5161322Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5161776Z               "line": 62
2026-06-04T14:33:01.5162216Z             },
2026-06-04T14:33:01.5162639Z             {
2026-06-04T14:33:01.5163237Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.5163701Z               "line": 184
2026-06-04T14:33:01.5164124Z             },
2026-06-04T14:33:01.5164550Z             {
2026-06-04T14:33:01.5165091Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5165548Z               "line": 612
2026-06-04T14:33:01.5165969Z             }
2026-06-04T14:33:01.5166393Z           ]
2026-06-04T14:33:01.5166825Z         },
2026-06-04T14:33:01.5167249Z         "int": {
2026-06-04T14:33:01.5167723Z           "complete": false,
2026-06-04T14:33:01.5168177Z           "evidence": []
2026-06-04T14:33:01.5168606Z         },
2026-06-04T14:33:01.5169073Z         "unit": {
2026-06-04T14:33:01.5169586Z           "complete": true,
2026-06-04T14:33:01.5170049Z           "evidence": [
2026-06-04T14:33:01.5170470Z             {
2026-06-04T14:33:01.5171099Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.5171552Z               "line": 305
2026-06-04T14:33:01.5171984Z             },
2026-06-04T14:33:01.5172409Z             {
2026-06-04T14:33:01.5173066Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5173530Z               "line": 610
2026-06-04T14:33:01.5173961Z             },
2026-06-04T14:33:01.5174395Z             {
2026-06-04T14:33:01.5175042Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5175497Z               "line": 661
2026-06-04T14:33:01.5175926Z             },
2026-06-04T14:33:01.5176364Z             {
2026-06-04T14:33:01.5177060Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5177513Z               "line": 441
2026-06-04T14:33:01.5178123Z             },
2026-06-04T14:33:01.5178565Z             {
2026-06-04T14:33:01.5179304Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5179763Z               "line": 488
2026-06-04T14:33:01.5180197Z             },
2026-06-04T14:33:01.5180625Z             {
2026-06-04T14:33:01.5181253Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5181716Z               "line": 372
2026-06-04T14:33:01.5182141Z             },
2026-06-04T14:33:01.5182576Z             {
2026-06-04T14:33:01.5183210Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5183685Z               "line": 401
2026-06-04T14:33:01.5184121Z             },
2026-06-04T14:33:01.5184541Z             {
2026-06-04T14:33:01.5185180Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5185630Z               "line": 434
2026-06-04T14:33:01.5186073Z             },
2026-06-04T14:33:01.5186496Z             {
2026-06-04T14:33:01.5187311Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5187790Z               "line": 542
2026-06-04T14:33:01.5188217Z             },
2026-06-04T14:33:01.5188656Z             {
2026-06-04T14:33:01.5189322Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5189796Z               "line": 621
2026-06-04T14:33:01.5190238Z             },
2026-06-04T14:33:01.5190672Z             {
2026-06-04T14:33:01.5191312Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5191767Z               "line": 635
2026-06-04T14:33:01.5192205Z             },
2026-06-04T14:33:01.5192631Z             {
2026-06-04T14:33:01.5193272Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5193744Z               "line": 690
2026-06-04T14:33:01.5194179Z             },
2026-06-04T14:33:01.5194614Z             {
2026-06-04T14:33:01.5195199Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.5195681Z               "line": 371
2026-06-04T14:33:01.5196115Z             },
2026-06-04T14:33:01.5196562Z             {
2026-06-04T14:33:01.5197118Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5197574Z               "line": 1432
2026-06-04T14:33:01.5198015Z             }
2026-06-04T14:33:01.5198445Z           ]
2026-06-04T14:33:01.5198883Z         }
2026-06-04T14:33:01.5199416Z       }
2026-06-04T14:33:01.5199880Z     },
2026-06-04T14:33:01.5200318Z     {
2026-06-04T14:33:01.5200785Z       "id": "REQ-INST-4",
2026-06-04T14:33:01.5201749Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-04T14:33:01.5202227Z       "requiredStages": [
2026-06-04T14:33:01.5202670Z         "impl",
2026-06-04T14:33:01.5203102Z         "unit"
2026-06-04T14:33:01.5203535Z       ],
2026-06-04T14:33:01.5203989Z       "stages": {
2026-06-04T14:33:01.5204413Z         "doc": {
2026-06-04T14:33:01.5204897Z           "complete": false,
2026-06-04T14:33:01.5205356Z           "evidence": []
2026-06-04T14:33:01.5205838Z         },
2026-06-04T14:33:01.5206283Z         "impl": {
2026-06-04T14:33:01.5206763Z           "complete": true,
2026-06-04T14:33:01.5207226Z           "evidence": [
2026-06-04T14:33:01.5207650Z             {
2026-06-04T14:33:01.5208312Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5208769Z               "line": 273
2026-06-04T14:33:01.5209273Z             },
2026-06-04T14:33:01.5209704Z             {
2026-06-04T14:33:01.5210350Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5210814Z               "line": 201
2026-06-04T14:33:01.5211239Z             },
2026-06-04T14:33:01.5211675Z             {
2026-06-04T14:33:01.5212303Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5212769Z               "line": 233
2026-06-04T14:33:01.5213195Z             },
2026-06-04T14:33:01.5213638Z             {
2026-06-04T14:33:01.5214287Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5214933Z               "line": 269
2026-06-04T14:33:01.5215391Z             }
2026-06-04T14:33:01.5215814Z           ]
2026-06-04T14:33:01.5216251Z         },
2026-06-04T14:33:01.5216689Z         "int": {
2026-06-04T14:33:01.5217169Z           "complete": false,
2026-06-04T14:33:01.5217633Z           "evidence": []
2026-06-04T14:33:01.5218060Z         },
2026-06-04T14:33:01.5218506Z         "unit": {
2026-06-04T14:33:01.5218973Z           "complete": true,
2026-06-04T14:33:01.5219508Z           "evidence": [
2026-06-04T14:33:01.5219930Z             {
2026-06-04T14:33:01.5220595Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.5221065Z               "line": 656
2026-06-04T14:33:01.5221490Z             },
2026-06-04T14:33:01.5221928Z             {
2026-06-04T14:33:01.5222555Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5223016Z               "line": 452
2026-06-04T14:33:01.5223455Z             },
2026-06-04T14:33:01.5224087Z             {
2026-06-04T14:33:01.5224751Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5225212Z               "line": 517
2026-06-04T14:33:01.5225649Z             },
2026-06-04T14:33:01.5226074Z             {
2026-06-04T14:33:01.5226710Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T14:33:01.5227164Z               "line": 584
2026-06-04T14:33:01.5227601Z             }
2026-06-04T14:33:01.5228040Z           ]
2026-06-04T14:33:01.5228460Z         }
2026-06-04T14:33:01.5228886Z       }
2026-06-04T14:33:01.5229347Z     },
2026-06-04T14:33:01.5229787Z     {
2026-06-04T14:33:01.5230256Z       "id": "REQ-INST-5",
2026-06-04T14:33:01.5231250Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-04T14:33:01.5231742Z       "requiredStages": [
2026-06-04T14:33:01.5232173Z         "impl",
2026-06-04T14:33:01.5232613Z         "unit"
2026-06-04T14:33:01.5233040Z       ],
2026-06-04T14:33:01.5233498Z       "stages": {
2026-06-04T14:33:01.5233950Z         "doc": {
2026-06-04T14:33:01.5234458Z           "complete": false,
2026-06-04T14:33:01.5234927Z           "evidence": []
2026-06-04T14:33:01.5235348Z         },
2026-06-04T14:33:01.5235795Z         "impl": {
2026-06-04T14:33:01.5236270Z           "complete": true,
2026-06-04T14:33:01.5241657Z           "evidence": [
2026-06-04T14:33:01.5242184Z             {
2026-06-04T14:33:01.5242873Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T14:33:01.5243336Z               "line": 39
2026-06-04T14:33:01.5243769Z             },
2026-06-04T14:33:01.5244195Z             {
2026-06-04T14:33:01.5244800Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5245264Z               "line": 68
2026-06-04T14:33:01.5245694Z             },
2026-06-04T14:33:01.5246133Z             {
2026-06-04T14:33:01.5246746Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5247196Z               "line": 93
2026-06-04T14:33:01.5247626Z             },
2026-06-04T14:33:01.5248100Z             {
2026-06-04T14:33:01.5248722Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5249282Z               "line": 160
2026-06-04T14:33:01.5249717Z             },
2026-06-04T14:33:01.5250151Z             {
2026-06-04T14:33:01.5250750Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5251218Z               "line": 271
2026-06-04T14:33:01.5251648Z             }
2026-06-04T14:33:01.5252080Z           ]
2026-06-04T14:33:01.5252520Z         },
2026-06-04T14:33:01.5252953Z         "int": {
2026-06-04T14:33:01.5253425Z           "complete": true,
2026-06-04T14:33:01.5253877Z           "evidence": [
2026-06-04T14:33:01.5254311Z             {
2026-06-04T14:33:01.5254981Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.5255445Z               "line": 142
2026-06-04T14:33:01.5255881Z             },
2026-06-04T14:33:01.5256301Z             {
2026-06-04T14:33:01.5256980Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T14:33:01.5257732Z               "line": 102
2026-06-04T14:33:01.5258186Z             },
2026-06-04T14:33:01.5258604Z             {
2026-06-04T14:33:01.5259321Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5259795Z               "line": 517
2026-06-04T14:33:01.5260225Z             },
2026-06-04T14:33:01.5260651Z             {
2026-06-04T14:33:01.5261292Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5261758Z               "line": 723
2026-06-04T14:33:01.5262184Z             }
2026-06-04T14:33:01.5262614Z           ]
2026-06-04T14:33:01.5263044Z         },
2026-06-04T14:33:01.5263474Z         "unit": {
2026-06-04T14:33:01.5263964Z           "complete": true,
2026-06-04T14:33:01.5264435Z           "evidence": [
2026-06-04T14:33:01.5264863Z             {
2026-06-04T14:33:01.5265468Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5265941Z               "line": 461
2026-06-04T14:33:01.5266596Z             },
2026-06-04T14:33:01.5267035Z             {
2026-06-04T14:33:01.5267652Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5268114Z               "line": 495
2026-06-04T14:33:01.5268547Z             },
2026-06-04T14:33:01.5268971Z             {
2026-06-04T14:33:01.5269860Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.5270405Z               "line": 199
2026-06-04T14:33:01.5270872Z             }
2026-06-04T14:33:01.5271329Z           ]
2026-06-04T14:33:01.5271772Z         }
2026-06-04T14:33:01.5272225Z       }
2026-06-04T14:33:01.5272666Z     },
2026-06-04T14:33:01.5273112Z     {
2026-06-04T14:33:01.5273758Z       "id": "REQ-INST-6",
2026-06-04T14:33:01.5274989Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-04T14:33:01.5275506Z       "requiredStages": [],
2026-06-04T14:33:01.5275954Z       "stages": {
2026-06-04T14:33:01.5276404Z         "doc": {
2026-06-04T14:33:01.5276885Z           "complete": false,
2026-06-04T14:33:01.5277405Z           "evidence": []
2026-06-04T14:33:01.5277846Z         },
2026-06-04T14:33:01.5278282Z         "impl": {
2026-06-04T14:33:01.5278771Z           "complete": false,
2026-06-04T14:33:01.5279287Z           "evidence": []
2026-06-04T14:33:01.5279737Z         },
2026-06-04T14:33:01.5280172Z         "int": {
2026-06-04T14:33:01.5280666Z           "complete": false,
2026-06-04T14:33:01.5281137Z           "evidence": []
2026-06-04T14:33:01.5281567Z         },
2026-06-04T14:33:01.5282016Z         "unit": {
2026-06-04T14:33:01.5282497Z           "complete": false,
2026-06-04T14:33:01.5282970Z           "evidence": []
2026-06-04T14:33:01.5283396Z         }
2026-06-04T14:33:01.5283838Z       }
2026-06-04T14:33:01.5284273Z     },
2026-06-04T14:33:01.5284695Z     {
2026-06-04T14:33:01.5285178Z       "id": "REQ-INST-7",
2026-06-04T14:33:01.5285917Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-04T14:33:01.5286409Z       "requiredStages": [
2026-06-04T14:33:01.5286856Z         "impl",
2026-06-04T14:33:01.5287310Z         "unit"
2026-06-04T14:33:01.5287742Z       ],
2026-06-04T14:33:01.5288179Z       "stages": {
2026-06-04T14:33:01.5288618Z         "doc": {
2026-06-04T14:33:01.5289090Z           "complete": false,
2026-06-04T14:33:01.5289612Z           "evidence": []
2026-06-04T14:33:01.5290036Z         },
2026-06-04T14:33:01.5290484Z         "impl": {
2026-06-04T14:33:01.5290962Z           "complete": true,
2026-06-04T14:33:01.5291424Z           "evidence": [
2026-06-04T14:33:01.5291866Z             {
2026-06-04T14:33:01.5292525Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5293003Z               "line": 361
2026-06-04T14:33:01.5293427Z             },
2026-06-04T14:33:01.5293862Z             {
2026-06-04T14:33:01.5294523Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T14:33:01.5294980Z               "line": 40
2026-06-04T14:33:01.5295417Z             },
2026-06-04T14:33:01.5295842Z             {
2026-06-04T14:33:01.5296759Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5297236Z               "line": 27
2026-06-04T14:33:01.5297675Z             },
2026-06-04T14:33:01.5298121Z             {
2026-06-04T14:33:01.5298821Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5299320Z               "line": 120
2026-06-04T14:33:01.5299750Z             },
2026-06-04T14:33:01.5300189Z             {
2026-06-04T14:33:01.5300881Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5301349Z               "line": 197
2026-06-04T14:33:01.5301786Z             },
2026-06-04T14:33:01.5302206Z             {
2026-06-04T14:33:01.5302839Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-04T14:33:01.5303286Z               "line": 56
2026-06-04T14:33:01.5303716Z             },
2026-06-04T14:33:01.5304141Z             {
2026-06-04T14:33:01.5304789Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5305417Z               "line": 41
2026-06-04T14:33:01.5305863Z             },
2026-06-04T14:33:01.5306302Z             {
2026-06-04T14:33:01.5306971Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5307441Z               "line": 27
2026-06-04T14:33:01.5307871Z             },
2026-06-04T14:33:01.5308306Z             {
2026-06-04T14:33:01.5308966Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5309458Z               "line": 59
2026-06-04T14:33:01.5309895Z             },
2026-06-04T14:33:01.5310312Z             {
2026-06-04T14:33:01.5310986Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5311441Z               "line": 68
2026-06-04T14:33:01.5311862Z             },
2026-06-04T14:33:01.5312293Z             {
2026-06-04T14:33:01.5312925Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T14:33:01.5313391Z               "line": 129
2026-06-04T14:33:01.5313814Z             }
2026-06-04T14:33:01.5314267Z           ]
2026-06-04T14:33:01.5314714Z         },
2026-06-04T14:33:01.5315150Z         "int": {
2026-06-04T14:33:01.5315632Z           "complete": true,
2026-06-04T14:33:01.5316083Z           "evidence": [
2026-06-04T14:33:01.5316514Z             {
2026-06-04T14:33:01.5317175Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T14:33:01.5317638Z               "line": 102
2026-06-04T14:33:01.5318074Z             },
2026-06-04T14:33:01.5318498Z             {
2026-06-04T14:33:01.5319194Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5319656Z               "line": 481
2026-06-04T14:33:01.5320088Z             },
2026-06-04T14:33:01.5320520Z             {
2026-06-04T14:33:01.5321180Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5321644Z               "line": 639
2026-06-04T14:33:01.5322068Z             }
2026-06-04T14:33:01.5326246Z           ]
2026-06-04T14:33:01.5326755Z         },
2026-06-04T14:33:01.5327252Z         "unit": {
2026-06-04T14:33:01.5327748Z           "complete": true,
2026-06-04T14:33:01.5328216Z           "evidence": [
2026-06-04T14:33:01.5328651Z             {
2026-06-04T14:33:01.5329451Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5329920Z               "line": 368
2026-06-04T14:33:01.5330351Z             },
2026-06-04T14:33:01.5330782Z             {
2026-06-04T14:33:01.5331472Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T14:33:01.5331934Z               "line": 534
2026-06-04T14:33:01.5332368Z             },
2026-06-04T14:33:01.5332791Z             {
2026-06-04T14:33:01.5333477Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T14:33:01.5333926Z               "line": 83
2026-06-04T14:33:01.5334359Z             },
2026-06-04T14:33:01.5334778Z             {
2026-06-04T14:33:01.5335426Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5335889Z               "line": 537
2026-06-04T14:33:01.5336332Z             },
2026-06-04T14:33:01.5337048Z             {
2026-06-04T14:33:01.5337716Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5338182Z               "line": 548
2026-06-04T14:33:01.5338610Z             },
2026-06-04T14:33:01.5339044Z             {
2026-06-04T14:33:01.5339743Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5340200Z               "line": 557
2026-06-04T14:33:01.5340630Z             },
2026-06-04T14:33:01.5341052Z             {
2026-06-04T14:33:01.5341710Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5342161Z               "line": 90
2026-06-04T14:33:01.5342598Z             },
2026-06-04T14:33:01.5343030Z             {
2026-06-04T14:33:01.5343679Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5344145Z               "line": 105
2026-06-04T14:33:01.5344579Z             },
2026-06-04T14:33:01.5345015Z             {
2026-06-04T14:33:01.5345877Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T14:33:01.5346334Z               "line": 131
2026-06-04T14:33:01.5346767Z             }
2026-06-04T14:33:01.5347187Z           ]
2026-06-04T14:33:01.5347614Z         }
2026-06-04T14:33:01.5348032Z       }
2026-06-04T14:33:01.5348455Z     },
2026-06-04T14:33:01.5348870Z     {
2026-06-04T14:33:01.5349381Z       "id": "REQ-INST-8",
2026-06-04T14:33:01.5350202Z       "title": "Remote-control mode distinct from local operation",
2026-06-04T14:33:01.5350702Z       "requiredStages": [
2026-06-04T14:33:01.5351164Z         "impl",
2026-06-04T14:33:01.5351595Z         "unit"
2026-06-04T14:33:01.5352029Z       ],
2026-06-04T14:33:01.5352469Z       "stages": {
2026-06-04T14:33:01.5352907Z         "doc": {
2026-06-04T14:33:01.5353400Z           "complete": false,
2026-06-04T14:33:01.5353852Z           "evidence": []
2026-06-04T14:33:01.5354285Z         },
2026-06-04T14:33:01.5354714Z         "impl": {
2026-06-04T14:33:01.5355191Z           "complete": true,
2026-06-04T14:33:01.5355680Z           "evidence": [
2026-06-04T14:33:01.5356121Z             {
2026-06-04T14:33:01.5356761Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.5357214Z               "line": 98
2026-06-04T14:33:01.5357644Z             },
2026-06-04T14:33:01.5358061Z             {
2026-06-04T14:33:01.5358686Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.5359190Z               "line": 202
2026-06-04T14:33:01.5359629Z             },
2026-06-04T14:33:01.5360064Z             {
2026-06-04T14:33:01.5360691Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.5361150Z               "line": 220
2026-06-04T14:33:01.5361575Z             },
2026-06-04T14:33:01.5362001Z             {
2026-06-04T14:33:01.5362629Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T14:33:01.5363074Z               "line": 35
2026-06-04T14:33:01.5363503Z             }
2026-06-04T14:33:01.5363921Z           ]
2026-06-04T14:33:01.5364363Z         },
2026-06-04T14:33:01.5364814Z         "int": {
2026-06-04T14:33:01.5365299Z           "complete": true,
2026-06-04T14:33:01.5365766Z           "evidence": [
2026-06-04T14:33:01.5366186Z             {
2026-06-04T14:33:01.5366857Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.5367311Z               "line": 375
2026-06-04T14:33:01.5367741Z             },
2026-06-04T14:33:01.5368161Z             {
2026-06-04T14:33:01.5368811Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5369315Z               "line": 688
2026-06-04T14:33:01.5369749Z             }
2026-06-04T14:33:01.5370186Z           ]
2026-06-04T14:33:01.5370602Z         },
2026-06-04T14:33:01.5371045Z         "unit": {
2026-06-04T14:33:01.5371514Z           "complete": true,
2026-06-04T14:33:01.5371975Z           "evidence": [
2026-06-04T14:33:01.5372408Z             {
2026-06-04T14:33:01.5373040Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T14:33:01.5373700Z               "line": 172
2026-06-04T14:33:01.5374141Z             },
2026-06-04T14:33:01.5374571Z             {
2026-06-04T14:33:01.5375205Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T14:33:01.5375673Z               "line": 226
2026-06-04T14:33:01.5376109Z             },
2026-06-04T14:33:01.5376532Z             {
2026-06-04T14:33:01.5377170Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T14:33:01.5377612Z               "line": 70
2026-06-04T14:33:01.5378046Z             },
2026-06-04T14:33:01.5378469Z             {
2026-06-04T14:33:01.5379100Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T14:33:01.5379607Z               "line": 101
2026-06-04T14:33:01.5380039Z             }
2026-06-04T14:33:01.5380467Z           ]
2026-06-04T14:33:01.5380889Z         }
2026-06-04T14:33:01.5381315Z       }
2026-06-04T14:33:01.5381733Z     },
2026-06-04T14:33:01.5382160Z     {
2026-06-04T14:33:01.5382629Z       "id": "REQ-INST-9",
2026-06-04T14:33:01.5383879Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-04T14:33:01.5384370Z       "requiredStages": [
2026-06-04T14:33:01.5384796Z         "impl",
2026-06-04T14:33:01.5385232Z         "unit"
2026-06-04T14:33:01.5385651Z       ],
2026-06-04T14:33:01.5386089Z       "stages": {
2026-06-04T14:33:01.5386520Z         "doc": {
2026-06-04T14:33:01.5386989Z           "complete": false,
2026-06-04T14:33:01.5387451Z           "evidence": []
2026-06-04T14:33:01.5387870Z         },
2026-06-04T14:33:01.5388314Z         "impl": {
2026-06-04T14:33:01.5388785Z           "complete": true,
2026-06-04T14:33:01.5389443Z           "evidence": [
2026-06-04T14:33:01.5390091Z             {
2026-06-04T14:33:01.5390839Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5391392Z               "line": 253
2026-06-04T14:33:01.5391870Z             }
2026-06-04T14:33:01.5392352Z           ]
2026-06-04T14:33:01.5392813Z         },
2026-06-04T14:33:01.5393344Z         "int": {
2026-06-04T14:33:01.5393911Z           "complete": false,
2026-06-04T14:33:01.5394430Z           "evidence": []
2026-06-04T14:33:01.5394897Z         },
2026-06-04T14:33:01.5395381Z         "unit": {
2026-06-04T14:33:01.5395898Z           "complete": true,
2026-06-04T14:33:01.5396377Z           "evidence": [
2026-06-04T14:33:01.5396830Z             {
2026-06-04T14:33:01.5397529Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5398014Z               "line": 776
2026-06-04T14:33:01.5398476Z             },
2026-06-04T14:33:01.5398918Z             {
2026-06-04T14:33:01.5399862Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5400506Z               "line": 785
2026-06-04T14:33:01.5400968Z             },
2026-06-04T14:33:01.5401417Z             {
2026-06-04T14:33:01.5402089Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5402593Z               "line": 799
2026-06-04T14:33:01.5403054Z             },
2026-06-04T14:33:01.5403561Z             {
2026-06-04T14:33:01.5404237Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5404736Z               "line": 809
2026-06-04T14:33:01.5405202Z             },
2026-06-04T14:33:01.5405657Z             {
2026-06-04T14:33:01.5406339Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T14:33:01.5406822Z               "line": 828
2026-06-04T14:33:01.5407272Z             }
2026-06-04T14:33:01.5407727Z           ]
2026-06-04T14:33:01.5413814Z         }
2026-06-04T14:33:01.5414278Z       }
2026-06-04T14:33:01.5414706Z     },
2026-06-04T14:33:01.5415200Z     {
2026-06-04T14:33:01.5415758Z       "id": "REQ-INSTALL-1",
2026-06-04T14:33:01.5416956Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-04T14:33:01.5417509Z       "requiredStages": [],
2026-06-04T14:33:01.5418033Z       "stages": {
2026-06-04T14:33:01.5418526Z         "doc": {
2026-06-04T14:33:01.5419042Z           "complete": false,
2026-06-04T14:33:01.5420468Z           "evidence": []
2026-06-04T14:33:01.5420966Z         },
2026-06-04T14:33:01.5421481Z         "impl": {
2026-06-04T14:33:01.5422034Z           "complete": false,
2026-06-04T14:33:01.5422533Z           "evidence": []
2026-06-04T14:33:01.5422985Z         },
2026-06-04T14:33:01.5423484Z         "int": {
2026-06-04T14:33:01.5424051Z           "complete": false,
2026-06-04T14:33:01.5424533Z           "evidence": []
2026-06-04T14:33:01.5424999Z         },
2026-06-04T14:33:01.5425461Z         "unit": {
2026-06-04T14:33:01.5425981Z           "complete": false,
2026-06-04T14:33:01.5426511Z           "evidence": []
2026-06-04T14:33:01.5426959Z         }
2026-06-04T14:33:01.5427456Z       }
2026-06-04T14:33:01.5427912Z     },
2026-06-04T14:33:01.5428357Z     {
2026-06-04T14:33:01.5428945Z       "id": "REQ-INSTALL-2",
2026-06-04T14:33:01.5430076Z       "title": "Marketplace-repackaging-friendly install",
2026-06-04T14:33:01.5430661Z       "requiredStages": [],
2026-06-04T14:33:01.5431432Z       "stages": {
2026-06-04T14:33:01.5431930Z         "doc": {
2026-06-04T14:33:01.5432439Z           "complete": false,
2026-06-04T14:33:01.5432970Z           "evidence": []
2026-06-04T14:33:01.5433420Z         },
2026-06-04T14:33:01.5433916Z         "impl": {
2026-06-04T14:33:01.5434443Z           "complete": false,
2026-06-04T14:33:01.5434939Z           "evidence": []
2026-06-04T14:33:01.5435401Z         },
2026-06-04T14:33:01.5435855Z         "int": {
2026-06-04T14:33:01.5436385Z           "complete": false,
2026-06-04T14:33:01.5436875Z           "evidence": []
2026-06-04T14:33:01.5437327Z         },
2026-06-04T14:33:01.5437801Z         "unit": {
2026-06-04T14:33:01.5438301Z           "complete": false,
2026-06-04T14:33:01.5438980Z           "evidence": []
2026-06-04T14:33:01.5439507Z         }
2026-06-04T14:33:01.5440128Z       }
2026-06-04T14:33:01.5440565Z     },
2026-06-04T14:33:01.5441017Z     {
2026-06-04T14:33:01.5441540Z       "id": "REQ-INSTALL-3",
2026-06-04T14:33:01.5442364Z       "title": "Idempotent + interactive-optional first run",
2026-06-04T14:33:01.5442919Z       "requiredStages": [],
2026-06-04T14:33:01.5443378Z       "stages": {
2026-06-04T14:33:01.5443828Z         "doc": {
2026-06-04T14:33:01.5444331Z           "complete": false,
2026-06-04T14:33:01.5444842Z           "evidence": []
2026-06-04T14:33:01.5445293Z         },
2026-06-04T14:33:01.5445746Z         "impl": {
2026-06-04T14:33:01.5446261Z           "complete": false,
2026-06-04T14:33:01.5446754Z           "evidence": []
2026-06-04T14:33:01.5447206Z         },
2026-06-04T14:33:01.5447654Z         "int": {
2026-06-04T14:33:01.5448164Z           "complete": false,
2026-06-04T14:33:01.5448678Z           "evidence": []
2026-06-04T14:33:01.5449126Z         },
2026-06-04T14:33:01.5449881Z         "unit": {
2026-06-04T14:33:01.5450560Z           "complete": false,
2026-06-04T14:33:01.5451076Z           "evidence": []
2026-06-04T14:33:01.5451529Z         }
2026-06-04T14:33:01.5451984Z       }
2026-06-04T14:33:01.5452434Z     },
2026-06-04T14:33:01.5452890Z     {
2026-06-04T14:33:01.5453429Z       "id": "REQ-INSTALL-4",
2026-06-04T14:33:01.5457348Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-04T14:33:01.5457920Z       "requiredStages": [],
2026-06-04T14:33:01.5458389Z       "stages": {
2026-06-04T14:33:01.5458852Z         "doc": {
2026-06-04T14:33:01.5459582Z           "complete": false,
2026-06-04T14:33:01.5460367Z           "evidence": []
2026-06-04T14:33:01.5460815Z         },
2026-06-04T14:33:01.5461261Z         "impl": {
2026-06-04T14:33:01.5461765Z           "complete": false,
2026-06-04T14:33:01.5462243Z           "evidence": []
2026-06-04T14:33:01.5462687Z         },
2026-06-04T14:33:01.5463140Z         "int": {
2026-06-04T14:33:01.5463632Z           "complete": false,
2026-06-04T14:33:01.5464117Z           "evidence": []
2026-06-04T14:33:01.5464579Z         },
2026-06-04T14:33:01.5465359Z         "unit": {
2026-06-04T14:33:01.5465884Z           "complete": false,
2026-06-04T14:33:01.5466371Z           "evidence": []
2026-06-04T14:33:01.5466822Z         }
2026-06-04T14:33:01.5467264Z       }
2026-06-04T14:33:01.5467713Z     },
2026-06-04T14:33:01.5468143Z     {
2026-06-04T14:33:01.5468657Z       "id": "REQ-MANIFEST-1",
2026-06-04T14:33:01.5470139Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-04T14:33:01.5470672Z       "requiredStages": [
2026-06-04T14:33:01.5471142Z         "doc",
2026-06-04T14:33:01.5471616Z         "impl",
2026-06-04T14:33:01.5472080Z         "unit"
2026-06-04T14:33:01.5472522Z       ],
2026-06-04T14:33:01.5473001Z       "stages": {
2026-06-04T14:33:01.5473448Z         "doc": {
2026-06-04T14:33:01.5473955Z           "complete": true,
2026-06-04T14:33:01.5474447Z           "evidence": [
2026-06-04T14:33:01.5474895Z             {
2026-06-04T14:33:01.5475443Z               "path": "docs/MANIFEST.md",
2026-06-04T14:33:01.5476216Z               "line": 19
2026-06-04T14:33:01.5476677Z             }
2026-06-04T14:33:01.5477122Z           ]
2026-06-04T14:33:01.5477581Z         },
2026-06-04T14:33:01.5478074Z         "impl": {
2026-06-04T14:33:01.5478577Z           "complete": true,
2026-06-04T14:33:01.5479075Z           "evidence": [
2026-06-04T14:33:01.5479917Z             {
2026-06-04T14:33:01.5480633Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5481103Z               "line": 18
2026-06-04T14:33:01.5481562Z             }
2026-06-04T14:33:01.5482011Z           ]
2026-06-04T14:33:01.5482456Z         },
2026-06-04T14:33:01.5482907Z         "int": {
2026-06-04T14:33:01.5483392Z           "complete": false,
2026-06-04T14:33:01.5483873Z           "evidence": []
2026-06-04T14:33:01.5484315Z         },
2026-06-04T14:33:01.5484785Z         "unit": {
2026-06-04T14:33:01.5485300Z           "complete": true,
2026-06-04T14:33:01.5485794Z           "evidence": [
2026-06-04T14:33:01.5486312Z             {
2026-06-04T14:33:01.5487019Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5487533Z               "line": 706
2026-06-04T14:33:01.5487976Z             },
2026-06-04T14:33:01.5488415Z             {
2026-06-04T14:33:01.5489109Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5489855Z               "line": 802
2026-06-04T14:33:01.5490621Z             },
2026-06-04T14:33:01.5491066Z             {
2026-06-04T14:33:01.5491741Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5492207Z               "line": 814
2026-06-04T14:33:01.5492649Z             },
2026-06-04T14:33:01.5493088Z             {
2026-06-04T14:33:01.5493750Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5494233Z               "line": 822
2026-06-04T14:33:01.5494668Z             },
2026-06-04T14:33:01.5495110Z             {
2026-06-04T14:33:01.5495787Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5496316Z               "line": 839
2026-06-04T14:33:01.5496772Z             },
2026-06-04T14:33:01.5497209Z             {
2026-06-04T14:33:01.5497873Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5498340Z               "line": 853
2026-06-04T14:33:01.5498779Z             },
2026-06-04T14:33:01.5499270Z             {
2026-06-04T14:33:01.5499974Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5500650Z               "line": 868
2026-06-04T14:33:01.5501153Z             },
2026-06-04T14:33:01.5501699Z             {
2026-06-04T14:33:01.5502511Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5503106Z               "line": 883
2026-06-04T14:33:01.5503645Z             },
2026-06-04T14:33:01.5504173Z             {
2026-06-04T14:33:01.5511185Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5511867Z               "line": 898
2026-06-04T14:33:01.5512391Z             },
2026-06-04T14:33:01.5513315Z             {
2026-06-04T14:33:01.5514084Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.5514619Z               "line": 909
2026-06-04T14:33:01.5515128Z             }
2026-06-04T14:33:01.5515620Z           ]
2026-06-04T14:33:01.5516113Z         }
2026-06-04T14:33:01.5516580Z       }
2026-06-04T14:33:01.5517070Z     },
2026-06-04T14:33:01.5517556Z     {
2026-06-04T14:33:01.5518103Z       "id": "REQ-MIGRATE-1",
2026-06-04T14:33:01.5519102Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-04T14:33:01.5519779Z       "requiredStages": [],
2026-06-04T14:33:01.5520297Z       "stages": {
2026-06-04T14:33:01.5520920Z         "doc": {
2026-06-04T14:33:01.5521421Z           "complete": false,
2026-06-04T14:33:01.5521908Z           "evidence": []
2026-06-04T14:33:01.5522359Z         },
2026-06-04T14:33:01.5522969Z         "impl": {
2026-06-04T14:33:01.5523470Z           "complete": false,
2026-06-04T14:33:01.5524231Z           "evidence": []
2026-06-04T14:33:01.5524678Z         },
2026-06-04T14:33:01.5525112Z         "int": {
2026-06-04T14:33:01.5525603Z           "complete": false,
2026-06-04T14:33:01.5526062Z           "evidence": []
2026-06-04T14:33:01.5526498Z         },
2026-06-04T14:33:01.5526948Z         "unit": {
2026-06-04T14:33:01.5527433Z           "complete": false,
2026-06-04T14:33:01.5527902Z           "evidence": []
2026-06-04T14:33:01.5528324Z         }
2026-06-04T14:33:01.5528765Z       }
2026-06-04T14:33:01.5529251Z     },
2026-06-04T14:33:01.5530022Z     {
2026-06-04T14:33:01.5530529Z       "id": "REQ-MSG-1",
2026-06-04T14:33:01.5533167Z       "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-04T14:33:01.5533668Z       "requiredStages": [
2026-06-04T14:33:01.5534101Z         "impl",
2026-06-04T14:33:01.5534539Z         "unit",
2026-06-04T14:33:01.5534984Z         "int"
2026-06-04T14:33:01.5535429Z       ],
2026-06-04T14:33:01.5535886Z       "stages": {
2026-06-04T14:33:01.5536324Z         "doc": {
2026-06-04T14:33:01.5536813Z           "complete": false,
2026-06-04T14:33:01.5537274Z           "evidence": []
2026-06-04T14:33:01.5537705Z         },
2026-06-04T14:33:01.5538141Z         "impl": {
2026-06-04T14:33:01.5538620Z           "complete": true,
2026-06-04T14:33:01.5539083Z           "evidence": [
2026-06-04T14:33:01.5539850Z             {
2026-06-04T14:33:01.5540485Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5540935Z               "line": 28
2026-06-04T14:33:01.5541372Z             },
2026-06-04T14:33:01.5541798Z             {
2026-06-04T14:33:01.5542433Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5542910Z               "line": 94
2026-06-04T14:33:01.5543343Z             },
2026-06-04T14:33:01.5543778Z             {
2026-06-04T14:33:01.5544379Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5544873Z               "line": 127
2026-06-04T14:33:01.5545308Z             },
2026-06-04T14:33:01.5545745Z             {
2026-06-04T14:33:01.5546358Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5546812Z               "line": 149
2026-06-04T14:33:01.5547256Z             },
2026-06-04T14:33:01.5547688Z             {
2026-06-04T14:33:01.5548307Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5548793Z               "line": 174
2026-06-04T14:33:01.5549437Z             },
2026-06-04T14:33:01.5549903Z             {
2026-06-04T14:33:01.5550535Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5551012Z               "line": 18
2026-06-04T14:33:01.5551457Z             },
2026-06-04T14:33:01.5551908Z             {
2026-06-04T14:33:01.5552494Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.5552994Z               "line": 13
2026-06-04T14:33:01.5553473Z             },
2026-06-04T14:33:01.5553949Z             {
2026-06-04T14:33:01.5554816Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.5555322Z               "line": 61
2026-06-04T14:33:01.5555785Z             },
2026-06-04T14:33:01.5556224Z             {
2026-06-04T14:33:01.5556836Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T14:33:01.5557335Z               "line": 10
2026-06-04T14:33:01.5557778Z             }
2026-06-04T14:33:01.5558227Z           ]
2026-06-04T14:33:01.5558665Z         },
2026-06-04T14:33:01.5559130Z         "int": {
2026-06-04T14:33:01.5559701Z           "complete": true,
2026-06-04T14:33:01.5560225Z           "evidence": [
2026-06-04T14:33:01.5560693Z             {
2026-06-04T14:33:01.5561607Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T14:33:01.5562075Z               "line": 9
2026-06-04T14:33:01.5562498Z             },
2026-06-04T14:33:01.5562971Z             {
2026-06-04T14:33:01.5563721Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T14:33:01.5564406Z               "line": 66
2026-06-04T14:33:01.5564855Z             },
2026-06-04T14:33:01.5565279Z             {
2026-06-04T14:33:01.5566004Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T14:33:01.5566462Z               "line": 116
2026-06-04T14:33:01.5566900Z             }
2026-06-04T14:33:01.5567336Z           ]
2026-06-04T14:33:01.5567781Z         },
2026-06-04T14:33:01.5568275Z         "unit": {
2026-06-04T14:33:01.5568794Z           "complete": true,
2026-06-04T14:33:01.5569495Z           "evidence": [
2026-06-04T14:33:01.5570293Z             {
2026-06-04T14:33:01.5570967Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5571496Z               "line": 203
2026-06-04T14:33:01.5571966Z             },
2026-06-04T14:33:01.5572449Z             {
2026-06-04T14:33:01.5573109Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5573614Z               "line": 232
2026-06-04T14:33:01.5574088Z             },
2026-06-04T14:33:01.5574566Z             {
2026-06-04T14:33:01.5575226Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5575702Z               "line": 277
2026-06-04T14:33:01.5576166Z             },
2026-06-04T14:33:01.5576615Z             {
2026-06-04T14:33:01.5577266Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5577754Z               "line": 300
2026-06-04T14:33:01.5578221Z             },
2026-06-04T14:33:01.5578701Z             {
2026-06-04T14:33:01.5579617Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T14:33:01.5580463Z               "line": 322
2026-06-04T14:33:01.5580979Z             },
2026-06-04T14:33:01.5581559Z             {
2026-06-04T14:33:01.5582353Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5582909Z               "line": 203
2026-06-04T14:33:01.5583392Z             },
2026-06-04T14:33:01.5583859Z             {
2026-06-04T14:33:01.5584530Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5585084Z               "line": 233
2026-06-04T14:33:01.5585574Z             },
2026-06-04T14:33:01.5586036Z             {
2026-06-04T14:33:01.5586713Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5587206Z               "line": 247
2026-06-04T14:33:01.5587666Z             },
2026-06-04T14:33:01.5588129Z             {
2026-06-04T14:33:01.5588789Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5589376Z               "line": 259
2026-06-04T14:33:01.5589991Z             },
2026-06-04T14:33:01.5590460Z             {
2026-06-04T14:33:01.5591085Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.5591585Z               "line": 158
2026-06-04T14:33:01.5592073Z             },
2026-06-04T14:33:01.5592536Z             {
2026-06-04T14:33:01.5593179Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T14:33:01.5593702Z               "line": 235
2026-06-04T14:33:01.5594215Z             },
2026-06-04T14:33:01.5595040Z             {
2026-06-04T14:33:01.5595706Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T14:33:01.5596212Z               "line": 68
2026-06-04T14:33:01.5596675Z             },
2026-06-04T14:33:01.5597142Z             {
2026-06-04T14:33:01.5597748Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T14:33:01.5598218Z               "line": 74
2026-06-04T14:33:01.5604774Z             },
2026-06-04T14:33:01.5605346Z             {
2026-06-04T14:33:01.5605988Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T14:33:01.5606458Z               "line": 80
2026-06-04T14:33:01.5606914Z             },
2026-06-04T14:33:01.5607366Z             {
2026-06-04T14:33:01.5607963Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T14:33:01.5608449Z               "line": 99
2026-06-04T14:33:01.5608887Z             }
2026-06-04T14:33:01.5609592Z           ]
2026-06-04T14:33:01.5610183Z         }
2026-06-04T14:33:01.5610652Z       }
2026-06-04T14:33:01.5611493Z     },
2026-06-04T14:33:01.5611965Z     {
2026-06-04T14:33:01.5612481Z       "id": "REQ-MSG-2",
2026-06-04T14:33:01.5614041Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-04T14:33:01.5614577Z       "requiredStages": [
2026-06-04T14:33:01.5615034Z         "impl",
2026-06-04T14:33:01.5615492Z         "unit"
2026-06-04T14:33:01.5615938Z       ],
2026-06-04T14:33:01.5616402Z       "stages": {
2026-06-04T14:33:01.5616870Z         "doc": {
2026-06-04T14:33:01.5617371Z           "complete": false,
2026-06-04T14:33:01.5617862Z           "evidence": []
2026-06-04T14:33:01.5618311Z         },
2026-06-04T14:33:01.5618781Z         "impl": {
2026-06-04T14:33:01.5619506Z           "complete": true,
2026-06-04T14:33:01.5620152Z           "evidence": [
2026-06-04T14:33:01.5620620Z             {
2026-06-04T14:33:01.5621193Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5621674Z               "line": 11
2026-06-04T14:33:01.5622142Z             },
2026-06-04T14:33:01.5622618Z             {
2026-06-04T14:33:01.5623212Z               "path": "crates/spt/src/main.rs",
2026-06-04T14:33:01.5623686Z               "line": 8
2026-06-04T14:33:01.5624142Z             }
2026-06-04T14:33:01.5624584Z           ]
2026-06-04T14:33:01.5625029Z         },
2026-06-04T14:33:01.5625474Z         "int": {
2026-06-04T14:33:01.5625971Z           "complete": false,
2026-06-04T14:33:01.5626465Z           "evidence": []
2026-06-04T14:33:01.5626922Z         },
2026-06-04T14:33:01.5627398Z         "unit": {
2026-06-04T14:33:01.5627935Z           "complete": true,
2026-06-04T14:33:01.5628445Z           "evidence": [
2026-06-04T14:33:01.5628893Z             {
2026-06-04T14:33:01.5629760Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5630471Z               "line": 1389
2026-06-04T14:33:01.5630936Z             },
2026-06-04T14:33:01.5631395Z             {
2026-06-04T14:33:01.5631972Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5632520Z               "line": 1529
2026-06-04T14:33:01.5632982Z             },
2026-06-04T14:33:01.5633446Z             {
2026-06-04T14:33:01.5634036Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5634512Z               "line": 1538
2026-06-04T14:33:01.5634962Z             },
2026-06-04T14:33:01.5635400Z             {
2026-06-04T14:33:01.5635978Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5636451Z               "line": 1550
2026-06-04T14:33:01.5636901Z             }
2026-06-04T14:33:01.5637349Z           ]
2026-06-04T14:33:01.5637788Z         }
2026-06-04T14:33:01.5638233Z       }
2026-06-04T14:33:01.5638659Z     },
2026-06-04T14:33:01.5639120Z     {
2026-06-04T14:33:01.5640032Z       "id": "REQ-MSG-3",
2026-06-04T14:33:01.5642390Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-04T14:33:01.5642949Z       "requiredStages": [
2026-06-04T14:33:01.5643703Z         "impl",
2026-06-04T14:33:01.5644216Z         "unit",
2026-06-04T14:33:01.5644672Z         "int"
2026-06-04T14:33:01.5645116Z       ],
2026-06-04T14:33:01.5645570Z       "stages": {
2026-06-04T14:33:01.5646018Z         "doc": {
2026-06-04T14:33:01.5646510Z           "complete": false,
2026-06-04T14:33:01.5646995Z           "evidence": []
2026-06-04T14:33:01.5647452Z         },
2026-06-04T14:33:01.5647906Z         "impl": {
2026-06-04T14:33:01.5648396Z           "complete": true,
2026-06-04T14:33:01.5648856Z           "evidence": [
2026-06-04T14:33:01.5649503Z             {
2026-06-04T14:33:01.5650300Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T14:33:01.5650760Z               "line": 19
2026-06-04T14:33:01.5651207Z             },
2026-06-04T14:33:01.5651647Z             {
2026-06-04T14:33:01.5652254Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5652724Z               "line": 21
2026-06-04T14:33:01.5653171Z             },
2026-06-04T14:33:01.5653855Z             {
2026-06-04T14:33:01.5654513Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5655026Z               "line": 48
2026-06-04T14:33:01.5655471Z             },
2026-06-04T14:33:01.5655934Z             {
2026-06-04T14:33:01.5656574Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5657085Z               "line": 131
2026-06-04T14:33:01.5657563Z             }
2026-06-04T14:33:01.5658019Z           ]
2026-06-04T14:33:01.5658475Z         },
2026-06-04T14:33:01.5659043Z         "int": {
2026-06-04T14:33:01.5659945Z           "complete": true,
2026-06-04T14:33:01.5660457Z           "evidence": [
2026-06-04T14:33:01.5660921Z             {
2026-06-04T14:33:01.5661722Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T14:33:01.5662223Z               "line": 10
2026-06-04T14:33:01.5662680Z             },
2026-06-04T14:33:01.5663118Z             {
2026-06-04T14:33:01.5663907Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T14:33:01.5664451Z               "line": 66
2026-06-04T14:33:01.5664928Z             }
2026-06-04T14:33:01.5665398Z           ]
2026-06-04T14:33:01.5665862Z         },
2026-06-04T14:33:01.5666325Z         "unit": {
2026-06-04T14:33:01.5666826Z           "complete": true,
2026-06-04T14:33:01.5667321Z           "evidence": [
2026-06-04T14:33:01.5667774Z             {
2026-06-04T14:33:01.5668432Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5668944Z               "line": 185
2026-06-04T14:33:01.5669644Z             },
2026-06-04T14:33:01.5670315Z             {
2026-06-04T14:33:01.5670960Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5671475Z               "line": 204
2026-06-04T14:33:01.5671940Z             },
2026-06-04T14:33:01.5672412Z             {
2026-06-04T14:33:01.5673027Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T14:33:01.5673502Z               "line": 223
2026-06-04T14:33:01.5673989Z             }
2026-06-04T14:33:01.5674450Z           ]
2026-06-04T14:33:01.5674910Z         }
2026-06-04T14:33:01.5675358Z       }
2026-06-04T14:33:01.5675813Z     },
2026-06-04T14:33:01.5676271Z     {
2026-06-04T14:33:01.5676771Z       "id": "REQ-NET-1",
2026-06-04T14:33:01.5677850Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-04T14:33:01.5678387Z       "requiredStages": [
2026-06-04T14:33:01.5678876Z         "impl",
2026-06-04T14:33:01.5679401Z         "unit"
2026-06-04T14:33:01.5679864Z       ],
2026-06-04T14:33:01.5680337Z       "stages": {
2026-06-04T14:33:01.5680797Z         "doc": {
2026-06-04T14:33:01.5681304Z           "complete": false,
2026-06-04T14:33:01.5681776Z           "evidence": []
2026-06-04T14:33:01.5682213Z         },
2026-06-04T14:33:01.5682663Z         "impl": {
2026-06-04T14:33:01.5683163Z           "complete": true,
2026-06-04T14:33:01.5683654Z           "evidence": [
2026-06-04T14:33:01.5684100Z             {
2026-06-04T14:33:01.5685131Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5685686Z               "line": 52
2026-06-04T14:33:01.5686174Z             },
2026-06-04T14:33:01.5686622Z             {
2026-06-04T14:33:01.5687316Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5687803Z               "line": 448
2026-06-04T14:33:01.5688251Z             },
2026-06-04T14:33:01.5688705Z             {
2026-06-04T14:33:01.5689400Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T14:33:01.5689909Z               "line": 69
2026-06-04T14:33:01.5690361Z             },
2026-06-04T14:33:01.5690825Z             {
2026-06-04T14:33:01.5691523Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5692016Z               "line": 65
2026-06-04T14:33:01.5692507Z             },
2026-06-04T14:33:01.5698811Z             {
2026-06-04T14:33:01.5699761Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5700251Z               "line": 127
2026-06-04T14:33:01.5701176Z             },
2026-06-04T14:33:01.5701632Z             {
2026-06-04T14:33:01.5702298Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5702787Z               "line": 143
2026-06-04T14:33:01.5703223Z             },
2026-06-04T14:33:01.5703670Z             {
2026-06-04T14:33:01.5704354Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5704821Z               "line": 158
2026-06-04T14:33:01.5705274Z             },
2026-06-04T14:33:01.5705724Z             {
2026-06-04T14:33:01.5706402Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5706870Z               "line": 220
2026-06-04T14:33:01.5707315Z             },
2026-06-04T14:33:01.5707782Z             {
2026-06-04T14:33:01.5708447Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5708925Z               "line": 255
2026-06-04T14:33:01.5709617Z             },
2026-06-04T14:33:01.5710264Z             {
2026-06-04T14:33:01.5710966Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5711465Z               "line": 261
2026-06-04T14:33:01.5711932Z             },
2026-06-04T14:33:01.5712373Z             {
2026-06-04T14:33:01.5713038Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5713520Z               "line": 267
2026-06-04T14:33:01.5713969Z             },
2026-06-04T14:33:01.5714402Z             {
2026-06-04T14:33:01.5715079Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5715588Z               "line": 283
2026-06-04T14:33:01.5716052Z             },
2026-06-04T14:33:01.5716515Z             {
2026-06-04T14:33:01.5717231Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5717763Z               "line": 303
2026-06-04T14:33:01.5718237Z             },
2026-06-04T14:33:01.5718716Z             {
2026-06-04T14:33:01.5719618Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.5720286Z               "line": 35
2026-06-04T14:33:01.5720782Z             },
2026-06-04T14:33:01.5721240Z             {
2026-06-04T14:33:01.5721904Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.5722378Z               "line": 82
2026-06-04T14:33:01.5722848Z             },
2026-06-04T14:33:01.5723324Z             {
2026-06-04T14:33:01.5723950Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.5724430Z               "line": 129
2026-06-04T14:33:01.5724878Z             },
2026-06-04T14:33:01.5725323Z             {
2026-06-04T14:33:01.5725899Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.5726407Z               "line": 880
2026-06-04T14:33:01.5726862Z             },
2026-06-04T14:33:01.5727316Z             {
2026-06-04T14:33:01.5727921Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T14:33:01.5728396Z               "line": 17
2026-06-04T14:33:01.5728860Z             }
2026-06-04T14:33:01.5729525Z           ]
2026-06-04T14:33:01.5730178Z         },
2026-06-04T14:33:01.5731002Z         "int": {
2026-06-04T14:33:01.5731592Z           "complete": true,
2026-06-04T14:33:01.5732093Z           "evidence": [
2026-06-04T14:33:01.5732543Z             {
2026-06-04T14:33:01.5733262Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.5733728Z               "line": 314
2026-06-04T14:33:01.5734203Z             },
2026-06-04T14:33:01.5734662Z             {
2026-06-04T14:33:01.5735325Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5735811Z               "line": 488
2026-06-04T14:33:01.5736261Z             },
2026-06-04T14:33:01.5736708Z             {
2026-06-04T14:33:01.5737398Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.5737910Z               "line": 645
2026-06-04T14:33:01.5738383Z             }
2026-06-04T14:33:01.5738833Z           ]
2026-06-04T14:33:01.5739504Z         },
2026-06-04T14:33:01.5740147Z         "unit": {
2026-06-04T14:33:01.5740971Z           "complete": true,
2026-06-04T14:33:01.5741535Z           "evidence": [
2026-06-04T14:33:01.5742015Z             {
2026-06-04T14:33:01.5742728Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5743207Z               "line": 500
2026-06-04T14:33:01.5743671Z             },
2026-06-04T14:33:01.5744119Z             {
2026-06-04T14:33:01.5744805Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5745310Z               "line": 529
2026-06-04T14:33:01.5745761Z             },
2026-06-04T14:33:01.5746214Z             {
2026-06-04T14:33:01.5746904Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.5747408Z               "line": 517
2026-06-04T14:33:01.5747856Z             },
2026-06-04T14:33:01.5748305Z             {
2026-06-04T14:33:01.5748991Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T14:33:01.5749718Z               "line": 142
2026-06-04T14:33:01.5750254Z             },
2026-06-04T14:33:01.5750755Z             {
2026-06-04T14:33:01.5751533Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5752117Z               "line": 357
2026-06-04T14:33:01.5752645Z             },
2026-06-04T14:33:01.5753132Z             {
2026-06-04T14:33:01.5753871Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5754403Z               "line": 371
2026-06-04T14:33:01.5754866Z             },
2026-06-04T14:33:01.5755341Z             {
2026-06-04T14:33:01.5756053Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5756577Z               "line": 390
2026-06-04T14:33:01.5757066Z             },
2026-06-04T14:33:01.5757542Z             {
2026-06-04T14:33:01.5758261Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.5758788Z               "line": 106
2026-06-04T14:33:01.5759352Z             },
2026-06-04T14:33:01.5759974Z             {
2026-06-04T14:33:01.5760627Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T14:33:01.5761150Z               "line": 148
2026-06-04T14:33:01.5761608Z             },
2026-06-04T14:33:01.5762049Z             {
2026-06-04T14:33:01.5762668Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T14:33:01.5763169Z               "line": 445
2026-06-04T14:33:01.5763599Z             },
2026-06-04T14:33:01.5764052Z             {
2026-06-04T14:33:01.5764658Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T14:33:01.5765145Z               "line": 218
2026-06-04T14:33:01.5765620Z             },
2026-06-04T14:33:01.5766077Z             {
2026-06-04T14:33:01.5766686Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T14:33:01.5767196Z               "line": 306
2026-06-04T14:33:01.5767632Z             }
2026-06-04T14:33:01.5768077Z           ]
2026-06-04T14:33:01.5768520Z         }
2026-06-04T14:33:01.5768967Z       }
2026-06-04T14:33:01.5769632Z     },
2026-06-04T14:33:01.5770240Z     {
2026-06-04T14:33:01.5770735Z       "id": "REQ-NET-2",
2026-06-04T14:33:01.5772138Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-04T14:33:01.5772744Z       "requiredStages": [
2026-06-04T14:33:01.5773228Z         "impl"
2026-06-04T14:33:01.5773692Z       ],
2026-06-04T14:33:01.5774153Z       "stages": {
2026-06-04T14:33:01.5774608Z         "doc": {
2026-06-04T14:33:01.5775102Z           "complete": false,
2026-06-04T14:33:01.5775599Z           "evidence": []
2026-06-04T14:33:01.5776106Z         },
2026-06-04T14:33:01.5776596Z         "impl": {
2026-06-04T14:33:01.5777140Z           "complete": true,
2026-06-04T14:33:01.5777624Z           "evidence": [
2026-06-04T14:33:01.5778095Z             {
2026-06-04T14:33:01.5778763Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.5779461Z               "line": 49
2026-06-04T14:33:01.5780106Z             },
2026-06-04T14:33:01.5780555Z             {
2026-06-04T14:33:01.5781230Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5781971Z               "line": 39
2026-06-04T14:33:01.5782452Z             },
2026-06-04T14:33:01.5782897Z             {
2026-06-04T14:33:01.5783574Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5784068Z               "line": 49
2026-06-04T14:33:01.5784506Z             },
2026-06-04T14:33:01.5784944Z             {
2026-06-04T14:33:01.5785608Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5786104Z               "line": 127
2026-06-04T14:33:01.5786558Z             },
2026-06-04T14:33:01.5786998Z             {
2026-06-04T14:33:01.5787681Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5794462Z               "line": 143
2026-06-04T14:33:01.5795117Z             },
2026-06-04T14:33:01.5795556Z             {
2026-06-04T14:33:01.5796281Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T14:33:01.5796776Z               "line": 158
2026-06-04T14:33:01.5797219Z             }
2026-06-04T14:33:01.5797723Z           ]
2026-06-04T14:33:01.5798183Z         },
2026-06-04T14:33:01.5798648Z         "int": {
2026-06-04T14:33:01.5799232Z           "complete": false,
2026-06-04T14:33:01.5799742Z           "evidence": []
2026-06-04T14:33:01.5800194Z         },
2026-06-04T14:33:01.5800633Z         "unit": {
2026-06-04T14:33:01.5801136Z           "complete": true,
2026-06-04T14:33:01.5801616Z           "evidence": [
2026-06-04T14:33:01.5802070Z             {
2026-06-04T14:33:01.5802727Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.5803226Z               "line": 334
2026-06-04T14:33:01.5803685Z             }
2026-06-04T14:33:01.5804128Z           ]
2026-06-04T14:33:01.5804578Z         }
2026-06-04T14:33:01.5805016Z       }
2026-06-04T14:33:01.5805468Z     },
2026-06-04T14:33:01.5805915Z     {
2026-06-04T14:33:01.5806408Z       "id": "REQ-NET-3",
2026-06-04T14:33:01.5807367Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-04T14:33:01.5807884Z       "requiredStages": [
2026-06-04T14:33:01.5808397Z         "impl",
2026-06-04T14:33:01.5808868Z         "unit"
2026-06-04T14:33:01.5809401Z       ],
2026-06-04T14:33:01.5809887Z       "stages": {
2026-06-04T14:33:01.5810362Z         "doc": {
2026-06-04T14:33:01.5810898Z           "complete": false,
2026-06-04T14:33:01.5811387Z           "evidence": []
2026-06-04T14:33:01.5811860Z         },
2026-06-04T14:33:01.5812319Z         "impl": {
2026-06-04T14:33:01.5812818Z           "complete": true,
2026-06-04T14:33:01.5813293Z           "evidence": [
2026-06-04T14:33:01.5813759Z             {
2026-06-04T14:33:01.5814416Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5814893Z               "line": 39
2026-06-04T14:33:01.5815338Z             },
2026-06-04T14:33:01.5815763Z             {
2026-06-04T14:33:01.5816397Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5816874Z               "line": 159
2026-06-04T14:33:01.5817340Z             },
2026-06-04T14:33:01.5817829Z             {
2026-06-04T14:33:01.5818904Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T14:33:01.5819535Z               "line": 290
2026-06-04T14:33:01.5819995Z             },
2026-06-04T14:33:01.5820455Z             {
2026-06-04T14:33:01.5821100Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T14:33:01.5821604Z               "line": 36
2026-06-04T14:33:01.5822062Z             },
2026-06-04T14:33:01.5822512Z             {
2026-06-04T14:33:01.5823218Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5823711Z               "line": 135
2026-06-04T14:33:01.5824166Z             },
2026-06-04T14:33:01.5824663Z             {
2026-06-04T14:33:01.5825427Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5825936Z               "line": 172
2026-06-04T14:33:01.5826400Z             },
2026-06-04T14:33:01.5826869Z             {
2026-06-04T14:33:01.5827567Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5828361Z               "line": 184
2026-06-04T14:33:01.5828816Z             },
2026-06-04T14:33:01.5829500Z             {
2026-06-04T14:33:01.5830408Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5830912Z               "line": 222
2026-06-04T14:33:01.5831363Z             },
2026-06-04T14:33:01.5831800Z             {
2026-06-04T14:33:01.5832517Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5833019Z               "line": 237
2026-06-04T14:33:01.5833496Z             },
2026-06-04T14:33:01.5833960Z             {
2026-06-04T14:33:01.5834667Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5835172Z               "line": 273
2026-06-04T14:33:01.5835627Z             },
2026-06-04T14:33:01.5836078Z             {
2026-06-04T14:33:01.5836768Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5837267Z               "line": 314
2026-06-04T14:33:01.5837737Z             },
2026-06-04T14:33:01.5838246Z             {
2026-06-04T14:33:01.5838984Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.5839570Z               "line": 327
2026-06-04T14:33:01.5840029Z             },
2026-06-04T14:33:01.5840481Z             {
2026-06-04T14:33:01.5841157Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5841662Z               "line": 29
2026-06-04T14:33:01.5842126Z             },
2026-06-04T14:33:01.5842604Z             {
2026-06-04T14:33:01.5843293Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5843974Z               "line": 70
2026-06-04T14:33:01.5844559Z             },
2026-06-04T14:33:01.5845116Z             {
2026-06-04T14:33:01.5845916Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5846448Z               "line": 121
2026-06-04T14:33:01.5846957Z             }
2026-06-04T14:33:01.5847455Z           ]
2026-06-04T14:33:01.5847940Z         },
2026-06-04T14:33:01.5848455Z         "int": {
2026-06-04T14:33:01.5849007Z           "complete": false,
2026-06-04T14:33:01.5849612Z           "evidence": []
2026-06-04T14:33:01.5850074Z         },
2026-06-04T14:33:01.5850551Z         "unit": {
2026-06-04T14:33:01.5851088Z           "complete": true,
2026-06-04T14:33:01.5851622Z           "evidence": [
2026-06-04T14:33:01.5852140Z             {
2026-06-04T14:33:01.5852857Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.5853389Z               "line": 203
2026-06-04T14:33:01.5853862Z             },
2026-06-04T14:33:01.5854341Z             {
2026-06-04T14:33:01.5855023Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.5855533Z               "line": 303
2026-06-04T14:33:01.5856012Z             },
2026-06-04T14:33:01.5856481Z             {
2026-06-04T14:33:01.5857168Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T14:33:01.5857668Z               "line": 399
2026-06-04T14:33:01.5858153Z             },
2026-06-04T14:33:01.5858641Z             {
2026-06-04T14:33:01.5859755Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T14:33:01.5860320Z               "line": 93
2026-06-04T14:33:01.5860788Z             },
2026-06-04T14:33:01.5861263Z             {
2026-06-04T14:33:01.5861912Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T14:33:01.5862405Z               "line": 131
2026-06-04T14:33:01.5862869Z             },
2026-06-04T14:33:01.5863344Z             {
2026-06-04T14:33:01.5864054Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5864545Z               "line": 308
2026-06-04T14:33:01.5865028Z             },
2026-06-04T14:33:01.5865502Z             {
2026-06-04T14:33:01.5866205Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5866702Z               "line": 345
2026-06-04T14:33:01.5867183Z             },
2026-06-04T14:33:01.5867671Z             {
2026-06-04T14:33:01.5868386Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T14:33:01.5869277Z               "line": 469
2026-06-04T14:33:01.5869967Z             }
2026-06-04T14:33:01.5870437Z           ]
2026-06-04T14:33:01.5870885Z         }
2026-06-04T14:33:01.5871340Z       }
2026-06-04T14:33:01.5871793Z     },
2026-06-04T14:33:01.5872225Z     {
2026-06-04T14:33:01.5872755Z       "id": "REQ-NODE-IDENTITY",
2026-06-04T14:33:01.5874146Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-04T14:33:01.5874709Z       "requiredStages": [
2026-06-04T14:33:01.5875189Z         "impl",
2026-06-04T14:33:01.5875698Z         "unit"
2026-06-04T14:33:01.5876166Z       ],
2026-06-04T14:33:01.5876638Z       "stages": {
2026-06-04T14:33:01.5877129Z         "doc": {
2026-06-04T14:33:01.5877631Z           "complete": false,
2026-06-04T14:33:01.5878148Z           "evidence": []
2026-06-04T14:33:01.5878599Z         },
2026-06-04T14:33:01.5879082Z         "impl": {
2026-06-04T14:33:01.5880121Z           "complete": true,
2026-06-04T14:33:01.5880655Z           "evidence": [
2026-06-04T14:33:01.5881118Z             {
2026-06-04T14:33:01.5881798Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5882287Z               "line": 60
2026-06-04T14:33:01.5882737Z             },
2026-06-04T14:33:01.5888737Z             {
2026-06-04T14:33:01.5889998Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5890641Z               "line": 68
2026-06-04T14:33:01.5891096Z             },
2026-06-04T14:33:01.5891542Z             {
2026-06-04T14:33:01.5892220Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5892707Z               "line": 86
2026-06-04T14:33:01.5893152Z             },
2026-06-04T14:33:01.5893596Z             {
2026-06-04T14:33:01.5894254Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5894746Z               "line": 120
2026-06-04T14:33:01.5895183Z             },
2026-06-04T14:33:01.5895633Z             {
2026-06-04T14:33:01.5896365Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5896854Z               "line": 127
2026-06-04T14:33:01.5897310Z             },
2026-06-04T14:33:01.5897752Z             {
2026-06-04T14:33:01.5898420Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5898893Z               "line": 143
2026-06-04T14:33:01.5899612Z             },
2026-06-04T14:33:01.5900103Z             {
2026-06-04T14:33:01.5900766Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T14:33:01.5901263Z               "line": 16
2026-06-04T14:33:01.5901723Z             }
2026-06-04T14:33:01.5902182Z           ]
2026-06-04T14:33:01.5902633Z         },
2026-06-04T14:33:01.5903108Z         "int": {
2026-06-04T14:33:01.5903664Z           "complete": false,
2026-06-04T14:33:01.5904247Z           "evidence": []
2026-06-04T14:33:01.5904749Z         },
2026-06-04T14:33:01.5905225Z         "unit": {
2026-06-04T14:33:01.5905746Z           "complete": true,
2026-06-04T14:33:01.5906277Z           "evidence": [
2026-06-04T14:33:01.5907168Z             {
2026-06-04T14:33:01.5907918Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5908423Z               "line": 199
2026-06-04T14:33:01.5908899Z             },
2026-06-04T14:33:01.5909419Z             {
2026-06-04T14:33:01.5910121Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5910602Z               "line": 218
2026-06-04T14:33:01.5911073Z             },
2026-06-04T14:33:01.5911543Z             {
2026-06-04T14:33:01.5912214Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5912708Z               "line": 232
2026-06-04T14:33:01.5913164Z             },
2026-06-04T14:33:01.5913651Z             {
2026-06-04T14:33:01.5914342Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T14:33:01.5914825Z               "line": 248
2026-06-04T14:33:01.5915281Z             },
2026-06-04T14:33:01.5915725Z             {
2026-06-04T14:33:01.5916408Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T14:33:01.5917147Z               "line": 125
2026-06-04T14:33:01.5917618Z             },
2026-06-04T14:33:01.5918083Z             {
2026-06-04T14:33:01.5918758Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T14:33:01.5919371Z               "line": 141
2026-06-04T14:33:01.5919908Z             },
2026-06-04T14:33:01.5920594Z             {
2026-06-04T14:33:01.5921258Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T14:33:01.5921782Z               "line": 153
2026-06-04T14:33:01.5922244Z             }
2026-06-04T14:33:01.5922703Z           ]
2026-06-04T14:33:01.5923163Z         }
2026-06-04T14:33:01.5923605Z       }
2026-06-04T14:33:01.5924051Z     },
2026-06-04T14:33:01.5924476Z     {
2026-06-04T14:33:01.5924984Z       "id": "REQ-NOTIF-1",
2026-06-04T14:33:01.5927198Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-04T14:33:01.5927785Z       "requiredStages": [
2026-06-04T14:33:01.5928238Z         "impl",
2026-06-04T14:33:01.5928684Z         "unit"
2026-06-04T14:33:01.5929145Z       ],
2026-06-04T14:33:01.5929990Z       "stages": {
2026-06-04T14:33:01.5930463Z         "doc": {
2026-06-04T14:33:01.5930967Z           "complete": false,
2026-06-04T14:33:01.5931472Z           "evidence": []
2026-06-04T14:33:01.5931949Z         },
2026-06-04T14:33:01.5932413Z         "impl": {
2026-06-04T14:33:01.5932929Z           "complete": true,
2026-06-04T14:33:01.5933408Z           "evidence": [
2026-06-04T14:33:01.5933862Z             {
2026-06-04T14:33:01.5934546Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T14:33:01.5935028Z               "line": 412
2026-06-04T14:33:01.5935475Z             },
2026-06-04T14:33:01.5935912Z             {
2026-06-04T14:33:01.5936549Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5937020Z               "line": 30
2026-06-04T14:33:01.5937477Z             },
2026-06-04T14:33:01.5937962Z             {
2026-06-04T14:33:01.5938605Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5939077Z               "line": 62
2026-06-04T14:33:01.5939757Z             },
2026-06-04T14:33:01.5940391Z             {
2026-06-04T14:33:01.5941028Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5941500Z               "line": 83
2026-06-04T14:33:01.5941952Z             },
2026-06-04T14:33:01.5942413Z             {
2026-06-04T14:33:01.5943066Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5943567Z               "line": 97
2026-06-04T14:33:01.5944072Z             },
2026-06-04T14:33:01.5944531Z             {
2026-06-04T14:33:01.5945181Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5945680Z               "line": 126
2026-06-04T14:33:01.5946129Z             },
2026-06-04T14:33:01.5946578Z             {
2026-06-04T14:33:01.5947214Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5948023Z               "line": 159
2026-06-04T14:33:01.5948533Z             },
2026-06-04T14:33:01.5948992Z             {
2026-06-04T14:33:01.5949898Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5950560Z               "line": 179
2026-06-04T14:33:01.5951023Z             },
2026-06-04T14:33:01.5951461Z             {
2026-06-04T14:33:01.5952106Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5952598Z               "line": 239
2026-06-04T14:33:01.5953064Z             },
2026-06-04T14:33:01.5953532Z             {
2026-06-04T14:33:01.5954159Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.5954635Z               "line": 287
2026-06-04T14:33:01.5955086Z             },
2026-06-04T14:33:01.5955523Z             {
2026-06-04T14:33:01.5956202Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.5956691Z               "line": 24
2026-06-04T14:33:01.5957157Z             },
2026-06-04T14:33:01.5957861Z             {
2026-06-04T14:33:01.5958558Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.5959050Z               "line": 34
2026-06-04T14:33:01.5959738Z             },
2026-06-04T14:33:01.5960359Z             {
2026-06-04T14:33:01.5961062Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.5961556Z               "line": 55
2026-06-04T14:33:01.5961985Z             },
2026-06-04T14:33:01.5962436Z             {
2026-06-04T14:33:01.5963100Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.5963585Z               "line": 76
2026-06-04T14:33:01.5964026Z             },
2026-06-04T14:33:01.5964485Z             {
2026-06-04T14:33:01.5965167Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.5965636Z               "line": 88
2026-06-04T14:33:01.5966085Z             },
2026-06-04T14:33:01.5966526Z             {
2026-06-04T14:33:01.5967233Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T14:33:01.5967752Z               "line": 41
2026-06-04T14:33:01.5968193Z             },
2026-06-04T14:33:01.5968655Z             {
2026-06-04T14:33:01.5969585Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.5970256Z               "line": 94
2026-06-04T14:33:01.5970710Z             },
2026-06-04T14:33:01.5971175Z             {
2026-06-04T14:33:01.5971854Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.5972332Z               "line": 20
2026-06-04T14:33:01.5972795Z             },
2026-06-04T14:33:01.5973241Z             {
2026-06-04T14:33:01.5973928Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.5974408Z               "line": 30
2026-06-04T14:33:01.5974874Z             },
2026-06-04T14:33:01.5975336Z             {
2026-06-04T14:33:01.5975996Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.5976485Z               "line": 50
2026-06-04T14:33:01.5976971Z             },
2026-06-04T14:33:01.5977449Z             {
2026-06-04T14:33:01.5978083Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5984591Z               "line": 28
2026-06-04T14:33:01.5985220Z             },
2026-06-04T14:33:01.5985664Z             {
2026-06-04T14:33:01.5986336Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5986826Z               "line": 126
2026-06-04T14:33:01.5987285Z             },
2026-06-04T14:33:01.5987719Z             {
2026-06-04T14:33:01.5988353Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5988831Z               "line": 161
2026-06-04T14:33:01.5989506Z             },
2026-06-04T14:33:01.5990139Z             {
2026-06-04T14:33:01.5990789Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5991286Z               "line": 197
2026-06-04T14:33:01.5991744Z             },
2026-06-04T14:33:01.5992210Z             {
2026-06-04T14:33:01.5992831Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5993742Z               "line": 208
2026-06-04T14:33:01.5994258Z             },
2026-06-04T14:33:01.5994702Z             {
2026-06-04T14:33:01.5995348Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5995834Z               "line": 231
2026-06-04T14:33:01.5996290Z             },
2026-06-04T14:33:01.5996758Z             {
2026-06-04T14:33:01.5997422Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.5997943Z               "line": 251
2026-06-04T14:33:01.5998402Z             },
2026-06-04T14:33:01.5998868Z             {
2026-06-04T14:33:01.5999954Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6000474Z               "line": 63
2026-06-04T14:33:01.6000942Z             }
2026-06-04T14:33:01.6001392Z           ]
2026-06-04T14:33:01.6001845Z         },
2026-06-04T14:33:01.6002317Z         "int": {
2026-06-04T14:33:01.6002847Z           "complete": true,
2026-06-04T14:33:01.6003322Z           "evidence": [
2026-06-04T14:33:01.6004166Z             {
2026-06-04T14:33:01.6004885Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.6005387Z               "line": 265
2026-06-04T14:33:01.6005869Z             },
2026-06-04T14:33:01.6006323Z             {
2026-06-04T14:33:01.6007044Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T14:33:01.6007552Z               "line": 102
2026-06-04T14:33:01.6008001Z             },
2026-06-04T14:33:01.6008458Z             {
2026-06-04T14:33:01.6009131Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6010009Z               "line": 497
2026-06-04T14:33:01.6011381Z             },
2026-06-04T14:33:01.6011880Z             {
2026-06-04T14:33:01.6012578Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6013083Z               "line": 745
2026-06-04T14:33:01.6013552Z             }
2026-06-04T14:33:01.6014012Z           ]
2026-06-04T14:33:01.6014478Z         },
2026-06-04T14:33:01.6014981Z         "unit": {
2026-06-04T14:33:01.6015513Z           "complete": true,
2026-06-04T14:33:01.6016017Z           "evidence": [
2026-06-04T14:33:01.6016472Z             {
2026-06-04T14:33:01.6017134Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6017632Z               "line": 362
2026-06-04T14:33:01.6018089Z             },
2026-06-04T14:33:01.6018525Z             {
2026-06-04T14:33:01.6019258Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6020084Z               "line": 400
2026-06-04T14:33:01.6020556Z             },
2026-06-04T14:33:01.6021021Z             {
2026-06-04T14:33:01.6021704Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6022224Z               "line": 427
2026-06-04T14:33:01.6022678Z             },
2026-06-04T14:33:01.6023143Z             {
2026-06-04T14:33:01.6023818Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6024305Z               "line": 448
2026-06-04T14:33:01.6024797Z             },
2026-06-04T14:33:01.6025256Z             {
2026-06-04T14:33:01.6025910Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6026402Z               "line": 501
2026-06-04T14:33:01.6026862Z             },
2026-06-04T14:33:01.6027324Z             {
2026-06-04T14:33:01.6027944Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6028445Z               "line": 540
2026-06-04T14:33:01.6028937Z             },
2026-06-04T14:33:01.6029713Z             {
2026-06-04T14:33:01.6030601Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6031117Z               "line": 632
2026-06-04T14:33:01.6031608Z             },
2026-06-04T14:33:01.6032054Z             {
2026-06-04T14:33:01.6032748Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.6033262Z               "line": 133
2026-06-04T14:33:01.6033736Z             },
2026-06-04T14:33:01.6034190Z             {
2026-06-04T14:33:01.6035254Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.6035854Z               "line": 208
2026-06-04T14:33:01.6036303Z             },
2026-06-04T14:33:01.6036768Z             {
2026-06-04T14:33:01.6037457Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T14:33:01.6037968Z               "line": 227
2026-06-04T14:33:01.6038412Z             },
2026-06-04T14:33:01.6038869Z             {
2026-06-04T14:33:01.6039850Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.6040522Z               "line": 328
2026-06-04T14:33:01.6040974Z             },
2026-06-04T14:33:01.6041424Z             {
2026-06-04T14:33:01.6042116Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T14:33:01.6042624Z               "line": 357
2026-06-04T14:33:01.6043069Z             },
2026-06-04T14:33:01.6043540Z             {
2026-06-04T14:33:01.6044257Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T14:33:01.6044760Z               "line": 112
2026-06-04T14:33:01.6045514Z             },
2026-06-04T14:33:01.6045983Z             {
2026-06-04T14:33:01.6046656Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.6047131Z               "line": 72
2026-06-04T14:33:01.6047598Z             },
2026-06-04T14:33:01.6048050Z             {
2026-06-04T14:33:01.6048701Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T14:33:01.6049252Z               "line": 94
2026-06-04T14:33:01.6050067Z             },
2026-06-04T14:33:01.6050554Z             {
2026-06-04T14:33:01.6051219Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6051715Z               "line": 365
2026-06-04T14:33:01.6052161Z             },
2026-06-04T14:33:01.6052615Z             {
2026-06-04T14:33:01.6053247Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6053733Z               "line": 396
2026-06-04T14:33:01.6054202Z             },
2026-06-04T14:33:01.6054656Z             {
2026-06-04T14:33:01.6055358Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6055851Z               "line": 410
2026-06-04T14:33:01.6056323Z             },
2026-06-04T14:33:01.6056772Z             {
2026-06-04T14:33:01.6057438Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6057939Z               "line": 441
2026-06-04T14:33:01.6058383Z             },
2026-06-04T14:33:01.6058847Z             {
2026-06-04T14:33:01.6059882Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6060404Z               "line": 458
2026-06-04T14:33:01.6060851Z             },
2026-06-04T14:33:01.6061307Z             {
2026-06-04T14:33:01.6061960Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6062480Z               "line": 483
2026-06-04T14:33:01.6062952Z             },
2026-06-04T14:33:01.6063406Z             {
2026-06-04T14:33:01.6064054Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T14:33:01.6064553Z               "line": 507
2026-06-04T14:33:01.6065029Z             },
2026-06-04T14:33:01.6065503Z             {
2026-06-04T14:33:01.6066158Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6066655Z               "line": 313
2026-06-04T14:33:01.6067098Z             }
2026-06-04T14:33:01.6067547Z           ]
2026-06-04T14:33:01.6067993Z         }
2026-06-04T14:33:01.6068461Z       }
2026-06-04T14:33:01.6068903Z     },
2026-06-04T14:33:01.6069573Z     {
2026-06-04T14:33:01.6070287Z       "id": "REQ-NOTIF-2",
2026-06-04T14:33:01.6071837Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-04T14:33:01.6072357Z       "requiredStages": [
2026-06-04T14:33:01.6072818Z         "doc",
2026-06-04T14:33:01.6073276Z         "impl",
2026-06-04T14:33:01.6073726Z         "unit"
2026-06-04T14:33:01.6074160Z       ],
2026-06-04T14:33:01.6074639Z       "stages": {
2026-06-04T14:33:01.6075101Z         "doc": {
2026-06-04T14:33:01.6081304Z           "complete": true,
2026-06-04T14:33:01.6082394Z           "evidence": [
2026-06-04T14:33:01.6082884Z             {
2026-06-04T14:33:01.6083438Z               "path": "docs/MANIFEST.md",
2026-06-04T14:33:01.6083914Z               "line": 62
2026-06-04T14:33:01.6084377Z             }
2026-06-04T14:33:01.6084839Z           ]
2026-06-04T14:33:01.6085291Z         },
2026-06-04T14:33:01.6085748Z         "impl": {
2026-06-04T14:33:01.6086255Z           "complete": true,
2026-06-04T14:33:01.6086738Z           "evidence": [
2026-06-04T14:33:01.6087171Z             {
2026-06-04T14:33:01.6087829Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6088303Z               "line": 208
2026-06-04T14:33:01.6088762Z             },
2026-06-04T14:33:01.6089320Z             {
2026-06-04T14:33:01.6090089Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6090576Z               "line": 222
2026-06-04T14:33:01.6091017Z             },
2026-06-04T14:33:01.6091458Z             {
2026-06-04T14:33:01.6092393Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.6092891Z               "line": 125
2026-06-04T14:33:01.6093347Z             },
2026-06-04T14:33:01.6093778Z             {
2026-06-04T14:33:01.6094437Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6094912Z               "line": 72
2026-06-04T14:33:01.6095359Z             },
2026-06-04T14:33:01.6095794Z             {
2026-06-04T14:33:01.6096377Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6096850Z               "line": 663
2026-06-04T14:33:01.6097289Z             },
2026-06-04T14:33:01.6097733Z             {
2026-06-04T14:33:01.6098310Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6098786Z               "line": 695
2026-06-04T14:33:01.6099278Z             },
2026-06-04T14:33:01.6099729Z             {
2026-06-04T14:33:01.6100302Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6100769Z               "line": 761
2026-06-04T14:33:01.6101235Z             },
2026-06-04T14:33:01.6101689Z             {
2026-06-04T14:33:01.6102271Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6102741Z               "line": 797
2026-06-04T14:33:01.6103181Z             }
2026-06-04T14:33:01.6103639Z           ]
2026-06-04T14:33:01.6104092Z         },
2026-06-04T14:33:01.6104560Z         "int": {
2026-06-04T14:33:01.6105087Z           "complete": false,
2026-06-04T14:33:01.6105606Z           "evidence": []
2026-06-04T14:33:01.6106079Z         },
2026-06-04T14:33:01.6106576Z         "unit": {
2026-06-04T14:33:01.6107092Z           "complete": true,
2026-06-04T14:33:01.6107579Z           "evidence": [
2026-06-04T14:33:01.6108039Z             {
2026-06-04T14:33:01.6108682Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.6109240Z               "line": 590
2026-06-04T14:33:01.6109891Z             },
2026-06-04T14:33:01.6110542Z             {
2026-06-04T14:33:01.6111135Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6111653Z               "line": 1445
2026-06-04T14:33:01.6112104Z             },
2026-06-04T14:33:01.6112561Z             {
2026-06-04T14:33:01.6113147Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6113649Z               "line": 1467
2026-06-04T14:33:01.6114119Z             }
2026-06-04T14:33:01.6114573Z           ]
2026-06-04T14:33:01.6115016Z         }
2026-06-04T14:33:01.6115472Z       }
2026-06-04T14:33:01.6115894Z     },
2026-06-04T14:33:01.6116343Z     {
2026-06-04T14:33:01.6116838Z       "id": "REQ-PAIR-1",
2026-06-04T14:33:01.6117423Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-04T14:33:01.6117919Z       "requiredStages": [
2026-06-04T14:33:01.6118363Z         "impl",
2026-06-04T14:33:01.6118813Z         "unit"
2026-06-04T14:33:01.6119304Z       ],
2026-06-04T14:33:01.6120094Z       "stages": {
2026-06-04T14:33:01.6120548Z         "doc": {
2026-06-04T14:33:01.6121048Z           "complete": false,
2026-06-04T14:33:01.6121535Z           "evidence": []
2026-06-04T14:33:01.6122016Z         },
2026-06-04T14:33:01.6122782Z         "impl": {
2026-06-04T14:33:01.6123345Z           "complete": true,
2026-06-04T14:33:01.6123841Z           "evidence": [
2026-06-04T14:33:01.6124276Z             {
2026-06-04T14:33:01.6125029Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6125508Z               "line": 27
2026-06-04T14:33:01.6125965Z             },
2026-06-04T14:33:01.6126428Z             {
2026-06-04T14:33:01.6127171Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6127652Z               "line": 88
2026-06-04T14:33:01.6128084Z             },
2026-06-04T14:33:01.6128531Z             {
2026-06-04T14:33:01.6129481Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6129987Z               "line": 110
2026-06-04T14:33:01.6130457Z             },
2026-06-04T14:33:01.6130921Z             {
2026-06-04T14:33:01.6131692Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6132476Z               "line": 153
2026-06-04T14:33:01.6132969Z             },
2026-06-04T14:33:01.6133505Z             {
2026-06-04T14:33:01.6134335Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6136221Z               "line": 182
2026-06-04T14:33:01.6137568Z             },
2026-06-04T14:33:01.6138702Z             {
2026-06-04T14:33:01.6140261Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6142236Z               "line": 29
2026-06-04T14:33:01.6143644Z             },
2026-06-04T14:33:01.6144802Z             {
2026-06-04T14:33:01.6146369Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T14:33:01.6148405Z               "line": 31
2026-06-04T14:33:01.6149817Z             },
2026-06-04T14:33:01.6150980Z             {
2026-06-04T14:33:01.6152339Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6154190Z               "line": 40
2026-06-04T14:33:01.6155657Z             },
2026-06-04T14:33:01.6156913Z             {
2026-06-04T14:33:01.6158458Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6160519Z               "line": 131
2026-06-04T14:33:01.6161836Z             },
2026-06-04T14:33:01.6163034Z             {
2026-06-04T14:33:01.6164522Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6166359Z               "line": 306
2026-06-04T14:33:01.6167645Z             }
2026-06-04T14:33:01.6168731Z           ]
2026-06-04T14:33:01.6169880Z         },
2026-06-04T14:33:01.6181835Z         "int": {
2026-06-04T14:33:01.6183105Z           "complete": true,
2026-06-04T14:33:01.6184457Z           "evidence": [
2026-06-04T14:33:01.6185738Z             {
2026-06-04T14:33:01.6187117Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6188929Z               "line": 433
2026-06-04T14:33:01.6190402Z             },
2026-06-04T14:33:01.6191626Z             {
2026-06-04T14:33:01.6193169Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6194996Z               "line": 549
2026-06-04T14:33:01.6196239Z             }
2026-06-04T14:33:01.6197304Z           ]
2026-06-04T14:33:01.6198353Z         },
2026-06-04T14:33:01.6199682Z         "unit": {
2026-06-04T14:33:01.6200852Z           "complete": true,
2026-06-04T14:33:01.6202119Z           "evidence": [
2026-06-04T14:33:01.6203275Z             {
2026-06-04T14:33:01.6204588Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6206289Z               "line": 236
2026-06-04T14:33:01.6207468Z             },
2026-06-04T14:33:01.6208507Z             {
2026-06-04T14:33:01.6210231Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T14:33:01.6211941Z               "line": 349
2026-06-04T14:33:01.6213141Z             },
2026-06-04T14:33:01.6214209Z             {
2026-06-04T14:33:01.6215524Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6217789Z               "line": 194
2026-06-04T14:33:01.6219065Z             },
2026-06-04T14:33:01.6220375Z             {
2026-06-04T14:33:01.6221728Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6223445Z               "line": 216
2026-06-04T14:33:01.6224625Z             },
2026-06-04T14:33:01.6225680Z             {
2026-06-04T14:33:01.6227027Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6228766Z               "line": 230
2026-06-04T14:33:01.6230120Z             },
2026-06-04T14:33:01.6231257Z             {
2026-06-04T14:33:01.6232611Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6234350Z               "line": 242
2026-06-04T14:33:01.6235589Z             },
2026-06-04T14:33:01.6236645Z             {
2026-06-04T14:33:01.6237983Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6239994Z               "line": 256
2026-06-04T14:33:01.6241591Z             },
2026-06-04T14:33:01.6242702Z             {
2026-06-04T14:33:01.6244035Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6245693Z               "line": 270
2026-06-04T14:33:01.6246862Z             },
2026-06-04T14:33:01.6247959Z             {
2026-06-04T14:33:01.6249546Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6251424Z               "line": 277
2026-06-04T14:33:01.6252637Z             },
2026-06-04T14:33:01.6253746Z             {
2026-06-04T14:33:01.6255076Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T14:33:01.6256758Z               "line": 295
2026-06-04T14:33:01.6257969Z             },
2026-06-04T14:33:01.6259050Z             {
2026-06-04T14:33:01.6260794Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6262446Z               "line": 696
2026-06-04T14:33:01.6263624Z             },
2026-06-04T14:33:01.6264666Z             {
2026-06-04T14:33:01.6266039Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6267745Z               "line": 757
2026-06-04T14:33:01.6268978Z             },
2026-06-04T14:33:01.6270463Z             {
2026-06-04T14:33:01.6271783Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6273435Z               "line": 814
2026-06-04T14:33:01.6274610Z             },
2026-06-04T14:33:01.6275648Z             {
2026-06-04T14:33:01.6276952Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6278605Z               "line": 868
2026-06-04T14:33:01.6280227Z             },
2026-06-04T14:33:01.6281418Z             {
2026-06-04T14:33:01.6282758Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6284441Z               "line": 920
2026-06-04T14:33:01.6285709Z             },
2026-06-04T14:33:01.6286770Z             {
2026-06-04T14:33:01.6288069Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6289916Z               "line": 1084
2026-06-04T14:33:01.6291193Z             }
2026-06-04T14:33:01.6292245Z           ]
2026-06-04T14:33:01.6300260Z         }
2026-06-04T14:33:01.6301337Z       }
2026-06-04T14:33:01.6302321Z     },
2026-06-04T14:33:01.6303317Z     {
2026-06-04T14:33:01.6304351Z       "id": "REQ-PAIR-2",
2026-06-04T14:33:01.6305861Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-04T14:33:01.6307590Z       "requiredStages": [
2026-06-04T14:33:01.6308805Z         "impl",
2026-06-04T14:33:01.6309921Z         "unit"
2026-06-04T14:33:01.6310943Z       ],
2026-06-04T14:33:01.6311939Z       "stages": {
2026-06-04T14:33:01.6313004Z         "doc": {
2026-06-04T14:33:01.6314131Z           "complete": false,
2026-06-04T14:33:01.6315433Z           "evidence": []
2026-06-04T14:33:01.6316620Z         },
2026-06-04T14:33:01.6317630Z         "impl": {
2026-06-04T14:33:01.6318740Z           "complete": true,
2026-06-04T14:33:01.6320387Z           "evidence": [
2026-06-04T14:33:01.6321618Z             {
2026-06-04T14:33:01.6323360Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6325037Z               "line": 42
2026-06-04T14:33:01.6326215Z             },
2026-06-04T14:33:01.6327251Z             {
2026-06-04T14:33:01.6328473Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6330141Z               "line": 151
2026-06-04T14:33:01.6331316Z             },
2026-06-04T14:33:01.6332342Z             {
2026-06-04T14:33:01.6333613Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6335237Z               "line": 171
2026-06-04T14:33:01.6336431Z             },
2026-06-04T14:33:01.6337514Z             {
2026-06-04T14:33:01.6338748Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6340759Z               "line": 209
2026-06-04T14:33:01.6341956Z             },
2026-06-04T14:33:01.6343002Z             {
2026-06-04T14:33:01.6344211Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6346218Z               "line": 232
2026-06-04T14:33:01.6347434Z             }
2026-06-04T14:33:01.6348482Z           ]
2026-06-04T14:33:01.6349749Z         },
2026-06-04T14:33:01.6350856Z         "int": {
2026-06-04T14:33:01.6352020Z           "complete": false,
2026-06-04T14:33:01.6353569Z           "evidence": []
2026-06-04T14:33:01.6354781Z         },
2026-06-04T14:33:01.6355802Z         "unit": {
2026-06-04T14:33:01.6356938Z           "complete": true,
2026-06-04T14:33:01.6358203Z           "evidence": [
2026-06-04T14:33:01.6359578Z             {
2026-06-04T14:33:01.6361009Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6362596Z               "line": 253
2026-06-04T14:33:01.6363805Z             },
2026-06-04T14:33:01.6364878Z             {
2026-06-04T14:33:01.6366098Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6367670Z               "line": 272
2026-06-04T14:33:01.6368887Z             },
2026-06-04T14:33:01.6370023Z             {
2026-06-04T14:33:01.6371382Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6372968Z               "line": 284
2026-06-04T14:33:01.6374165Z             },
2026-06-04T14:33:01.6375250Z             {
2026-06-04T14:33:01.6376472Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6378043Z               "line": 303
2026-06-04T14:33:01.6379302Z             },
2026-06-04T14:33:01.6380360Z             {
2026-06-04T14:33:01.6381568Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6383145Z               "line": 319
2026-06-04T14:33:01.6384355Z             },
2026-06-04T14:33:01.6385415Z             {
2026-06-04T14:33:01.6386661Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6388239Z               "line": 331
2026-06-04T14:33:01.6389511Z             },
2026-06-04T14:33:01.6390589Z             {
2026-06-04T14:33:01.6391796Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6393351Z               "line": 343
2026-06-04T14:33:01.6394590Z             },
2026-06-04T14:33:01.6395678Z             {
2026-06-04T14:33:01.6396909Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6398489Z               "line": 356
2026-06-04T14:33:01.6399965Z             },
2026-06-04T14:33:01.6401317Z             {
2026-06-04T14:33:01.6402566Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T14:33:01.6411155Z               "line": 370
2026-06-04T14:33:01.6412525Z             }
2026-06-04T14:33:01.6413546Z           ]
2026-06-04T14:33:01.6414540Z         }
2026-06-04T14:33:01.6415529Z       }
2026-06-04T14:33:01.6416563Z     },
2026-06-04T14:33:01.6417554Z     {
2026-06-04T14:33:01.6418750Z       "id": "REQ-PAIR-3",
2026-06-04T14:33:01.6420819Z       "title": "Fetch current pairing code from any paired node",
2026-06-04T14:33:01.6422661Z       "requiredStages": [
2026-06-04T14:33:01.6423885Z         "impl",
2026-06-04T14:33:01.6424952Z         "unit"
2026-06-04T14:33:01.6425996Z       ],
2026-06-04T14:33:01.6427099Z       "stages": {
2026-06-04T14:33:01.6428637Z         "doc": {
2026-06-04T14:33:01.6430134Z           "complete": false,
2026-06-04T14:33:01.6431449Z           "evidence": []
2026-06-04T14:33:01.6432649Z         },
2026-06-04T14:33:01.6433673Z         "impl": {
2026-06-04T14:33:01.6434824Z           "complete": true,
2026-06-04T14:33:01.6436110Z           "evidence": [
2026-06-04T14:33:01.6437328Z             {
2026-06-04T14:33:01.6438540Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6440184Z               "line": 1073
2026-06-04T14:33:01.6441616Z             },
2026-06-04T14:33:01.6442678Z             {
2026-06-04T14:33:01.6443860Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6445391Z               "line": 1109
2026-06-04T14:33:01.6446621Z             },
2026-06-04T14:33:01.6447701Z             {
2026-06-04T14:33:01.6448869Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6450478Z               "line": 1169
2026-06-04T14:33:01.6452071Z             }
2026-06-04T14:33:01.6453137Z           ]
2026-06-04T14:33:01.6454126Z         },
2026-06-04T14:33:01.6455123Z         "int": {
2026-06-04T14:33:01.6456225Z           "complete": false,
2026-06-04T14:33:01.6457488Z           "evidence": []
2026-06-04T14:33:01.6458649Z         },
2026-06-04T14:33:01.6459726Z         "unit": {
2026-06-04T14:33:01.6460812Z           "complete": true,
2026-06-04T14:33:01.6462049Z           "evidence": [
2026-06-04T14:33:01.6463195Z             {
2026-06-04T14:33:01.6464346Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6465841Z               "line": 1639
2026-06-04T14:33:01.6467049Z             },
2026-06-04T14:33:01.6468117Z             {
2026-06-04T14:33:01.6469358Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6470899Z               "line": 1656
2026-06-04T14:33:01.6472096Z             },
2026-06-04T14:33:01.6473169Z             {
2026-06-04T14:33:01.6474332Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6475896Z               "line": 1670
2026-06-04T14:33:01.6477204Z             },
2026-06-04T14:33:01.6478305Z             {
2026-06-04T14:33:01.6479757Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6481508Z               "line": 1686
2026-06-04T14:33:01.6482708Z             },
2026-06-04T14:33:01.6483760Z             {
2026-06-04T14:33:01.6484924Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6486419Z               "line": 1707
2026-06-04T14:33:01.6487617Z             },
2026-06-04T14:33:01.6488657Z             {
2026-06-04T14:33:01.6490257Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6491773Z               "line": 1723
2026-06-04T14:33:01.6492990Z             },
2026-06-04T14:33:01.6494086Z             {
2026-06-04T14:33:01.6495307Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6496837Z               "line": 1736
2026-06-04T14:33:01.6498064Z             },
2026-06-04T14:33:01.6499104Z             {
2026-06-04T14:33:01.6500765Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6502282Z               "line": 1745
2026-06-04T14:33:01.6503486Z             }
2026-06-04T14:33:01.6504544Z           ]
2026-06-04T14:33:01.6505625Z         }
2026-06-04T14:33:01.6506645Z       }
2026-06-04T14:33:01.6507631Z     },
2026-06-04T14:33:01.6508614Z     {
2026-06-04T14:33:01.6510103Z       "id": "REQ-PAIR-4",
2026-06-04T14:33:01.6511521Z       "title": "Subnet naming on first pairing",
2026-06-04T14:33:01.6513112Z       "requiredStages": [
2026-06-04T14:33:01.6521061Z         "impl",
2026-06-04T14:33:01.6522335Z         "unit"
2026-06-04T14:33:01.6523389Z       ],
2026-06-04T14:33:01.6524382Z       "stages": {
2026-06-04T14:33:01.6525469Z         "doc": {
2026-06-04T14:33:01.6526607Z           "complete": false,
2026-06-04T14:33:01.6527871Z           "evidence": []
2026-06-04T14:33:01.6529033Z         },
2026-06-04T14:33:01.6530520Z         "impl": {
2026-06-04T14:33:01.6531645Z           "complete": true,
2026-06-04T14:33:01.6533483Z           "evidence": [
2026-06-04T14:33:01.6534763Z             {
2026-06-04T14:33:01.6536414Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T14:33:01.6538019Z               "line": 154
2026-06-04T14:33:01.6539275Z             }
2026-06-04T14:33:01.6540648Z           ]
2026-06-04T14:33:01.6541694Z         },
2026-06-04T14:33:01.6542706Z         "int": {
2026-06-04T14:33:01.6543814Z           "complete": false,
2026-06-04T14:33:01.6545106Z           "evidence": []
2026-06-04T14:33:01.6546296Z         },
2026-06-04T14:33:01.6547347Z         "unit": {
2026-06-04T14:33:01.6548770Z           "complete": true,
2026-06-04T14:33:01.6550376Z           "evidence": [
2026-06-04T14:33:01.6551748Z             {
2026-06-04T14:33:01.6553235Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6555106Z               "line": 972
2026-06-04T14:33:01.6556402Z             }
2026-06-04T14:33:01.6557571Z           ]
2026-06-04T14:33:01.6558635Z         }
2026-06-04T14:33:01.6560361Z       }
2026-06-04T14:33:01.6561545Z     },
2026-06-04T14:33:01.6562695Z     {
2026-06-04T14:33:01.6563985Z       "id": "REQ-PAIR-5",
2026-06-04T14:33:01.6566781Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-04T14:33:01.6569993Z       "requiredStages": [
2026-06-04T14:33:01.6571354Z         "impl",
2026-06-04T14:33:01.6572518Z         "unit"
2026-06-04T14:33:01.6573660Z       ],
2026-06-04T14:33:01.6574795Z       "stages": {
2026-06-04T14:33:01.6576001Z         "doc": {
2026-06-04T14:33:01.6577305Z           "complete": false,
2026-06-04T14:33:01.6578788Z           "evidence": []
2026-06-04T14:33:01.6580203Z         },
2026-06-04T14:33:01.6581301Z         "impl": {
2026-06-04T14:33:01.6582507Z           "complete": true,
2026-06-04T14:33:01.6583833Z           "evidence": [
2026-06-04T14:33:01.6585021Z             {
2026-06-04T14:33:01.6586465Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6588362Z               "line": 33
2026-06-04T14:33:01.6589668Z             },
2026-06-04T14:33:01.6590745Z             {
2026-06-04T14:33:01.6592200Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6594021Z               "line": 45
2026-06-04T14:33:01.6595230Z             },
2026-06-04T14:33:01.6596328Z             {
2026-06-04T14:33:01.6597763Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6599699Z               "line": 59
2026-06-04T14:33:01.6600940Z             },
2026-06-04T14:33:01.6602039Z             {
2026-06-04T14:33:01.6603467Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6605258Z               "line": 306
2026-06-04T14:33:01.6606506Z             }
2026-06-04T14:33:01.6607608Z           ]
2026-06-04T14:33:01.6608667Z         },
2026-06-04T14:33:01.6609790Z         "int": {
2026-06-04T14:33:01.6610994Z           "complete": true,
2026-06-04T14:33:01.6612359Z           "evidence": [
2026-06-04T14:33:01.6613584Z             {
2026-06-04T14:33:01.6614972Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6616714Z               "line": 549
2026-06-04T14:33:01.6617972Z             }
2026-06-04T14:33:01.6619066Z           ]
2026-06-04T14:33:01.6620210Z         },
2026-06-04T14:33:01.6621284Z         "unit": {
2026-06-04T14:33:01.6622461Z           "complete": true,
2026-06-04T14:33:01.6623782Z           "evidence": [
2026-06-04T14:33:01.6625006Z             {
2026-06-04T14:33:01.6633755Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6635570Z               "line": 72
2026-06-04T14:33:01.6636733Z             },
2026-06-04T14:33:01.6637764Z             {
2026-06-04T14:33:01.6639141Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6641298Z               "line": 82
2026-06-04T14:33:01.6642456Z             },
2026-06-04T14:33:01.6643570Z             {
2026-06-04T14:33:01.6645514Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6647385Z               "line": 92
2026-06-04T14:33:01.6648569Z             },
2026-06-04T14:33:01.6649825Z             {
2026-06-04T14:33:01.6651305Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6653144Z               "line": 102
2026-06-04T14:33:01.6654359Z             },
2026-06-04T14:33:01.6655429Z             {
2026-06-04T14:33:01.6656884Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T14:33:01.6658745Z               "line": 117
2026-06-04T14:33:01.6660187Z             },
2026-06-04T14:33:01.6661236Z             {
2026-06-04T14:33:01.6662510Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6664139Z               "line": 750
2026-06-04T14:33:01.6665334Z             },
2026-06-04T14:33:01.6666423Z             {
2026-06-04T14:33:01.6667762Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6670301Z               "line": 806
2026-06-04T14:33:01.6671503Z             },
2026-06-04T14:33:01.6672547Z             {
2026-06-04T14:33:01.6673846Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T14:33:01.6675531Z               "line": 1026
2026-06-04T14:33:01.6676709Z             }
2026-06-04T14:33:01.6677724Z           ]
2026-06-04T14:33:01.6678704Z         }
2026-06-04T14:33:01.6680040Z       }
2026-06-04T14:33:01.6681170Z     },
2026-06-04T14:33:01.6682145Z     {
2026-06-04T14:33:01.6683196Z       "id": "REQ-PAIR-6",
2026-06-04T14:33:01.6685551Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-04T14:33:01.6688122Z       "requiredStages": [
2026-06-04T14:33:01.6689542Z         "impl",
2026-06-04T14:33:01.6690780Z         "unit"
2026-06-04T14:33:01.6691848Z       ],
2026-06-04T14:33:01.6692863Z       "stages": {
2026-06-04T14:33:01.6693982Z         "doc": {
2026-06-04T14:33:01.6695193Z           "complete": false,
2026-06-04T14:33:01.6696504Z           "evidence": []
2026-06-04T14:33:01.6697777Z         },
2026-06-04T14:33:01.6698842Z         "impl": {
2026-06-04T14:33:01.6700404Z           "complete": true,
2026-06-04T14:33:01.6701692Z           "evidence": [
2026-06-04T14:33:01.6702897Z             {
2026-06-04T14:33:01.6704109Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6705639Z               "line": 1109
2026-06-04T14:33:01.6706861Z             },
2026-06-04T14:33:01.6707923Z             {
2026-06-04T14:33:01.6709096Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6710994Z               "line": 1169
2026-06-04T14:33:01.6712215Z             },
2026-06-04T14:33:01.6713267Z             {
2026-06-04T14:33:01.6714483Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T14:33:01.6716021Z               "line": 18
2026-06-04T14:33:01.6717191Z             },
2026-06-04T14:33:01.6718276Z             {
2026-06-04T14:33:01.6719810Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T14:33:01.6721576Z               "line": 49
2026-06-04T14:33:01.6722788Z             },
2026-06-04T14:33:01.6723890Z             {
2026-06-04T14:33:01.6725131Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T14:33:01.6726663Z               "line": 70
2026-06-04T14:33:01.6727838Z             }
2026-06-04T14:33:01.6728901Z           ]
2026-06-04T14:33:01.6730361Z         },
2026-06-04T14:33:01.6731388Z         "int": {
2026-06-04T14:33:01.6732508Z           "complete": false,
2026-06-04T14:33:01.6733763Z           "evidence": []
2026-06-04T14:33:01.6734946Z         },
2026-06-04T14:33:01.6736053Z         "unit": {
2026-06-04T14:33:01.6737250Z           "complete": true,
2026-06-04T14:33:01.6738527Z           "evidence": [
2026-06-04T14:33:01.6740143Z             {
2026-06-04T14:33:01.6741336Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6742848Z               "line": 1758
2026-06-04T14:33:01.6751803Z             },
2026-06-04T14:33:01.6753406Z             {
2026-06-04T14:33:01.6754596Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.6756110Z               "line": 1775
2026-06-04T14:33:01.6757298Z             },
2026-06-04T14:33:01.6758481Z             {
2026-06-04T14:33:01.6759935Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T14:33:01.6761601Z               "line": 132
2026-06-04T14:33:01.6762769Z             },
2026-06-04T14:33:01.6763805Z             {
2026-06-04T14:33:01.6764998Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T14:33:01.6766506Z               "line": 141
2026-06-04T14:33:01.6767641Z             }
2026-06-04T14:33:01.6768665Z           ]
2026-06-04T14:33:01.6769891Z         }
2026-06-04T14:33:01.6771019Z       }
2026-06-04T14:33:01.6771969Z     },
2026-06-04T14:33:01.6772928Z     {
2026-06-04T14:33:01.6773929Z       "id": "REQ-PAIR-7",
2026-06-04T14:33:01.6775557Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-04T14:33:01.6777835Z       "requiredStages": [],
2026-06-04T14:33:01.6779070Z       "stages": {
2026-06-04T14:33:01.6780222Z         "doc": {
2026-06-04T14:33:01.6781354Z           "complete": false,
2026-06-04T14:33:01.6782701Z           "evidence": []
2026-06-04T14:33:01.6783900Z         },
2026-06-04T14:33:01.6784933Z         "impl": {
2026-06-04T14:33:01.6786074Z           "complete": false,
2026-06-04T14:33:01.6787371Z           "evidence": []
2026-06-04T14:33:01.6788549Z         },
2026-06-04T14:33:01.6789639Z         "int": {
2026-06-04T14:33:01.6790780Z           "complete": false,
2026-06-04T14:33:01.6792095Z           "evidence": []
2026-06-04T14:33:01.6793282Z         },
2026-06-04T14:33:01.6794295Z         "unit": {
2026-06-04T14:33:01.6795403Z           "complete": false,
2026-06-04T14:33:01.6796707Z           "evidence": []
2026-06-04T14:33:01.6797871Z         }
2026-06-04T14:33:01.6798852Z       }
2026-06-04T14:33:01.6800262Z     },
2026-06-04T14:33:01.6801265Z     {
2026-06-04T14:33:01.6802334Z       "id": "REQ-REACH-1",
2026-06-04T14:33:01.6803899Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-04T14:33:01.6805757Z       "requiredStages": [
2026-06-04T14:33:01.6806982Z         "impl",
2026-06-04T14:33:01.6808028Z         "unit"
2026-06-04T14:33:01.6809148Z       ],
2026-06-04T14:33:01.6810594Z       "stages": {
2026-06-04T14:33:01.6811722Z         "doc": {
2026-06-04T14:33:01.6812848Z           "complete": false,
2026-06-04T14:33:01.6814096Z           "evidence": []
2026-06-04T14:33:01.6815254Z         },
2026-06-04T14:33:01.6816353Z         "impl": {
2026-06-04T14:33:01.6817526Z           "complete": true,
2026-06-04T14:33:01.6818771Z           "evidence": [
2026-06-04T14:33:01.6820291Z             {
2026-06-04T14:33:01.6821576Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T14:33:01.6823179Z               "line": 133
2026-06-04T14:33:01.6824362Z             },
2026-06-04T14:33:01.6825403Z             {
2026-06-04T14:33:01.6826734Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6828325Z               "line": 76
2026-06-04T14:33:01.6829774Z             },
2026-06-04T14:33:01.6831024Z             {
2026-06-04T14:33:01.6832237Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6833808Z               "line": 209
2026-06-04T14:33:01.6835001Z             },
2026-06-04T14:33:01.6836065Z             {
2026-06-04T14:33:01.6837284Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6838839Z               "line": 386
2026-06-04T14:33:01.6840324Z             },
2026-06-04T14:33:01.6841429Z             {
2026-06-04T14:33:01.6842694Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6843189Z               "line": 484
2026-06-04T14:33:01.6843682Z             },
2026-06-04T14:33:01.6844172Z             {
2026-06-04T14:33:01.6844860Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T14:33:01.6845367Z               "line": 39
2026-06-04T14:33:01.6845861Z             },
2026-06-04T14:33:01.6846737Z             {
2026-06-04T14:33:01.6847466Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.6848007Z               "line": 217
2026-06-04T14:33:01.6848562Z             },
2026-06-04T14:33:01.6849081Z             {
2026-06-04T14:33:01.6849919Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T14:33:01.6850470Z               "line": 82
2026-06-04T14:33:01.6850984Z             },
2026-06-04T14:33:01.6851498Z             {
2026-06-04T14:33:01.6852172Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T14:33:01.6852695Z               "line": 92
2026-06-04T14:33:01.6860568Z             },
2026-06-04T14:33:01.6861177Z             {
2026-06-04T14:33:01.6861879Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6862378Z               "line": 177
2026-06-04T14:33:01.6862819Z             }
2026-06-04T14:33:01.6863263Z           ]
2026-06-04T14:33:01.6863710Z         },
2026-06-04T14:33:01.6864644Z         "int": {
2026-06-04T14:33:01.6865151Z           "complete": true,
2026-06-04T14:33:01.6865619Z           "evidence": [
2026-06-04T14:33:01.6866068Z             {
2026-06-04T14:33:01.6866766Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.6867257Z               "line": 375
2026-06-04T14:33:01.6867712Z             },
2026-06-04T14:33:01.6868144Z             {
2026-06-04T14:33:01.6868834Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.6869694Z               "line": 478
2026-06-04T14:33:01.6870278Z             },
2026-06-04T14:33:01.6870713Z             {
2026-06-04T14:33:01.6871391Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6871873Z               "line": 661
2026-06-04T14:33:01.6872304Z             },
2026-06-04T14:33:01.6872747Z             {
2026-06-04T14:33:01.6873416Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.6873906Z               "line": 755
2026-06-04T14:33:01.6874372Z             }
2026-06-04T14:33:01.6874831Z           ]
2026-06-04T14:33:01.6875291Z         },
2026-06-04T14:33:01.6875731Z         "unit": {
2026-06-04T14:33:01.6876241Z           "complete": true,
2026-06-04T14:33:01.6876718Z           "evidence": [
2026-06-04T14:33:01.6877176Z             {
2026-06-04T14:33:01.6877826Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6878329Z               "line": 585
2026-06-04T14:33:01.6878818Z             },
2026-06-04T14:33:01.6879520Z             {
2026-06-04T14:33:01.6880359Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T14:33:01.6880860Z               "line": 606
2026-06-04T14:33:01.6881317Z             },
2026-06-04T14:33:01.6881761Z             {
2026-06-04T14:33:01.6882448Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T14:33:01.6882947Z               "line": 337
2026-06-04T14:33:01.6883395Z             },
2026-06-04T14:33:01.6883845Z             {
2026-06-04T14:33:01.6884547Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T14:33:01.6885069Z               "line": 92
2026-06-04T14:33:01.6885542Z             },
2026-06-04T14:33:01.6885996Z             {
2026-06-04T14:33:01.6886668Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T14:33:01.6887158Z               "line": 176
2026-06-04T14:33:01.6887627Z             },
2026-06-04T14:33:01.6888095Z             {
2026-06-04T14:33:01.6888765Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T14:33:01.6889452Z               "line": 92
2026-06-04T14:33:01.6890095Z             },
2026-06-04T14:33:01.6890569Z             {
2026-06-04T14:33:01.6891205Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T14:33:01.6891717Z               "line": 123
2026-06-04T14:33:01.6892179Z             },
2026-06-04T14:33:01.6892662Z             {
2026-06-04T14:33:01.6893297Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.6893774Z               "line": 436
2026-06-04T14:33:01.6894579Z             },
2026-06-04T14:33:01.6895079Z             {
2026-06-04T14:33:01.6895707Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T14:33:01.6896189Z               "line": 112
2026-06-04T14:33:01.6896636Z             },
2026-06-04T14:33:01.6897082Z             {
2026-06-04T14:33:01.6897697Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T14:33:01.6898193Z               "line": 136
2026-06-04T14:33:01.6898635Z             },
2026-06-04T14:33:01.6899089Z             {
2026-06-04T14:33:01.6900102Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6900594Z               "line": 396
2026-06-04T14:33:01.6901046Z             }
2026-06-04T14:33:01.6901478Z           ]
2026-06-04T14:33:01.6901923Z         }
2026-06-04T14:33:01.6902367Z       }
2026-06-04T14:33:01.6902821Z     },
2026-06-04T14:33:01.6903256Z     {
2026-06-04T14:33:01.6903783Z       "id": "REQ-REACH-2",
2026-06-04T14:33:01.6904651Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-04T14:33:01.6905432Z       "requiredStages": [],
2026-06-04T14:33:01.6905916Z       "stages": {
2026-06-04T14:33:01.6906381Z         "doc": {
2026-06-04T14:33:01.6906904Z           "complete": false,
2026-06-04T14:33:01.6907385Z           "evidence": []
2026-06-04T14:33:01.6907884Z         },
2026-06-04T14:33:01.6908372Z         "impl": {
2026-06-04T14:33:01.6908925Z           "complete": false,
2026-06-04T14:33:01.6909680Z           "evidence": []
2026-06-04T14:33:01.6910327Z         },
2026-06-04T14:33:01.6910799Z         "int": {
2026-06-04T14:33:01.6911305Z           "complete": false,
2026-06-04T14:33:01.6911805Z           "evidence": []
2026-06-04T14:33:01.6912283Z         },
2026-06-04T14:33:01.6912766Z         "unit": {
2026-06-04T14:33:01.6913283Z           "complete": false,
2026-06-04T14:33:01.6913797Z           "evidence": []
2026-06-04T14:33:01.6914268Z         }
2026-06-04T14:33:01.6914715Z       }
2026-06-04T14:33:01.6915180Z     },
2026-06-04T14:33:01.6915645Z     {
2026-06-04T14:33:01.6916208Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-04T14:33:01.6917292Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-04T14:33:01.6917793Z       "requiredStages": [
2026-06-04T14:33:01.6918258Z         "impl",
2026-06-04T14:33:01.6918826Z         "unit"
2026-06-04T14:33:01.6919355Z       ],
2026-06-04T14:33:01.6920185Z       "stages": {
2026-06-04T14:33:01.6920641Z         "doc": {
2026-06-04T14:33:01.6921161Z           "complete": false,
2026-06-04T14:33:01.6921686Z           "evidence": []
2026-06-04T14:33:01.6922361Z         },
2026-06-04T14:33:01.6922904Z         "impl": {
2026-06-04T14:33:01.6923499Z           "complete": true,
2026-06-04T14:33:01.6924048Z           "evidence": [
2026-06-04T14:33:01.6924554Z             {
2026-06-04T14:33:01.6925238Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6925726Z               "line": 18
2026-06-04T14:33:01.6926208Z             },
2026-06-04T14:33:01.6926696Z             {
2026-06-04T14:33:01.6927399Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6927904Z               "line": 35
2026-06-04T14:33:01.6928378Z             },
2026-06-04T14:33:01.6928857Z             {
2026-06-04T14:33:01.6929619Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6930159Z               "line": 65
2026-06-04T14:33:01.6930644Z             }
2026-06-04T14:33:01.6931115Z           ]
2026-06-04T14:33:01.6931588Z         },
2026-06-04T14:33:01.6932071Z         "int": {
2026-06-04T14:33:01.6932620Z           "complete": false,
2026-06-04T14:33:01.6933132Z           "evidence": []
2026-06-04T14:33:01.6933601Z         },
2026-06-04T14:33:01.6934073Z         "unit": {
2026-06-04T14:33:01.6934609Z           "complete": true,
2026-06-04T14:33:01.6935124Z           "evidence": [
2026-06-04T14:33:01.6935591Z             {
2026-06-04T14:33:01.6936272Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6936799Z               "line": 170
2026-06-04T14:33:01.6937725Z             },
2026-06-04T14:33:01.6938239Z             {
2026-06-04T14:33:01.6938912Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6939507Z               "line": 184
2026-06-04T14:33:01.6939993Z             },
2026-06-04T14:33:01.6940469Z             {
2026-06-04T14:33:01.6941122Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.6941787Z               "line": 193
2026-06-04T14:33:01.6942243Z             }
2026-06-04T14:33:01.6942694Z           ]
2026-06-04T14:33:01.6943156Z         }
2026-06-04T14:33:01.6943642Z       }
2026-06-04T14:33:01.6944138Z     },
2026-06-04T14:33:01.6944591Z     {
2026-06-04T14:33:01.6945148Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-04T14:33:01.6945962Z       "title": "Hostable endpoint-types capability declaration",
2026-06-04T14:33:01.6946480Z       "requiredStages": [
2026-06-04T14:33:01.6946943Z         "impl",
2026-06-04T14:33:01.6947383Z         "unit"
2026-06-04T14:33:01.6948107Z       ],
2026-06-04T14:33:01.6948594Z       "stages": {
2026-06-04T14:33:01.6956167Z         "doc": {
2026-06-04T14:33:01.6956870Z           "complete": false,
2026-06-04T14:33:01.6957367Z           "evidence": []
2026-06-04T14:33:01.6957821Z         },
2026-06-04T14:33:01.6958276Z         "impl": {
2026-06-04T14:33:01.6958775Z           "complete": true,
2026-06-04T14:33:01.6959328Z           "evidence": [
2026-06-04T14:33:01.6959949Z             {
2026-06-04T14:33:01.6960646Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6961154Z               "line": 262
2026-06-04T14:33:01.6961643Z             }
2026-06-04T14:33:01.6962100Z           ]
2026-06-04T14:33:01.6962568Z         },
2026-06-04T14:33:01.6963041Z         "int": {
2026-06-04T14:33:01.6963564Z           "complete": false,
2026-06-04T14:33:01.6964070Z           "evidence": []
2026-06-04T14:33:01.6964570Z         },
2026-06-04T14:33:01.6965069Z         "unit": {
2026-06-04T14:33:01.6965605Z           "complete": true,
2026-06-04T14:33:01.6966188Z           "evidence": [
2026-06-04T14:33:01.6966663Z             {
2026-06-04T14:33:01.6967374Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.6967880Z               "line": 429
2026-06-04T14:33:01.6968360Z             }
2026-06-04T14:33:01.6968942Z           ]
2026-06-04T14:33:01.6969599Z         }
2026-06-04T14:33:01.6970054Z       }
2026-06-04T14:33:01.6970483Z     },
2026-06-04T14:33:01.6970920Z     {
2026-06-04T14:33:01.6971429Z       "id": "REQ-SEAM-HISTORY",
2026-06-04T14:33:01.6972460Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-04T14:33:01.6972983Z       "requiredStages": [
2026-06-04T14:33:01.6973438Z         "impl",
2026-06-04T14:33:01.6973909Z         "unit",
2026-06-04T14:33:01.6974381Z         "int"
2026-06-04T14:33:01.6974839Z       ],
2026-06-04T14:33:01.6975302Z       "stages": {
2026-06-04T14:33:01.6975760Z         "doc": {
2026-06-04T14:33:01.6976251Z           "complete": false,
2026-06-04T14:33:01.6976769Z           "evidence": []
2026-06-04T14:33:01.6977224Z         },
2026-06-04T14:33:01.6977682Z         "impl": {
2026-06-04T14:33:01.6978196Z           "complete": true,
2026-06-04T14:33:01.6978683Z           "evidence": [
2026-06-04T14:33:01.6979213Z             {
2026-06-04T14:33:01.6980198Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.6980900Z               "line": 24
2026-06-04T14:33:01.6981437Z             },
2026-06-04T14:33:01.6981984Z             {
2026-06-04T14:33:01.6982782Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.6983350Z               "line": 22
2026-06-04T14:33:01.6983837Z             }
2026-06-04T14:33:01.6984317Z           ]
2026-06-04T14:33:01.6984783Z         },
2026-06-04T14:33:01.6985279Z         "int": {
2026-06-04T14:33:01.6985851Z           "complete": true,
2026-06-04T14:33:01.6986418Z           "evidence": [
2026-06-04T14:33:01.6986907Z             {
2026-06-04T14:33:01.6988143Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.6988725Z               "line": 202
2026-06-04T14:33:01.6989265Z             }
2026-06-04T14:33:01.6989897Z           ]
2026-06-04T14:33:01.6990346Z         },
2026-06-04T14:33:01.6990820Z         "unit": {
2026-06-04T14:33:01.6991314Z           "complete": true,
2026-06-04T14:33:01.6991792Z           "evidence": [
2026-06-04T14:33:01.6992235Z             {
2026-06-04T14:33:01.6992859Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.6993357Z               "line": 163
2026-06-04T14:33:01.6993806Z             },
2026-06-04T14:33:01.6994252Z             {
2026-06-04T14:33:01.6994866Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.6995376Z               "line": 186
2026-06-04T14:33:01.6995852Z             },
2026-06-04T14:33:01.6996324Z             {
2026-06-04T14:33:01.6996968Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T14:33:01.6997455Z               "line": 195
2026-06-04T14:33:01.6998237Z             },
2026-06-04T14:33:01.6998752Z             {
2026-06-04T14:33:01.6999680Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7000349Z               "line": 195
2026-06-04T14:33:01.7000802Z             },
2026-06-04T14:33:01.7001270Z             {
2026-06-04T14:33:01.7001914Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7002419Z               "line": 209
2026-06-04T14:33:01.7002890Z             },
2026-06-04T14:33:01.7003355Z             {
2026-06-04T14:33:01.7004017Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7004498Z               "line": 228
2026-06-04T14:33:01.7004960Z             },
2026-06-04T14:33:01.7005399Z             {
2026-06-04T14:33:01.7006044Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7006516Z               "line": 248
2026-06-04T14:33:01.7006975Z             },
2026-06-04T14:33:01.7007433Z             {
2026-06-04T14:33:01.7008108Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7008658Z               "line": 264
2026-06-04T14:33:01.7009130Z             },
2026-06-04T14:33:01.7009967Z             {
2026-06-04T14:33:01.7010620Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T14:33:01.7011108Z               "line": 279
2026-06-04T14:33:01.7011557Z             }
2026-06-04T14:33:01.7011997Z           ]
2026-06-04T14:33:01.7012441Z         }
2026-06-04T14:33:01.7012882Z       }
2026-06-04T14:33:01.7013340Z     },
2026-06-04T14:33:01.7013791Z     {
2026-06-04T14:33:01.7014330Z       "id": "REQ-SEAM-INJECT",
2026-06-04T14:33:01.7015254Z       "title": "inject-input methods configurable per activity-state",
2026-06-04T14:33:01.7015764Z       "requiredStages": [
2026-06-04T14:33:01.7016218Z         "impl",
2026-06-04T14:33:01.7016660Z         "unit"
2026-06-04T14:33:01.7017101Z       ],
2026-06-04T14:33:01.7017550Z       "stages": {
2026-06-04T14:33:01.7018003Z         "doc": {
2026-06-04T14:33:01.7018539Z           "complete": false,
2026-06-04T14:33:01.7019033Z           "evidence": []
2026-06-04T14:33:01.7019752Z         },
2026-06-04T14:33:01.7020425Z         "impl": {
2026-06-04T14:33:01.7020956Z           "complete": true,
2026-06-04T14:33:01.7021442Z           "evidence": [
2026-06-04T14:33:01.7021911Z             {
2026-06-04T14:33:01.7022593Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.7023075Z               "line": 19
2026-06-04T14:33:01.7023539Z             },
2026-06-04T14:33:01.7024004Z             {
2026-06-04T14:33:01.7024653Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.7025130Z               "line": 104
2026-06-04T14:33:01.7025578Z             }
2026-06-04T14:33:01.7026031Z           ]
2026-06-04T14:33:01.7026470Z         },
2026-06-04T14:33:01.7026931Z         "int": {
2026-06-04T14:33:01.7027441Z           "complete": false,
2026-06-04T14:33:01.7027934Z           "evidence": []
2026-06-04T14:33:01.7028392Z         },
2026-06-04T14:33:01.7028876Z         "unit": {
2026-06-04T14:33:01.7030045Z           "complete": true,
2026-06-04T14:33:01.7030579Z           "evidence": [
2026-06-04T14:33:01.7031035Z             {
2026-06-04T14:33:01.7031729Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.7032251Z               "line": 222
2026-06-04T14:33:01.7032739Z             },
2026-06-04T14:33:01.7033201Z             {
2026-06-04T14:33:01.7033856Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T14:33:01.7034347Z               "line": 236
2026-06-04T14:33:01.7034800Z             }
2026-06-04T14:33:01.7035245Z           ]
2026-06-04T14:33:01.7035694Z         }
2026-06-04T14:33:01.7036138Z       }
2026-06-04T14:33:01.7036587Z     },
2026-06-04T14:33:01.7037083Z     {
2026-06-04T14:33:01.7037626Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-04T14:33:01.7038402Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-04T14:33:01.7038925Z       "requiredStages": [
2026-06-04T14:33:01.7040057Z         "impl",
2026-06-04T14:33:01.7040537Z         "unit"
2026-06-04T14:33:01.7041019Z       ],
2026-06-04T14:33:01.7041485Z       "stages": {
2026-06-04T14:33:01.7041936Z         "doc": {
2026-06-04T14:33:01.7042441Z           "complete": false,
2026-06-04T14:33:01.7042926Z           "evidence": []
2026-06-04T14:33:01.7043390Z         },
2026-06-04T14:33:01.7043867Z         "impl": {
2026-06-04T14:33:01.7051504Z           "complete": true,
2026-06-04T14:33:01.7052113Z           "evidence": [
2026-06-04T14:33:01.7052555Z             {
2026-06-04T14:33:01.7054298Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7054889Z               "line": 18
2026-06-04T14:33:01.7055379Z             },
2026-06-04T14:33:01.7055838Z             {
2026-06-04T14:33:01.7056508Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7057014Z               "line": 304
2026-06-04T14:33:01.7057470Z             }
2026-06-04T14:33:01.7057927Z           ]
2026-06-04T14:33:01.7058436Z         },
2026-06-04T14:33:01.7058933Z         "int": {
2026-06-04T14:33:01.7059633Z           "complete": false,
2026-06-04T14:33:01.7060150Z           "evidence": []
2026-06-04T14:33:01.7060621Z         },
2026-06-04T14:33:01.7061097Z         "unit": {
2026-06-04T14:33:01.7061630Z           "complete": true,
2026-06-04T14:33:01.7062144Z           "evidence": [
2026-06-04T14:33:01.7062600Z             {
2026-06-04T14:33:01.7063285Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7063805Z               "line": 526
2026-06-04T14:33:01.7064272Z             },
2026-06-04T14:33:01.7064720Z             {
2026-06-04T14:33:01.7065369Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7065855Z               "line": 536
2026-06-04T14:33:01.7066326Z             }
2026-06-04T14:33:01.7066782Z           ]
2026-06-04T14:33:01.7067236Z         }
2026-06-04T14:33:01.7067686Z       }
2026-06-04T14:33:01.7068132Z     },
2026-06-04T14:33:01.7068590Z     {
2026-06-04T14:33:01.7069148Z       "id": "REQ-SEAM-PSYCHE",
2026-06-04T14:33:01.7070200Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-04T14:33:01.7070711Z       "requiredStages": [
2026-06-04T14:33:01.7071177Z         "impl",
2026-06-04T14:33:01.7071631Z         "unit",
2026-06-04T14:33:01.7072068Z         "int"
2026-06-04T14:33:01.7072514Z       ],
2026-06-04T14:33:01.7072957Z       "stages": {
2026-06-04T14:33:01.7073402Z         "doc": {
2026-06-04T14:33:01.7073889Z           "complete": false,
2026-06-04T14:33:01.7074397Z           "evidence": []
2026-06-04T14:33:01.7074848Z         },
2026-06-04T14:33:01.7075306Z         "impl": {
2026-06-04T14:33:01.7075810Z           "complete": true,
2026-06-04T14:33:01.7076281Z           "evidence": [
2026-06-04T14:33:01.7076747Z             {
2026-06-04T14:33:01.7077384Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T14:33:01.7077859Z               "line": 19
2026-06-04T14:33:01.7078299Z             },
2026-06-04T14:33:01.7078733Z             {
2026-06-04T14:33:01.7080002Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T14:33:01.7080537Z               "line": 12
2026-06-04T14:33:01.7081013Z             },
2026-06-04T14:33:01.7081468Z             {
2026-06-04T14:33:01.7082141Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7082650Z               "line": 204
2026-06-04T14:33:01.7083114Z             }
2026-06-04T14:33:01.7083577Z           ]
2026-06-04T14:33:01.7084032Z         },
2026-06-04T14:33:01.7084525Z         "int": {
2026-06-04T14:33:01.7085037Z           "complete": true,
2026-06-04T14:33:01.7085541Z           "evidence": [
2026-06-04T14:33:01.7086019Z             {
2026-06-04T14:33:01.7086695Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.7087191Z               "line": 201
2026-06-04T14:33:01.7087646Z             }
2026-06-04T14:33:01.7088106Z           ]
2026-06-04T14:33:01.7088556Z         },
2026-06-04T14:33:01.7089040Z         "unit": {
2026-06-04T14:33:01.7090098Z           "complete": true,
2026-06-04T14:33:01.7090602Z           "evidence": [
2026-06-04T14:33:01.7091059Z             {
2026-06-04T14:33:01.7091688Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T14:33:01.7092173Z               "line": 161
2026-06-04T14:33:01.7092613Z             },
2026-06-04T14:33:01.7093078Z             {
2026-06-04T14:33:01.7093724Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T14:33:01.7094202Z               "line": 168
2026-06-04T14:33:01.7094661Z             },
2026-06-04T14:33:01.7095101Z             {
2026-06-04T14:33:01.7095726Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T14:33:01.7096194Z               "line": 191
2026-06-04T14:33:01.7096656Z             },
2026-06-04T14:33:01.7097103Z             {
2026-06-04T14:33:01.7097715Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T14:33:01.7098206Z               "line": 106
2026-06-04T14:33:01.7098643Z             },
2026-06-04T14:33:01.7099090Z             {
2026-06-04T14:33:01.7100167Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T14:33:01.7100699Z               "line": 123
2026-06-04T14:33:01.7101180Z             },
2026-06-04T14:33:01.7101636Z             {
2026-06-04T14:33:01.7102291Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T14:33:01.7102785Z               "line": 137
2026-06-04T14:33:01.7103246Z             }
2026-06-04T14:33:01.7103688Z           ]
2026-06-04T14:33:01.7104155Z         }
2026-06-04T14:33:01.7104610Z       }
2026-06-04T14:33:01.7105044Z     },
2026-06-04T14:33:01.7105499Z     {
2026-06-04T14:33:01.7106025Z       "id": "REQ-SEAM-RESUME",
2026-06-04T14:33:01.7107077Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-04T14:33:01.7107592Z       "requiredStages": [
2026-06-04T14:33:01.7108070Z         "impl",
2026-06-04T14:33:01.7108666Z         "unit"
2026-06-04T14:33:01.7109111Z       ],
2026-06-04T14:33:01.7109820Z       "stages": {
2026-06-04T14:33:01.7110433Z         "doc": {
2026-06-04T14:33:01.7110956Z           "complete": false,
2026-06-04T14:33:01.7111439Z           "evidence": []
2026-06-04T14:33:01.7111879Z         },
2026-06-04T14:33:01.7112336Z         "impl": {
2026-06-04T14:33:01.7112827Z           "complete": true,
2026-06-04T14:33:01.7113318Z           "evidence": [
2026-06-04T14:33:01.7113775Z             {
2026-06-04T14:33:01.7114428Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.7114891Z               "line": 19
2026-06-04T14:33:01.7115360Z             }
2026-06-04T14:33:01.7115817Z           ]
2026-06-04T14:33:01.7116258Z         },
2026-06-04T14:33:01.7116732Z         "int": {
2026-06-04T14:33:01.7117301Z           "complete": false,
2026-06-04T14:33:01.7117803Z           "evidence": []
2026-06-04T14:33:01.7118249Z         },
2026-06-04T14:33:01.7118745Z         "unit": {
2026-06-04T14:33:01.7119494Z           "complete": true,
2026-06-04T14:33:01.7120142Z           "evidence": [
2026-06-04T14:33:01.7120609Z             {
2026-06-04T14:33:01.7121535Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.7122078Z               "line": 168
2026-06-04T14:33:01.7122536Z             },
2026-06-04T14:33:01.7123005Z             {
2026-06-04T14:33:01.7123643Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.7124135Z               "line": 187
2026-06-04T14:33:01.7124598Z             },
2026-06-04T14:33:01.7125045Z             {
2026-06-04T14:33:01.7125698Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T14:33:01.7126208Z               "line": 205
2026-06-04T14:33:01.7126674Z             }
2026-06-04T14:33:01.7127132Z           ]
2026-06-04T14:33:01.7127578Z         }
2026-06-04T14:33:01.7128032Z       }
2026-06-04T14:33:01.7128480Z     },
2026-06-04T14:33:01.7128936Z     {
2026-06-04T14:33:01.7129677Z       "id": "REQ-SEAM-SPAWN",
2026-06-04T14:33:01.7130413Z       "title": "spawn-session seam",
2026-06-04T14:33:01.7130965Z       "requiredStages": [
2026-06-04T14:33:01.7131707Z         "impl",
2026-06-04T14:33:01.7132190Z         "unit"
2026-06-04T14:33:01.7132642Z       ],
2026-06-04T14:33:01.7133129Z       "stages": {
2026-06-04T14:33:01.7133584Z         "doc": {
2026-06-04T14:33:01.7134107Z           "complete": false,
2026-06-04T14:33:01.7134615Z           "evidence": []
2026-06-04T14:33:01.7135076Z         },
2026-06-04T14:33:01.7135548Z         "impl": {
2026-06-04T14:33:01.7136037Z           "complete": true,
2026-06-04T14:33:01.7136522Z           "evidence": [
2026-06-04T14:33:01.7136969Z             {
2026-06-04T14:33:01.7137671Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7145441Z               "line": 20
2026-06-04T14:33:01.7146053Z             }
2026-06-04T14:33:01.7146533Z           ]
2026-06-04T14:33:01.7146981Z         },
2026-06-04T14:33:01.7147467Z         "int": {
2026-06-04T14:33:01.7147979Z           "complete": false,
2026-06-04T14:33:01.7148503Z           "evidence": []
2026-06-04T14:33:01.7148975Z         },
2026-06-04T14:33:01.7149664Z         "unit": {
2026-06-04T14:33:01.7150344Z           "complete": true,
2026-06-04T14:33:01.7150830Z           "evidence": [
2026-06-04T14:33:01.7151290Z             {
2026-06-04T14:33:01.7151978Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7152477Z               "line": 397
2026-06-04T14:33:01.7152937Z             },
2026-06-04T14:33:01.7153381Z             {
2026-06-04T14:33:01.7154062Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7154544Z               "line": 404
2026-06-04T14:33:01.7155009Z             },
2026-06-04T14:33:01.7155468Z             {
2026-06-04T14:33:01.7156199Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7156695Z               "line": 414
2026-06-04T14:33:01.7157155Z             },
2026-06-04T14:33:01.7157613Z             {
2026-06-04T14:33:01.7158276Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7158780Z               "line": 420
2026-06-04T14:33:01.7159360Z             },
2026-06-04T14:33:01.7160188Z             {
2026-06-04T14:33:01.7160892Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7161388Z               "line": 440
2026-06-04T14:33:01.7161861Z             },
2026-06-04T14:33:01.7162305Z             {
2026-06-04T14:33:01.7162988Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T14:33:01.7163464Z               "line": 473
2026-06-04T14:33:01.7163894Z             }
2026-06-04T14:33:01.7164354Z           ]
2026-06-04T14:33:01.7164823Z         }
2026-06-04T14:33:01.7165283Z       }
2026-06-04T14:33:01.7165731Z     },
2026-06-04T14:33:01.7166191Z     {
2026-06-04T14:33:01.7166712Z       "id": "REQ-SEAM-UPDATE",
2026-06-04T14:33:01.7167638Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-04T14:33:01.7168164Z       "requiredStages": [
2026-06-04T14:33:01.7168620Z         "impl",
2026-06-04T14:33:01.7169083Z         "unit"
2026-06-04T14:33:01.7169816Z       ],
2026-06-04T14:33:01.7171020Z       "stages": {
2026-06-04T14:33:01.7171560Z         "doc": {
2026-06-04T14:33:01.7172098Z           "complete": false,
2026-06-04T14:33:01.7172622Z           "evidence": []
2026-06-04T14:33:01.7173065Z         },
2026-06-04T14:33:01.7173548Z         "impl": {
2026-06-04T14:33:01.7174033Z           "complete": true,
2026-06-04T14:33:01.7174521Z           "evidence": [
2026-06-04T14:33:01.7174976Z             {
2026-06-04T14:33:01.7175749Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7176245Z               "line": 28
2026-06-04T14:33:01.7176704Z             },
2026-06-04T14:33:01.7177159Z             {
2026-06-04T14:33:01.7177923Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7178435Z               "line": 83
2026-06-04T14:33:01.7178899Z             }
2026-06-04T14:33:01.7179417Z           ]
2026-06-04T14:33:01.7180101Z         },
2026-06-04T14:33:01.7180754Z         "int": {
2026-06-04T14:33:01.7181602Z           "complete": false,
2026-06-04T14:33:01.7182093Z           "evidence": []
2026-06-04T14:33:01.7182553Z         },
2026-06-04T14:33:01.7183042Z         "unit": {
2026-06-04T14:33:01.7183573Z           "complete": true,
2026-06-04T14:33:01.7184070Z           "evidence": [
2026-06-04T14:33:01.7184540Z             {
2026-06-04T14:33:01.7185379Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7185870Z               "line": 248
2026-06-04T14:33:01.7186332Z             },
2026-06-04T14:33:01.7186815Z             {
2026-06-04T14:33:01.7187529Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7188033Z               "line": 259
2026-06-04T14:33:01.7188488Z             }
2026-06-04T14:33:01.7188956Z           ]
2026-06-04T14:33:01.7189657Z         }
2026-06-04T14:33:01.7190185Z       }
2026-06-04T14:33:01.7190696Z     },
2026-06-04T14:33:01.7191159Z     {
2026-06-04T14:33:01.7191685Z       "id": "REQ-SEC-1",
2026-06-04T14:33:01.7194226Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-04T14:33:01.7194819Z       "requiredStages": [
2026-06-04T14:33:01.7195301Z         "impl",
2026-06-04T14:33:01.7195789Z         "unit"
2026-06-04T14:33:01.7196362Z       ],
2026-06-04T14:33:01.7196829Z       "stages": {
2026-06-04T14:33:01.7197302Z         "doc": {
2026-06-04T14:33:01.7197814Z           "complete": false,
2026-06-04T14:33:01.7198318Z           "evidence": []
2026-06-04T14:33:01.7198783Z         },
2026-06-04T14:33:01.7199382Z         "impl": {
2026-06-04T14:33:01.7200096Z           "complete": true,
2026-06-04T14:33:01.7200579Z           "evidence": [
2026-06-04T14:33:01.7201037Z             {
2026-06-04T14:33:01.7201699Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7202201Z               "line": 84
2026-06-04T14:33:01.7202664Z             },
2026-06-04T14:33:01.7203134Z             {
2026-06-04T14:33:01.7203870Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7204366Z               "line": 114
2026-06-04T14:33:01.7204832Z             },
2026-06-04T14:33:01.7205283Z             {
2026-06-04T14:33:01.7205944Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7206436Z               "line": 128
2026-06-04T14:33:01.7206887Z             },
2026-06-04T14:33:01.7207343Z             {
2026-06-04T14:33:01.7207999Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7208501Z               "line": 108
2026-06-04T14:33:01.7208949Z             },
2026-06-04T14:33:01.7209645Z             {
2026-06-04T14:33:01.7210422Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7210920Z               "line": 129
2026-06-04T14:33:01.7211401Z             },
2026-06-04T14:33:01.7211847Z             {
2026-06-04T14:33:01.7212507Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7213016Z               "line": 142
2026-06-04T14:33:01.7213816Z             },
2026-06-04T14:33:01.7214334Z             {
2026-06-04T14:33:01.7214992Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7215498Z               "line": 208
2026-06-04T14:33:01.7215984Z             },
2026-06-04T14:33:01.7216468Z             {
2026-06-04T14:33:01.7217105Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7217606Z               "line": 234
2026-06-04T14:33:01.7218057Z             },
2026-06-04T14:33:01.7218515Z             {
2026-06-04T14:33:01.7219098Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.7219968Z               "line": 1208
2026-06-04T14:33:01.7220441Z             }
2026-06-04T14:33:01.7220889Z           ]
2026-06-04T14:33:01.7221343Z         },
2026-06-04T14:33:01.7221787Z         "int": {
2026-06-04T14:33:01.7222307Z           "complete": false,
2026-06-04T14:33:01.7222811Z           "evidence": []
2026-06-04T14:33:01.7223250Z         },
2026-06-04T14:33:01.7224020Z         "unit": {
2026-06-04T14:33:01.7224540Z           "complete": true,
2026-06-04T14:33:01.7225030Z           "evidence": [
2026-06-04T14:33:01.7225492Z             {
2026-06-04T14:33:01.7226170Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7226672Z               "line": 140
2026-06-04T14:33:01.7227120Z             },
2026-06-04T14:33:01.7227573Z             {
2026-06-04T14:33:01.7228249Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7228744Z               "line": 186
2026-06-04T14:33:01.7229263Z             },
2026-06-04T14:33:01.7229927Z             {
2026-06-04T14:33:01.7230788Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T14:33:01.7231272Z               "line": 218
2026-06-04T14:33:01.7231733Z             },
2026-06-04T14:33:01.7232175Z             {
2026-06-04T14:33:01.7232856Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-04T14:33:01.7233346Z               "line": 128
2026-06-04T14:33:01.7233851Z             },
2026-06-04T14:33:01.7234361Z             {
2026-06-04T14:33:01.7235077Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7235801Z               "line": 248
2026-06-04T14:33:01.7243855Z             },
2026-06-04T14:33:01.7244506Z             {
2026-06-04T14:33:01.7245179Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7245648Z               "line": 275
2026-06-04T14:33:01.7246098Z             },
2026-06-04T14:33:01.7246532Z             {
2026-06-04T14:33:01.7247162Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7247648Z               "line": 299
2026-06-04T14:33:01.7248109Z             },
2026-06-04T14:33:01.7248566Z             {
2026-06-04T14:33:01.7249482Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7250163Z               "line": 310
2026-06-04T14:33:01.7250622Z             },
2026-06-04T14:33:01.7251073Z             {
2026-06-04T14:33:01.7251793Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7252303Z               "line": 334
2026-06-04T14:33:01.7252784Z             },
2026-06-04T14:33:01.7253238Z             {
2026-06-04T14:33:01.7253889Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T14:33:01.7254369Z               "line": 350
2026-06-04T14:33:01.7254827Z             },
2026-06-04T14:33:01.7255270Z             {
2026-06-04T14:33:01.7255837Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.7256314Z               "line": 1489
2026-06-04T14:33:01.7256760Z             }
2026-06-04T14:33:01.7257204Z           ]
2026-06-04T14:33:01.7257643Z         }
2026-06-04T14:33:01.7258098Z       }
2026-06-04T14:33:01.7258539Z     },
2026-06-04T14:33:01.7259097Z     {
2026-06-04T14:33:01.7260002Z       "id": "REQ-START-1",
2026-06-04T14:33:01.7261137Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-04T14:33:01.7261652Z       "requiredStages": [
2026-06-04T14:33:01.7262126Z         "impl",
2026-06-04T14:33:01.7263029Z         "unit"
2026-06-04T14:33:01.7263535Z       ],
2026-06-04T14:33:01.7264019Z       "stages": {
2026-06-04T14:33:01.7264502Z         "doc": {
2026-06-04T14:33:01.7265012Z           "complete": false,
2026-06-04T14:33:01.7265546Z           "evidence": []
2026-06-04T14:33:01.7265999Z         },
2026-06-04T14:33:01.7266475Z         "impl": {
2026-06-04T14:33:01.7266959Z           "complete": true,
2026-06-04T14:33:01.7267455Z           "evidence": [
2026-06-04T14:33:01.7267913Z             {
2026-06-04T14:33:01.7268541Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T14:33:01.7269021Z               "line": 16
2026-06-04T14:33:01.7269691Z             }
2026-06-04T14:33:01.7270172Z           ]
2026-06-04T14:33:01.7270630Z         },
2026-06-04T14:33:01.7271113Z         "int": {
2026-06-04T14:33:01.7271638Z           "complete": false,
2026-06-04T14:33:01.7272131Z           "evidence": []
2026-06-04T14:33:01.7272595Z         },
2026-06-04T14:33:01.7273407Z         "unit": {
2026-06-04T14:33:01.7273951Z           "complete": true,
2026-06-04T14:33:01.7274432Z           "evidence": [
2026-06-04T14:33:01.7274911Z             {
2026-06-04T14:33:01.7275596Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T14:33:01.7276116Z               "line": 43
2026-06-04T14:33:01.7276595Z             },
2026-06-04T14:33:01.7277057Z             {
2026-06-04T14:33:01.7277707Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T14:33:01.7278208Z               "line": 59
2026-06-04T14:33:01.7278678Z             }
2026-06-04T14:33:01.7279252Z           ]
2026-06-04T14:33:01.7279731Z         }
2026-06-04T14:33:01.7280205Z       }
2026-06-04T14:33:01.7280652Z     },
2026-06-04T14:33:01.7281121Z     {
2026-06-04T14:33:01.7281637Z       "id": "REQ-START-2",
2026-06-04T14:33:01.7282469Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-04T14:33:01.7283003Z       "requiredStages": [
2026-06-04T14:33:01.7283494Z         "impl",
2026-06-04T14:33:01.7283988Z         "unit",
2026-06-04T14:33:01.7284447Z         "int"
2026-06-04T14:33:01.7284891Z       ],
2026-06-04T14:33:01.7285350Z       "stages": {
2026-06-04T14:33:01.7285822Z         "doc": {
2026-06-04T14:33:01.7286352Z           "complete": false,
2026-06-04T14:33:01.7286858Z           "evidence": []
2026-06-04T14:33:01.7287339Z         },
2026-06-04T14:33:01.7287858Z         "impl": {
2026-06-04T14:33:01.7288389Z           "complete": true,
2026-06-04T14:33:01.7288883Z           "evidence": [
2026-06-04T14:33:01.7289442Z             {
2026-06-04T14:33:01.7290283Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7290754Z               "line": 16
2026-06-04T14:33:01.7291212Z             },
2026-06-04T14:33:01.7291647Z             {
2026-06-04T14:33:01.7292272Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7292737Z               "line": 97
2026-06-04T14:33:01.7293185Z             },
2026-06-04T14:33:01.7293646Z             {
2026-06-04T14:33:01.7294267Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7294742Z               "line": 203
2026-06-04T14:33:01.7295173Z             }
2026-06-04T14:33:01.7295621Z           ]
2026-06-04T14:33:01.7296061Z         },
2026-06-04T14:33:01.7296527Z         "int": {
2026-06-04T14:33:01.7297018Z           "complete": true,
2026-06-04T14:33:01.7297489Z           "evidence": [
2026-06-04T14:33:01.7297953Z             {
2026-06-04T14:33:01.7298741Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.7299295Z               "line": 150
2026-06-04T14:33:01.7299773Z             }
2026-06-04T14:33:01.7300293Z           ]
2026-06-04T14:33:01.7300772Z         },
2026-06-04T14:33:01.7301258Z         "unit": {
2026-06-04T14:33:01.7301787Z           "complete": true,
2026-06-04T14:33:01.7302275Z           "evidence": [
2026-06-04T14:33:01.7302740Z             {
2026-06-04T14:33:01.7303370Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7304171Z               "line": 411
2026-06-04T14:33:01.7304674Z             },
2026-06-04T14:33:01.7305117Z             {
2026-06-04T14:33:01.7305759Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7306228Z               "line": 444
2026-06-04T14:33:01.7306672Z             }
2026-06-04T14:33:01.7307105Z           ]
2026-06-04T14:33:01.7307549Z         }
2026-06-04T14:33:01.7308004Z       }
2026-06-04T14:33:01.7308450Z     },
2026-06-04T14:33:01.7308893Z     {
2026-06-04T14:33:01.7309621Z       "id": "REQ-START-3",
2026-06-04T14:33:01.7310777Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-04T14:33:01.7311272Z       "requiredStages": [
2026-06-04T14:33:01.7311725Z         "impl",
2026-06-04T14:33:01.7312181Z         "unit",
2026-06-04T14:33:01.7312618Z         "int"
2026-06-04T14:33:01.7313061Z       ],
2026-06-04T14:33:01.7313537Z       "stages": {
2026-06-04T14:33:01.7313982Z         "doc": {
2026-06-04T14:33:01.7314753Z           "complete": false,
2026-06-04T14:33:01.7315271Z           "evidence": []
2026-06-04T14:33:01.7315717Z         },
2026-06-04T14:33:01.7316167Z         "impl": {
2026-06-04T14:33:01.7316673Z           "complete": true,
2026-06-04T14:33:01.7317154Z           "evidence": [
2026-06-04T14:33:01.7317620Z             {
2026-06-04T14:33:01.7318328Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7318857Z               "line": 23
2026-06-04T14:33:01.7319537Z             },
2026-06-04T14:33:01.7320044Z             {
2026-06-04T14:33:01.7320762Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7321273Z               "line": 167
2026-06-04T14:33:01.7321749Z             },
2026-06-04T14:33:01.7322219Z             {
2026-06-04T14:33:01.7322925Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7323448Z               "line": 180
2026-06-04T14:33:01.7323918Z             },
2026-06-04T14:33:01.7324398Z             {
2026-06-04T14:33:01.7325108Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7325634Z               "line": 17
2026-06-04T14:33:01.7326109Z             },
2026-06-04T14:33:01.7326605Z             {
2026-06-04T14:33:01.7327273Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7327810Z               "line": 43
2026-06-04T14:33:01.7328305Z             },
2026-06-04T14:33:01.7328763Z             {
2026-06-04T14:33:01.7329522Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7330168Z               "line": 98
2026-06-04T14:33:01.7337496Z             }
2026-06-04T14:33:01.7338127Z           ]
2026-06-04T14:33:01.7338565Z         },
2026-06-04T14:33:01.7339045Z         "int": {
2026-06-04T14:33:01.7339851Z           "complete": true,
2026-06-04T14:33:01.7340493Z           "evidence": [
2026-06-04T14:33:01.7340934Z             {
2026-06-04T14:33:01.7341625Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T14:33:01.7342113Z               "line": 321
2026-06-04T14:33:01.7342624Z             }
2026-06-04T14:33:01.7343091Z           ]
2026-06-04T14:33:01.7343544Z         },
2026-06-04T14:33:01.7344018Z         "unit": {
2026-06-04T14:33:01.7344514Z           "complete": true,
2026-06-04T14:33:01.7345005Z           "evidence": [
2026-06-04T14:33:01.7345469Z             {
2026-06-04T14:33:01.7346143Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7346641Z               "line": 245
2026-06-04T14:33:01.7347091Z             },
2026-06-04T14:33:01.7347556Z             {
2026-06-04T14:33:01.7348223Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7348740Z               "line": 263
2026-06-04T14:33:01.7349456Z             },
2026-06-04T14:33:01.7349968Z             {
2026-06-04T14:33:01.7350774Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T14:33:01.7351348Z               "line": 273
2026-06-04T14:33:01.7351927Z             },
2026-06-04T14:33:01.7352470Z             {
2026-06-04T14:33:01.7353656Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7354260Z               "line": 412
2026-06-04T14:33:01.7354752Z             },
2026-06-04T14:33:01.7355260Z             {
2026-06-04T14:33:01.7355912Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7356418Z               "line": 445
2026-06-04T14:33:01.7356891Z             },
2026-06-04T14:33:01.7357336Z             {
2026-06-04T14:33:01.7357987Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T14:33:01.7358483Z               "line": 453
2026-06-04T14:33:01.7358958Z             }
2026-06-04T14:33:01.7359495Z           ]
2026-06-04T14:33:01.7359973Z         }
2026-06-04T14:33:01.7360452Z       }
2026-06-04T14:33:01.7360914Z     },
2026-06-04T14:33:01.7361380Z     {
2026-06-04T14:33:01.7361903Z       "id": "REQ-START-4",
2026-06-04T14:33:01.7362712Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-04T14:33:01.7363238Z       "requiredStages": [
2026-06-04T14:33:01.7364050Z         "impl",
2026-06-04T14:33:01.7364538Z         "unit"
2026-06-04T14:33:01.7365001Z       ],
2026-06-04T14:33:01.7365495Z       "stages": {
2026-06-04T14:33:01.7365960Z         "doc": {
2026-06-04T14:33:01.7366490Z           "complete": false,
2026-06-04T14:33:01.7366986Z           "evidence": []
2026-06-04T14:33:01.7367468Z         },
2026-06-04T14:33:01.7367965Z         "impl": {
2026-06-04T14:33:01.7368482Z           "complete": true,
2026-06-04T14:33:01.7368996Z           "evidence": [
2026-06-04T14:33:01.7369552Z             {
2026-06-04T14:33:01.7370400Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.7370889Z               "line": 249
2026-06-04T14:33:01.7371346Z             }
2026-06-04T14:33:01.7371812Z           ]
2026-06-04T14:33:01.7372273Z         },
2026-06-04T14:33:01.7372738Z         "int": {
2026-06-04T14:33:01.7373231Z           "complete": false,
2026-06-04T14:33:01.7373714Z           "evidence": []
2026-06-04T14:33:01.7374177Z         },
2026-06-04T14:33:01.7374645Z         "unit": {
2026-06-04T14:33:01.7375145Z           "complete": true,
2026-06-04T14:33:01.7375628Z           "evidence": [
2026-06-04T14:33:01.7376082Z             {
2026-06-04T14:33:01.7376743Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T14:33:01.7377228Z               "line": 442
2026-06-04T14:33:01.7377661Z             }
2026-06-04T14:33:01.7378114Z           ]
2026-06-04T14:33:01.7378543Z         }
2026-06-04T14:33:01.7379002Z       }
2026-06-04T14:33:01.7379529Z     },
2026-06-04T14:33:01.7379975Z     {
2026-06-04T14:33:01.7380485Z       "id": "REQ-STORE-1",
2026-06-04T14:33:01.7385803Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-04T14:33:01.7386406Z       "requiredStages": [
2026-06-04T14:33:01.7386882Z         "impl",
2026-06-04T14:33:01.7387339Z         "unit"
2026-06-04T14:33:01.7387794Z       ],
2026-06-04T14:33:01.7388255Z       "stages": {
2026-06-04T14:33:01.7388709Z         "doc": {
2026-06-04T14:33:01.7389298Z           "complete": false,
2026-06-04T14:33:01.7389952Z           "evidence": []
2026-06-04T14:33:01.7390572Z         },
2026-06-04T14:33:01.7391011Z         "impl": {
2026-06-04T14:33:01.7391502Z           "complete": true,
2026-06-04T14:33:01.7391956Z           "evidence": [
2026-06-04T14:33:01.7392404Z             {
2026-06-04T14:33:01.7393099Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7393554Z               "line": 23
2026-06-04T14:33:01.7394006Z             },
2026-06-04T14:33:01.7394444Z             {
2026-06-04T14:33:01.7395136Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7395601Z               "line": 46
2026-06-04T14:33:01.7396045Z             },
2026-06-04T14:33:01.7396509Z             {
2026-06-04T14:33:01.7397492Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7398011Z               "line": 88
2026-06-04T14:33:01.7398454Z             },
2026-06-04T14:33:01.7398902Z             {
2026-06-04T14:33:01.7399803Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7400315Z               "line": 109
2026-06-04T14:33:01.7400782Z             },
2026-06-04T14:33:01.7401240Z             {
2026-06-04T14:33:01.7401946Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7402426Z               "line": 152
2026-06-04T14:33:01.7402891Z             },
2026-06-04T14:33:01.7403345Z             {
2026-06-04T14:33:01.7404064Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7404561Z               "line": 165
2026-06-04T14:33:01.7405010Z             },
2026-06-04T14:33:01.7405465Z             {
2026-06-04T14:33:01.7406168Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7406938Z               "line": 353
2026-06-04T14:33:01.7407403Z             },
2026-06-04T14:33:01.7407869Z             {
2026-06-04T14:33:01.7408588Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7409073Z               "line": 25
2026-06-04T14:33:01.7409731Z             },
2026-06-04T14:33:01.7410177Z             {
2026-06-04T14:33:01.7410886Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7411364Z               "line": 92
2026-06-04T14:33:01.7411812Z             },
2026-06-04T14:33:01.7412262Z             {
2026-06-04T14:33:01.7412963Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7413474Z               "line": 117
2026-06-04T14:33:01.7413944Z             },
2026-06-04T14:33:01.7414424Z             {
2026-06-04T14:33:01.7415204Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7415718Z               "line": 131
2026-06-04T14:33:01.7416223Z             },
2026-06-04T14:33:01.7416695Z             {
2026-06-04T14:33:01.7417406Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7417890Z               "line": 145
2026-06-04T14:33:01.7418338Z             },
2026-06-04T14:33:01.7418789Z             {
2026-06-04T14:33:01.7419723Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7420376Z               "line": 154
2026-06-04T14:33:01.7420832Z             },
2026-06-04T14:33:01.7421284Z             {
2026-06-04T14:33:01.7421944Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T14:33:01.7422444Z               "line": 16
2026-06-04T14:33:01.7422927Z             },
2026-06-04T14:33:01.7423403Z             {
2026-06-04T14:33:01.7424080Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T14:33:01.7424565Z               "line": 63
2026-06-04T14:33:01.7425025Z             }
2026-06-04T14:33:01.7425489Z           ]
2026-06-04T14:33:01.7425967Z         },
2026-06-04T14:33:01.7426456Z         "int": {
2026-06-04T14:33:01.7426952Z           "complete": false,
2026-06-04T14:33:01.7427439Z           "evidence": []
2026-06-04T14:33:01.7427872Z         },
2026-06-04T14:33:01.7428342Z         "unit": {
2026-06-04T14:33:01.7428835Z           "complete": true,
2026-06-04T14:33:01.7436625Z           "evidence": [
2026-06-04T14:33:01.7437268Z             {
2026-06-04T14:33:01.7437995Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7438482Z               "line": 391
2026-06-04T14:33:01.7438923Z             },
2026-06-04T14:33:01.7439639Z             {
2026-06-04T14:33:01.7440371Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7440873Z               "line": 401
2026-06-04T14:33:01.7441347Z             },
2026-06-04T14:33:01.7441810Z             {
2026-06-04T14:33:01.7442538Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7443038Z               "line": 421
2026-06-04T14:33:01.7443551Z             },
2026-06-04T14:33:01.7444509Z             {
2026-06-04T14:33:01.7445301Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7445820Z               "line": 437
2026-06-04T14:33:01.7446296Z             },
2026-06-04T14:33:01.7446787Z             {
2026-06-04T14:33:01.7447508Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T14:33:01.7448036Z               "line": 458
2026-06-04T14:33:01.7448499Z             },
2026-06-04T14:33:01.7448988Z             {
2026-06-04T14:33:01.7449931Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7450433Z               "line": 418
2026-06-04T14:33:01.7450917Z             },
2026-06-04T14:33:01.7451369Z             {
2026-06-04T14:33:01.7452095Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T14:33:01.7452587Z               "line": 448
2026-06-04T14:33:01.7453048Z             },
2026-06-04T14:33:01.7453490Z             {
2026-06-04T14:33:01.7454461Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T14:33:01.7454955Z               "line": 116
2026-06-04T14:33:01.7455398Z             },
2026-06-04T14:33:01.7455840Z             {
2026-06-04T14:33:01.7456494Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T14:33:01.7456972Z               "line": 124
2026-06-04T14:33:01.7457423Z             }
2026-06-04T14:33:01.7457865Z           ]
2026-06-04T14:33:01.7458319Z         }
2026-06-04T14:33:01.7458766Z       }
2026-06-04T14:33:01.7459437Z     },
2026-06-04T14:33:01.7460087Z     {
2026-06-04T14:33:01.7460591Z       "id": "REQ-TERM-1",
2026-06-04T14:33:01.7461576Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-04T14:33:01.7462079Z       "requiredStages": [
2026-06-04T14:33:01.7462545Z         "impl",
2026-06-04T14:33:01.7462994Z         "unit"
2026-06-04T14:33:01.7463445Z       ],
2026-06-04T14:33:01.7463980Z       "stages": {
2026-06-04T14:33:01.7464460Z         "doc": {
2026-06-04T14:33:01.7465016Z           "complete": false,
2026-06-04T14:33:01.7465503Z           "evidence": []
2026-06-04T14:33:01.7465963Z         },
2026-06-04T14:33:01.7466421Z         "impl": {
2026-06-04T14:33:01.7466935Z           "complete": true,
2026-06-04T14:33:01.7467427Z           "evidence": [
2026-06-04T14:33:01.7467873Z             {
2026-06-04T14:33:01.7468549Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T14:33:01.7469035Z               "line": 61
2026-06-04T14:33:01.7469721Z             },
2026-06-04T14:33:01.7470352Z             {
2026-06-04T14:33:01.7471029Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T14:33:01.7471552Z               "line": 169
2026-06-04T14:33:01.7472016Z             },
2026-06-04T14:33:01.7472563Z             {
2026-06-04T14:33:01.7473217Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T14:33:01.7473736Z               "line": 95
2026-06-04T14:33:01.7474192Z             }
2026-06-04T14:33:01.7474661Z           ]
2026-06-04T14:33:01.7475153Z         },
2026-06-04T14:33:01.7475621Z         "int": {
2026-06-04T14:33:01.7476146Z           "complete": false,
2026-06-04T14:33:01.7476625Z           "evidence": []
2026-06-04T14:33:01.7477071Z         },
2026-06-04T14:33:01.7477518Z         "unit": {
2026-06-04T14:33:01.7478025Z           "complete": true,
2026-06-04T14:33:01.7478518Z           "evidence": [
2026-06-04T14:33:01.7478970Z             {
2026-06-04T14:33:01.7480069Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T14:33:01.7480550Z               "line": 28
2026-06-04T14:33:01.7481008Z             },
2026-06-04T14:33:01.7481456Z             {
2026-06-04T14:33:01.7482146Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T14:33:01.7482661Z               "line": 60
2026-06-04T14:33:01.7483168Z             }
2026-06-04T14:33:01.7483640Z           ]
2026-06-04T14:33:01.7484104Z         }
2026-06-04T14:33:01.7484569Z       }
2026-06-04T14:33:01.7485011Z     },
2026-06-04T14:33:01.7485501Z     {
2026-06-04T14:33:01.7486317Z       "id": "REQ-TERM-2",
2026-06-04T14:33:01.7487406Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-04T14:33:01.7487924Z       "requiredStages": [
2026-06-04T14:33:01.7488397Z         "impl",
2026-06-04T14:33:01.7488865Z         "unit"
2026-06-04T14:33:01.7489529Z       ],
2026-06-04T14:33:01.7490166Z       "stages": {
2026-06-04T14:33:01.7490635Z         "doc": {
2026-06-04T14:33:01.7491115Z           "complete": false,
2026-06-04T14:33:01.7491612Z           "evidence": []
2026-06-04T14:33:01.7492067Z         },
2026-06-04T14:33:01.7492539Z         "impl": {
2026-06-04T14:33:01.7493043Z           "complete": true,
2026-06-04T14:33:01.7493542Z           "evidence": [
2026-06-04T14:33:01.7494017Z             {
2026-06-04T14:33:01.7494660Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T14:33:01.7495155Z               "line": 112
2026-06-04T14:33:01.7495605Z             },
2026-06-04T14:33:01.7496069Z             {
2026-06-04T14:33:01.7497032Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T14:33:01.7497532Z               "line": 122
2026-06-04T14:33:01.7497995Z             }
2026-06-04T14:33:01.7498443Z           ]
2026-06-04T14:33:01.7498888Z         },
2026-06-04T14:33:01.7499579Z         "int": {
2026-06-04T14:33:01.7500247Z           "complete": false,
2026-06-04T14:33:01.7500732Z           "evidence": []
2026-06-04T14:33:01.7501188Z         },
2026-06-04T14:33:01.7501645Z         "unit": {
2026-06-04T14:33:01.7502130Z           "complete": true,
2026-06-04T14:33:01.7502608Z           "evidence": [
2026-06-04T14:33:01.7503046Z             {
2026-06-04T14:33:01.7503729Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T14:33:01.7504211Z               "line": 46
2026-06-04T14:33:01.7504675Z             },
2026-06-04T14:33:01.7505129Z             {
2026-06-04T14:33:01.7505772Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T14:33:01.7506244Z               "line": 71
2026-06-04T14:33:01.7506725Z             }
2026-06-04T14:33:01.7507172Z           ]
2026-06-04T14:33:01.7507608Z         }
2026-06-04T14:33:01.7508087Z       }
2026-06-04T14:33:01.7508529Z     },
2026-06-04T14:33:01.7508949Z     {
2026-06-04T14:33:01.7509670Z       "id": "REQ-TERM-3",
2026-06-04T14:33:01.7510604Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-04T14:33:01.7511138Z       "requiredStages": [
2026-06-04T14:33:01.7511605Z         "impl",
2026-06-04T14:33:01.7512088Z         "unit"
2026-06-04T14:33:01.7512557Z       ],
2026-06-04T14:33:01.7513033Z       "stages": {
2026-06-04T14:33:01.7513483Z         "doc": {
2026-06-04T14:33:01.7513968Z           "complete": false,
2026-06-04T14:33:01.7514503Z           "evidence": []
2026-06-04T14:33:01.7515002Z         },
2026-06-04T14:33:01.7515489Z         "impl": {
2026-06-04T14:33:01.7516007Z           "complete": true,
2026-06-04T14:33:01.7516492Z           "evidence": [
2026-06-04T14:33:01.7516990Z             {
2026-06-04T14:33:01.7517700Z               "path": "crates/spt-term/src/stream.rs",
2026-06-04T14:33:01.7518198Z               "line": 71
2026-06-04T14:33:01.7518639Z             }
2026-06-04T14:33:01.7519082Z           ]
2026-06-04T14:33:01.7519769Z         },
2026-06-04T14:33:01.7520397Z         "int": {
2026-06-04T14:33:01.7520893Z           "complete": false,
2026-06-04T14:33:01.7521373Z           "evidence": []
2026-06-04T14:33:01.7521851Z         },
2026-06-04T14:33:01.7522313Z         "unit": {
2026-06-04T14:33:01.7522825Z           "complete": true,
2026-06-04T14:33:01.7523331Z           "evidence": [
2026-06-04T14:33:01.7523788Z             {
2026-06-04T14:33:01.7531526Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T14:33:01.7532176Z               "line": 37
2026-06-04T14:33:01.7532644Z             },
2026-06-04T14:33:01.7533096Z             {
2026-06-04T14:33:01.7533772Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T14:33:01.7534254Z               "line": 67
2026-06-04T14:33:01.7534729Z             }
2026-06-04T14:33:01.7535641Z           ]
2026-06-04T14:33:01.7536117Z         }
2026-06-04T14:33:01.7536560Z       }
2026-06-04T14:33:01.7536997Z     },
2026-06-04T14:33:01.7537443Z     {
2026-06-04T14:33:01.7537935Z       "id": "REQ-TERM-4",
2026-06-04T14:33:01.7540561Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-04T14:33:01.7541087Z       "requiredStages": [
2026-06-04T14:33:01.7541544Z         "impl",
2026-06-04T14:33:01.7541992Z         "unit",
2026-06-04T14:33:01.7542424Z         "int"
2026-06-04T14:33:01.7542880Z       ],
2026-06-04T14:33:01.7543352Z       "stages": {
2026-06-04T14:33:01.7543809Z         "doc": {
2026-06-04T14:33:01.7544326Z           "complete": true,
2026-06-04T14:33:01.7544826Z           "evidence": [
2026-06-04T14:33:01.7545363Z             {
2026-06-04T14:33:01.7545925Z               "path": "docs/MANIFEST.md",
2026-06-04T14:33:01.7546713Z               "line": 115
2026-06-04T14:33:01.7547197Z             }
2026-06-04T14:33:01.7547655Z           ]
2026-06-04T14:33:01.7548113Z         },
2026-06-04T14:33:01.7548583Z         "impl": {
2026-06-04T14:33:01.7549099Z           "complete": true,
2026-06-04T14:33:01.7549864Z           "evidence": [
2026-06-04T14:33:01.7550368Z             {
2026-06-04T14:33:01.7551065Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T14:33:01.7551597Z               "line": 463
2026-06-04T14:33:01.7552135Z             },
2026-06-04T14:33:01.7552617Z             {
2026-06-04T14:33:01.7553336Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7553901Z               "line": 41
2026-06-04T14:33:01.7554391Z             },
2026-06-04T14:33:01.7554877Z             {
2026-06-04T14:33:01.7555564Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7556099Z               "line": 91
2026-06-04T14:33:01.7556568Z             },
2026-06-04T14:33:01.7557056Z             {
2026-06-04T14:33:01.7557762Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7558276Z               "line": 152
2026-06-04T14:33:01.7558765Z             },
2026-06-04T14:33:01.7559324Z             {
2026-06-04T14:33:01.7560175Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7560669Z               "line": 212
2026-06-04T14:33:01.7561140Z             },
2026-06-04T14:33:01.7561593Z             {
2026-06-04T14:33:01.7562291Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7562796Z               "line": 20
2026-06-04T14:33:01.7563266Z             },
2026-06-04T14:33:01.7563725Z             {
2026-06-04T14:33:01.7564410Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7564915Z               "line": 212
2026-06-04T14:33:01.7565362Z             },
2026-06-04T14:33:01.7565815Z             {
2026-06-04T14:33:01.7566486Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7567004Z               "line": 226
2026-06-04T14:33:01.7567470Z             },
2026-06-04T14:33:01.7567924Z             {
2026-06-04T14:33:01.7568593Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.7569083Z               "line": 585
2026-06-04T14:33:01.7569629Z             },
2026-06-04T14:33:01.7570118Z             {
2026-06-04T14:33:01.7570741Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7571245Z               "line": 157
2026-06-04T14:33:01.7571722Z             },
2026-06-04T14:33:01.7572192Z             {
2026-06-04T14:33:01.7572826Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7573307Z               "line": 199
2026-06-04T14:33:01.7573760Z             },
2026-06-04T14:33:01.7574201Z             {
2026-06-04T14:33:01.7574840Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7575310Z               "line": 226
2026-06-04T14:33:01.7575768Z             },
2026-06-04T14:33:01.7576256Z             {
2026-06-04T14:33:01.7577180Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.7577784Z               "line": 338
2026-06-04T14:33:01.7578250Z             }
2026-06-04T14:33:01.7578706Z           ]
2026-06-04T14:33:01.7579229Z         },
2026-06-04T14:33:01.7579709Z         "int": {
2026-06-04T14:33:01.7580237Z           "complete": true,
2026-06-04T14:33:01.7580731Z           "evidence": [
2026-06-04T14:33:01.7581190Z             {
2026-06-04T14:33:01.7581874Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-04T14:33:01.7582372Z               "line": 18
2026-06-04T14:33:01.7582823Z             }
2026-06-04T14:33:01.7583285Z           ]
2026-06-04T14:33:01.7583738Z         },
2026-06-04T14:33:01.7584230Z         "unit": {
2026-06-04T14:33:01.7584769Z           "complete": true,
2026-06-04T14:33:01.7585254Z           "evidence": [
2026-06-04T14:33:01.7585710Z             {
2026-06-04T14:33:01.7586363Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7587159Z               "line": 250
2026-06-04T14:33:01.7587625Z             },
2026-06-04T14:33:01.7588078Z             {
2026-06-04T14:33:01.7588750Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7589302Z               "line": 263
2026-06-04T14:33:01.7589766Z             },
2026-06-04T14:33:01.7590233Z             {
2026-06-04T14:33:01.7590907Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7591407Z               "line": 275
2026-06-04T14:33:01.7591868Z             },
2026-06-04T14:33:01.7592322Z             {
2026-06-04T14:33:01.7592964Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7593448Z               "line": 290
2026-06-04T14:33:01.7593880Z             },
2026-06-04T14:33:01.7594352Z             {
2026-06-04T14:33:01.7595022Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7595503Z               "line": 305
2026-06-04T14:33:01.7595962Z             },
2026-06-04T14:33:01.7596428Z             {
2026-06-04T14:33:01.7597104Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7597582Z               "line": 327
2026-06-04T14:33:01.7598048Z             },
2026-06-04T14:33:01.7598504Z             {
2026-06-04T14:33:01.7599148Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7599877Z               "line": 337
2026-06-04T14:33:01.7600500Z             },
2026-06-04T14:33:01.7600952Z             {
2026-06-04T14:33:01.7601596Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T14:33:01.7602080Z               "line": 364
2026-06-04T14:33:01.7602537Z             },
2026-06-04T14:33:01.7602975Z             {
2026-06-04T14:33:01.7603650Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7604129Z               "line": 338
2026-06-04T14:33:01.7604584Z             },
2026-06-04T14:33:01.7605016Z             {
2026-06-04T14:33:01.7605714Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7606244Z               "line": 350
2026-06-04T14:33:01.7606708Z             },
2026-06-04T14:33:01.7607166Z             {
2026-06-04T14:33:01.7607840Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7608315Z               "line": 367
2026-06-04T14:33:01.7608765Z             },
2026-06-04T14:33:01.7609282Z             {
2026-06-04T14:33:01.7610274Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T14:33:01.7610759Z               "line": 378
2026-06-04T14:33:01.7611209Z             },
2026-06-04T14:33:01.7611655Z             {
2026-06-04T14:33:01.7612341Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.7612832Z               "line": 770
2026-06-04T14:33:01.7613266Z             },
2026-06-04T14:33:01.7613726Z             {
2026-06-04T14:33:01.7614395Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.7614879Z               "line": 777
2026-06-04T14:33:01.7615321Z             },
2026-06-04T14:33:01.7616162Z             {
2026-06-04T14:33:01.7616897Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.7617394Z               "line": 792
2026-06-04T14:33:01.7617865Z             },
2026-06-04T14:33:01.7618323Z             {
2026-06-04T14:33:01.7619018Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7619905Z               "line": 381
2026-06-04T14:33:01.7620383Z             },
2026-06-04T14:33:01.7627667Z             {
2026-06-04T14:33:01.7628509Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7629001Z               "line": 402
2026-06-04T14:33:01.7629694Z             },
2026-06-04T14:33:01.7630291Z             {
2026-06-04T14:33:01.7630904Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7631383Z               "line": 415
2026-06-04T14:33:01.7631843Z             },
2026-06-04T14:33:01.7632301Z             {
2026-06-04T14:33:01.7633129Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7634219Z               "line": 434
2026-06-04T14:33:01.7634754Z             },
2026-06-04T14:33:01.7635264Z             {
2026-06-04T14:33:01.7636019Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T14:33:01.7636600Z               "line": 461
2026-06-04T14:33:01.7637095Z             },
2026-06-04T14:33:01.7637629Z             {
2026-06-04T14:33:01.7638369Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-04T14:33:01.7638979Z               "line": 32
2026-06-04T14:33:01.7639545Z             },
2026-06-04T14:33:01.7640039Z             {
2026-06-04T14:33:01.7640660Z               "path": "crates/spt/src/cli.rs",
2026-06-04T14:33:01.7641182Z               "line": 1516
2026-06-04T14:33:01.7641676Z             }
2026-06-04T14:33:01.7642154Z           ]
2026-06-04T14:33:01.7642637Z         }
2026-06-04T14:33:01.7643126Z       }
2026-06-04T14:33:01.7643601Z     },
2026-06-04T14:33:01.7644095Z     {
2026-06-04T14:33:01.7644638Z       "id": "REQ-UPD-1",
2026-06-04T14:33:01.7645419Z       "title": "Peer-propagated update over P2P",
2026-06-04T14:33:01.7645992Z       "requiredStages": [
2026-06-04T14:33:01.7646498Z         "impl",
2026-06-04T14:33:01.7647008Z         "unit"
2026-06-04T14:33:01.7647511Z       ],
2026-06-04T14:33:01.7648011Z       "stages": {
2026-06-04T14:33:01.7648467Z         "doc": {
2026-06-04T14:33:01.7649030Z           "complete": false,
2026-06-04T14:33:01.7649667Z           "evidence": []
2026-06-04T14:33:01.7650208Z         },
2026-06-04T14:33:01.7650713Z         "impl": {
2026-06-04T14:33:01.7651236Z           "complete": true,
2026-06-04T14:33:01.7651759Z           "evidence": [
2026-06-04T14:33:01.7652244Z             {
2026-06-04T14:33:01.7652987Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.7653502Z               "line": 28
2026-06-04T14:33:01.7654013Z             },
2026-06-04T14:33:01.7654490Z             {
2026-06-04T14:33:01.7655207Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.7655795Z               "line": 74
2026-06-04T14:33:01.7656280Z             },
2026-06-04T14:33:01.7656761Z             {
2026-06-04T14:33:01.7657532Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.7658082Z               "line": 209
2026-06-04T14:33:01.7658588Z             },
2026-06-04T14:33:01.7659088Z             {
2026-06-04T14:33:01.7659956Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7660538Z               "line": 22
2026-06-04T14:33:01.7661078Z             },
2026-06-04T14:33:01.7661608Z             {
2026-06-04T14:33:01.7662400Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7662970Z               "line": 67
2026-06-04T14:33:01.7663487Z             },
2026-06-04T14:33:01.7664023Z             {
2026-06-04T14:33:01.7664755Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7665274Z               "line": 80
2026-06-04T14:33:01.7665735Z             },
2026-06-04T14:33:01.7666227Z             {
2026-06-04T14:33:01.7667254Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7667811Z               "line": 101
2026-06-04T14:33:01.7668299Z             },
2026-06-04T14:33:01.7668773Z             {
2026-06-04T14:33:01.7669556Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T14:33:01.7670071Z               "line": 37
2026-06-04T14:33:01.7670523Z             }
2026-06-04T14:33:01.7670990Z           ]
2026-06-04T14:33:01.7671449Z         },
2026-06-04T14:33:01.7671929Z         "int": {
2026-06-04T14:33:01.7672460Z           "complete": true,
2026-06-04T14:33:01.7672962Z           "evidence": [
2026-06-04T14:33:01.7673434Z             {
2026-06-04T14:33:01.7674161Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T14:33:01.7674674Z               "line": 190
2026-06-04T14:33:01.7675144Z             },
2026-06-04T14:33:01.7675616Z             {
2026-06-04T14:33:01.7676312Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-04T14:33:01.7677137Z               "line": 732
2026-06-04T14:33:01.7677611Z             }
2026-06-04T14:33:01.7678072Z           ]
2026-06-04T14:33:01.7678546Z         },
2026-06-04T14:33:01.7679034Z         "unit": {
2026-06-04T14:33:01.7679634Z           "complete": true,
2026-06-04T14:33:01.7680138Z           "evidence": [
2026-06-04T14:33:01.7680643Z             {
2026-06-04T14:33:01.7681363Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7681868Z               "line": 120
2026-06-04T14:33:01.7682365Z             },
2026-06-04T14:33:01.7682831Z             {
2026-06-04T14:33:01.7683559Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T14:33:01.7684058Z               "line": 137
2026-06-04T14:33:01.7684514Z             },
2026-06-04T14:33:01.7684971Z             {
2026-06-04T14:33:01.7685685Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T14:33:01.7686180Z               "line": 201
2026-06-04T14:33:01.7686647Z             },
2026-06-04T14:33:01.7687121Z             {
2026-06-04T14:33:01.7687776Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T14:33:01.7688274Z               "line": 92
2026-06-04T14:33:01.7688731Z             },
2026-06-04T14:33:01.7689247Z             {
2026-06-04T14:33:01.7690083Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T14:33:01.7690554Z               "line": 128
2026-06-04T14:33:01.7691004Z             }
2026-06-04T14:33:01.7691431Z           ]
2026-06-04T14:33:01.7691870Z         }
2026-06-04T14:33:01.7692300Z       }
2026-06-04T14:33:01.7692725Z     },
2026-06-04T14:33:01.7693159Z     {
2026-06-04T14:33:01.7693638Z       "id": "REQ-UPD-2",
2026-06-04T14:33:01.7694429Z       "title": "All binaries signature-verified before handoff",
2026-06-04T14:33:01.7694915Z       "requiredStages": [
2026-06-04T14:33:01.7695368Z         "impl",
2026-06-04T14:33:01.7695813Z         "unit"
2026-06-04T14:33:01.7696234Z       ],
2026-06-04T14:33:01.7696703Z       "stages": {
2026-06-04T14:33:01.7697151Z         "doc": {
2026-06-04T14:33:01.7697649Z           "complete": false,
2026-06-04T14:33:01.7698117Z           "evidence": []
2026-06-04T14:33:01.7698557Z         },
2026-06-04T14:33:01.7699009Z         "impl": {
2026-06-04T14:33:01.7699681Z           "complete": true,
2026-06-04T14:33:01.7700297Z           "evidence": [
2026-06-04T14:33:01.7700729Z             {
2026-06-04T14:33:01.7701403Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.7701865Z               "line": 210
2026-06-04T14:33:01.7702318Z             },
2026-06-04T14:33:01.7702755Z             {
2026-06-04T14:33:01.7703418Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T14:33:01.7703886Z               "line": 294
2026-06-04T14:33:01.7704322Z             },
2026-06-04T14:33:01.7704762Z             {
2026-06-04T14:33:01.7705397Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7705860Z               "line": 29
2026-06-04T14:33:01.7706512Z             },
2026-06-04T14:33:01.7706969Z             {
2026-06-04T14:33:01.7707616Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7708079Z               "line": 126
2026-06-04T14:33:01.7708519Z             },
2026-06-04T14:33:01.7708959Z             {
2026-06-04T14:33:01.7716894Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7717482Z               "line": 138
2026-06-04T14:33:01.7717918Z             },
2026-06-04T14:33:01.7718355Z             {
2026-06-04T14:33:01.7718994Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7719833Z               "line": 220
2026-06-04T14:33:01.7720269Z             },
2026-06-04T14:33:01.7720696Z             {
2026-06-04T14:33:01.7721337Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7721790Z               "line": 301
2026-06-04T14:33:01.7722223Z             },
2026-06-04T14:33:01.7722647Z             {
2026-06-04T14:33:01.7723564Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7724028Z               "line": 149
2026-06-04T14:33:01.7724445Z             }
2026-06-04T14:33:01.7724875Z           ]
2026-06-04T14:33:01.7725292Z         },
2026-06-04T14:33:01.7725734Z         "int": {
2026-06-04T14:33:01.7726201Z           "complete": false,
2026-06-04T14:33:01.7726665Z           "evidence": []
2026-06-04T14:33:01.7727097Z         },
2026-06-04T14:33:01.7727529Z         "unit": {
2026-06-04T14:33:01.7728000Z           "complete": true,
2026-06-04T14:33:01.7728450Z           "evidence": [
2026-06-04T14:33:01.7728879Z             {
2026-06-04T14:33:01.7729842Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7730304Z               "line": 386
2026-06-04T14:33:01.7730739Z             },
2026-06-04T14:33:01.7731161Z             {
2026-06-04T14:33:01.7731802Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7732256Z               "line": 431
2026-06-04T14:33:01.7732716Z             },
2026-06-04T14:33:01.7733136Z             {
2026-06-04T14:33:01.7733777Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7734237Z               "line": 445
2026-06-04T14:33:01.7734663Z             },
2026-06-04T14:33:01.7735094Z             {
2026-06-04T14:33:01.7735710Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7736171Z               "line": 456
2026-06-04T14:33:01.7736586Z             },
2026-06-04T14:33:01.7737019Z             {
2026-06-04T14:33:01.7737652Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7738100Z               "line": 532
2026-06-04T14:33:01.7738529Z             },
2026-06-04T14:33:01.7738943Z             {
2026-06-04T14:33:01.7739938Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7740395Z               "line": 326
2026-06-04T14:33:01.7740831Z             },
2026-06-04T14:33:01.7741267Z             {
2026-06-04T14:33:01.7741921Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7742386Z               "line": 339
2026-06-04T14:33:01.7742816Z             },
2026-06-04T14:33:01.7743248Z             {
2026-06-04T14:33:01.7743941Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T14:33:01.7744400Z               "line": 242
2026-06-04T14:33:01.7744841Z             }
2026-06-04T14:33:01.7745267Z           ]
2026-06-04T14:33:01.7745699Z         }
2026-06-04T14:33:01.7746119Z       }
2026-06-04T14:33:01.7746546Z     },
2026-06-04T14:33:01.7746961Z     {
2026-06-04T14:33:01.7747456Z       "id": "REQ-UPD-3",
2026-06-04T14:33:01.7748418Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-04T14:33:01.7748897Z       "requiredStages": [
2026-06-04T14:33:01.7749375Z         "impl",
2026-06-04T14:33:01.7749804Z         "unit",
2026-06-04T14:33:01.7750240Z         "int"
2026-06-04T14:33:01.7750663Z       ],
2026-06-04T14:33:01.7751109Z       "stages": {
2026-06-04T14:33:01.7751560Z         "doc": {
2026-06-04T14:33:01.7752192Z           "complete": false,
2026-06-04T14:33:01.7752676Z           "evidence": []
2026-06-04T14:33:01.7753094Z         },
2026-06-04T14:33:01.7753539Z         "impl": {
2026-06-04T14:33:01.7754005Z           "complete": true,
2026-06-04T14:33:01.7754463Z           "evidence": [
2026-06-04T14:33:01.7754899Z             {
2026-06-04T14:33:01.7755532Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7755986Z               "line": 26
2026-06-04T14:33:01.7756416Z             },
2026-06-04T14:33:01.7756852Z             {
2026-06-04T14:33:01.7757484Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7757950Z               "line": 111
2026-06-04T14:33:01.7758388Z             },
2026-06-04T14:33:01.7758805Z             {
2026-06-04T14:33:01.7759482Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7759943Z               "line": 213
2026-06-04T14:33:01.7760379Z             }
2026-06-04T14:33:01.7761028Z           ]
2026-06-04T14:33:01.7761457Z         },
2026-06-04T14:33:01.7761893Z         "int": {
2026-06-04T14:33:01.7762360Z           "complete": true,
2026-06-04T14:33:01.7762815Z           "evidence": [
2026-06-04T14:33:01.7763240Z             {
2026-06-04T14:33:01.7763939Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-04T14:33:01.7764396Z               "line": 23
2026-06-04T14:33:01.7764821Z             }
2026-06-04T14:33:01.7765251Z           ]
2026-06-04T14:33:01.7765672Z         },
2026-06-04T14:33:01.7766108Z         "unit": {
2026-06-04T14:33:01.7766576Z           "complete": true,
2026-06-04T14:33:01.7767032Z           "evidence": [
2026-06-04T14:33:01.7767448Z             {
2026-06-04T14:33:01.7768084Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7768650Z               "line": 238
2026-06-04T14:33:01.7769074Z             },
2026-06-04T14:33:01.7769541Z             {
2026-06-04T14:33:01.7770195Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7770671Z               "line": 262
2026-06-04T14:33:01.7771102Z             },
2026-06-04T14:33:01.7771523Z             {
2026-06-04T14:33:01.7772163Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7772617Z               "line": 273
2026-06-04T14:33:01.7773046Z             },
2026-06-04T14:33:01.7773469Z             {
2026-06-04T14:33:01.7774104Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T14:33:01.7774565Z               "line": 286
2026-06-04T14:33:01.7774990Z             }
2026-06-04T14:33:01.7775422Z           ]
2026-06-04T14:33:01.7775839Z         }
2026-06-04T14:33:01.7776271Z       }
2026-06-04T14:33:01.7776686Z     },
2026-06-04T14:33:01.7777111Z     {
2026-06-04T14:33:01.7777579Z       "id": "REQ-UPD-4",
2026-06-04T14:33:01.7778608Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-04T14:33:01.7779117Z       "requiredStages": [
2026-06-04T14:33:01.7779599Z         "impl",
2026-06-04T14:33:01.7780045Z         "unit"
2026-06-04T14:33:01.7780462Z       ],
2026-06-04T14:33:01.7780906Z       "stages": {
2026-06-04T14:33:01.7781340Z         "doc": {
2026-06-04T14:33:01.7781810Z           "complete": false,
2026-06-04T14:33:01.7782278Z           "evidence": []
2026-06-04T14:33:01.7782706Z         },
2026-06-04T14:33:01.7783144Z         "impl": {
2026-06-04T14:33:01.7783607Z           "complete": true,
2026-06-04T14:33:01.7784064Z           "evidence": [
2026-06-04T14:33:01.7784489Z             {
2026-06-04T14:33:01.7785132Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7785586Z               "line": 23
2026-06-04T14:33:01.7786013Z             },
2026-06-04T14:33:01.7786441Z             {
2026-06-04T14:33:01.7787073Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7787524Z               "line": 56
2026-06-04T14:33:01.7787959Z             },
2026-06-04T14:33:01.7788380Z             {
2026-06-04T14:33:01.7789233Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7789705Z               "line": 77
2026-06-04T14:33:01.7790138Z             },
2026-06-04T14:33:01.7790564Z             {
2026-06-04T14:33:01.7791222Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T14:33:01.7791683Z               "line": 179
2026-06-04T14:33:01.7792106Z             },
2026-06-04T14:33:01.7792537Z             {
2026-06-04T14:33:01.7793152Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T14:33:01.7793618Z               "line": 98
2026-06-04T14:33:01.7794048Z             },
2026-06-04T14:33:01.7794483Z             {
2026-06-04T14:33:01.7795088Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.7795547Z               "line": 167
2026-06-04T14:33:01.7795987Z             }
2026-06-04T14:33:01.7796418Z           ]
2026-06-04T14:33:01.7802727Z         },
2026-06-04T14:33:01.7803265Z         "int": {
2026-06-04T14:33:01.7803755Z           "complete": false,
2026-06-04T14:33:01.7804497Z           "evidence": []
2026-06-04T14:33:01.7804925Z         },
2026-06-04T14:33:01.7805362Z         "unit": {
2026-06-04T14:33:01.7805826Z           "complete": true,
2026-06-04T14:33:01.7806286Z           "evidence": [
2026-06-04T14:33:01.7806707Z             {
2026-06-04T14:33:01.7807348Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T14:33:01.7807821Z               "line": 322
2026-06-04T14:33:01.7808246Z             },
2026-06-04T14:33:01.7808683Z             {
2026-06-04T14:33:01.7809391Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7809871Z               "line": 102
2026-06-04T14:33:01.7810296Z             },
2026-06-04T14:33:01.7810727Z             {
2026-06-04T14:33:01.7811366Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7811818Z               "line": 117
2026-06-04T14:33:01.7812252Z             },
2026-06-04T14:33:01.7812678Z             {
2026-06-04T14:33:01.7813335Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T14:33:01.7813786Z               "line": 136
2026-06-04T14:33:01.7814219Z             },
2026-06-04T14:33:01.7814648Z             {
2026-06-04T14:33:01.7815236Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T14:33:01.7815701Z               "line": 352
2026-06-04T14:33:01.7816126Z             },
2026-06-04T14:33:01.7816556Z             {
2026-06-04T14:33:01.7817156Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T14:33:01.7817615Z               "line": 442
2026-06-04T14:33:01.7818050Z             }
2026-06-04T14:33:01.7818471Z           ]
2026-06-04T14:33:01.7818898Z         }
2026-06-04T14:33:01.7819361Z       }
2026-06-04T14:33:01.7819784Z     },
2026-06-04T14:33:01.7820200Z     {
2026-06-04T14:33:01.7820673Z       "id": "REQ-UPD-5",
2026-06-04T14:33:01.7821440Z       "title": "spt-core ripple-updates registered adapters",
2026-06-04T14:33:01.7821927Z       "requiredStages": [
2026-06-04T14:33:01.7822378Z         "impl",
2026-06-04T14:33:01.7822820Z         "unit"
2026-06-04T14:33:01.7823245Z       ],
2026-06-04T14:33:01.7823680Z       "stages": {
2026-06-04T14:33:01.7824113Z         "doc": {
2026-06-04T14:33:01.7824594Z           "complete": false,
2026-06-04T14:33:01.7825051Z           "evidence": []
2026-06-04T14:33:01.7825476Z         },
2026-06-04T14:33:01.7825912Z         "impl": {
2026-06-04T14:33:01.7826393Z           "complete": true,
2026-06-04T14:33:01.7826842Z           "evidence": [
2026-06-04T14:33:01.7827272Z             {
2026-06-04T14:33:01.7827988Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7828430Z               "line": 27
2026-06-04T14:33:01.7828866Z             },
2026-06-04T14:33:01.7829335Z             {
2026-06-04T14:33:01.7830038Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7830485Z               "line": 82
2026-06-04T14:33:01.7830915Z             },
2026-06-04T14:33:01.7831338Z             {
2026-06-04T14:33:01.7832230Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7832712Z               "line": 134
2026-06-04T14:33:01.7833142Z             },
2026-06-04T14:33:01.7833575Z             {
2026-06-04T14:33:01.7834212Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7834659Z               "line": 260
2026-06-04T14:33:01.7835095Z             },
2026-06-04T14:33:01.7835512Z             {
2026-06-04T14:33:01.7836145Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T14:33:01.7836595Z               "line": 288
2026-06-04T14:33:01.7837024Z             }
2026-06-04T14:33:01.7837456Z           ]
2026-06-04T14:33:01.7837871Z         },
2026-06-04T14:33:01.7838306Z         "int": {
2026-06-04T14:33:01.7838774Z           "complete": false,
2026-06-04T14:33:01.7839280Z           "evidence": []
2026-06-04T14:33:01.7839701Z         },
2026-06-04T14:33:01.7840145Z         "unit": {
2026-06-04T14:33:01.7840614Z           "complete": true,
2026-06-04T14:33:01.7841247Z           "evidence": [
2026-06-04T14:33:01.7841684Z             {
2026-06-04T14:33:01.7842394Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7842858Z               "line": 194
2026-06-04T14:33:01.7843280Z             },
2026-06-04T14:33:01.7843711Z             {
2026-06-04T14:33:01.7844422Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7844879Z               "line": 208
2026-06-04T14:33:01.7845315Z             },
2026-06-04T14:33:01.7845736Z             {
2026-06-04T14:33:01.7846444Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7846893Z               "line": 222
2026-06-04T14:33:01.7847321Z             },
2026-06-04T14:33:01.7847750Z             {
2026-06-04T14:33:01.7848449Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7848910Z               "line": 236
2026-06-04T14:33:01.7849367Z             },
2026-06-04T14:33:01.7849818Z             {
2026-06-04T14:33:01.7850530Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T14:33:01.7850988Z               "line": 270
2026-06-04T14:33:01.7851424Z             },
2026-06-04T14:33:01.7851851Z             {
2026-06-04T14:33:01.7852704Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T14:33:01.7853363Z               "line": 740
2026-06-04T14:33:01.7853801Z             }
2026-06-04T14:33:01.7854225Z           ]
2026-06-04T14:33:01.7854659Z         }
2026-06-04T14:33:01.7855097Z       }
2026-06-04T14:33:01.7855521Z     }
2026-06-04T14:33:01.7855975Z   ],
2026-06-04T14:33:01.7856414Z   "findings": []
2026-06-04T14:33:01.7856839Z }
2026-06-04T14:33:01.7950049Z ##[group]Run ./traceable-reqs lint || true
2026-06-04T14:33:01.7950655Z [36;1m./traceable-reqs lint || true[0m
2026-06-04T14:33:01.7973513Z shell: /usr/bin/bash -e {0}
2026-06-04T14:33:01.7973974Z ##[endgroup]
2026-06-04T14:33:01.8196925Z Requirement quality findings (17); 129 requirements queued for agent review:
2026-06-04T14:33:01.8199393Z   [must] requirement_quality REQ-API-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8201525Z   [must] requirement_quality REQ-HAZARD-CONFLICT-BOTH-PRESERVED criterion=length — title is 29 words; want 3..=25
2026-06-04T14:33:01.8203531Z   [must] requirement_quality REQ-HAZARD-DAEMON-SCHED-NONBLOCKING criterion=length — title is 32 words; want 3..=25
2026-06-04T14:33:01.8205920Z   [must] requirement_quality REQ-HAZARD-ENVELOPE-PARSER-SAFE criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8208242Z   [must] requirement_quality REQ-HAZARD-GEN-START-NOW criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8210001Z   [must] requirement_quality REQ-HAZARD-PAIR-RATE-LIMIT criterion=length — title is 37 words; want 3..=25
2026-06-04T14:33:01.8211756Z   [must] requirement_quality REQ-HAZARD-PAIR-SEED-ROTATION criterion=length — title is 33 words; want 3..=25
2026-06-04T14:33:01.8214175Z   [must] requirement_quality REQ-HAZARD-PAIR-TRANSCRIPT-BIND criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8216630Z   [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8218495Z   [must] requirement_quality REQ-HAZARD-PSYCHE-OUTBOUND-PROXY criterion=length — title is 27 words; want 3..=25
2026-06-04T14:33:01.8220197Z   [must] requirement_quality REQ-HAZARD-WAN-ORIGIN-AUTH criterion=length — title is 37 words; want 3..=25
2026-06-04T14:33:01.8221584Z   [must] requirement_quality REQ-INST-15 criterion=length — title is 32 words; want 3..=25
2026-06-04T14:33:01.8222994Z   [must] requirement_quality REQ-INSTALL-2 criterion=length — title is 2 word(s); want 3..=25
2026-06-04T14:33:01.8225004Z   [must] requirement_quality REQ-MANIFEST-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8227405Z   [must] requirement_quality REQ-MIGRATE-1 criterion=contains-and — title contains ' and ' — may smuggle multiple capabilities
2026-06-04T14:33:01.8228822Z   [must] requirement_quality REQ-SEAM-SPAWN criterion=length — title is 2 word(s); want 3..=25
2026-06-04T14:33:01.8230324Z   [must] requirement_quality REQ-STORE-1 criterion=length — title is 34 words; want 3..=25
2026-06-04T14:33:01.8230349Z 
2026-06-04T14:33:01.8230850Z # Requirement quality review
2026-06-04T14:33:01.8230870Z 
2026-06-04T14:33:01.8231937Z You are reviewing 129 requirement(s) from `traceable-reqs.toml` against a quality
2026-06-04T14:33:01.8233081Z rubric. Deterministic checks (length, contains-and, tbd-todo, duplicate-titles,
2026-06-04T14:33:01.8234696Z trailing-etc) have already run and surfaced as `requirement_quality` findings on
2026-06-04T14:33:01.8235466Z this command's output. Your task is the rubric items below.
2026-06-04T14:33:01.8235487Z 
2026-06-04T14:33:01.8235960Z ## Rubric
2026-06-04T14:33:01.8235981Z 
2026-06-04T14:33:01.8237260Z - **singular** — describes one capability; no smuggled "and"/"or" across distinct actions.
2026-06-04T14:33:01.8238392Z - **verifiable** — states an observable behavior a test or reviewer could confirm.
2026-06-04T14:33:01.8239609Z - **atomic** — cannot be split into two requirements without losing meaning.
2026-06-04T14:33:01.8240346Z - **active-voice** — clear subject and active verb.
2026-06-04T14:33:01.8240368Z 
2026-06-04T14:33:01.8241528Z If a criterion is borderline or doesn't apply, abstain — only emit findings for
2026-06-04T14:33:01.8241991Z clear concerns.
2026-06-04T14:33:01.8242010Z 
2026-06-04T14:33:01.8242803Z ## Requirements
2026-06-04T14:33:01.8242830Z 
2026-06-04T14:33:01.8243315Z ### REQ-ARCH-1
2026-06-04T14:33:01.8243937Z - Title: Many small acyclically-layered crates
2026-06-04T14:33:01.8244438Z - Required stages: impl
2026-06-04T14:33:01.8244458Z 
2026-06-04T14:33:01.8244903Z ### REQ-ARCH-2
2026-06-04T14:33:01.8245779Z - Title: Public SDK surface is spt-proto, spt-runtime, spt-msg
2026-06-04T14:33:01.8246274Z - Required stages: impl
2026-06-04T14:33:01.8246304Z 
2026-06-04T14:33:01.8246752Z ### REQ-ARCH-3
2026-06-04T14:33:01.8247835Z - Title: Wire-protocol version independent of crate semver, N-1 compat window
2026-06-04T14:33:01.8248350Z - Required stages: impl, unit
2026-06-04T14:33:01.8248367Z 
2026-06-04T14:33:01.8248825Z ### REQ-ARCH-4
2026-06-04T14:33:01.8249891Z - Title: Copy-verbatim the commodity layer from the sister project
2026-06-04T14:33:01.8250394Z - Required stages: impl, unit
2026-06-04T14:33:01.8250413Z 
2026-06-04T14:33:01.8250862Z ### REQ-DAEMON-1
2026-06-04T14:33:01.8251698Z - Title: One per-machine spt-daemon owning all per-machine state
2026-06-04T14:33:01.8252223Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8252241Z 
2026-06-04T14:33:01.8252694Z ### REQ-DAEMON-2
2026-06-04T14:33:01.8253354Z - Title: Broker/brain split for seamless self-update
2026-06-04T14:33:01.8253892Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8253911Z 
2026-06-04T14:33:01.8254355Z ### REQ-DAEMON-3
2026-06-04T14:33:01.8255112Z - Title: Any api invocation auto-starts the daemon if absent
2026-06-04T14:33:01.8255619Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8255637Z 
2026-06-04T14:33:01.8256088Z ### REQ-DAEMON-4
2026-06-04T14:33:01.8256670Z - Title: Honor every KNOWN-HAZARDS invariant
2026-06-04T14:33:01.8257176Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8257192Z 
2026-06-04T14:33:01.8257636Z ### REQ-STORE-1
2026-06-04T14:33:01.8263043Z - Title: spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)
2026-06-04T14:33:01.8263561Z - Required stages: impl, unit
2026-06-04T14:33:01.8263580Z 
2026-06-04T14:33:01.8264214Z ### REQ-MANIFEST-1
2026-06-04T14:33:01.8265147Z - Title: Per-adapter manifest with adapter_name and min_spt_core_version
2026-06-04T14:33:01.8265671Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8265689Z 
2026-06-04T14:33:01.8266142Z ### REQ-SEAM-SPAWN
2026-06-04T14:33:01.8266639Z - Title: spawn-session seam
2026-06-04T14:33:01.8267143Z - Required stages: impl, unit
2026-06-04T14:33:01.8267161Z 
2026-06-04T14:33:01.8267631Z ### REQ-SEAM-POSTSPAWN
2026-06-04T14:33:01.8268285Z - Title: post-spawn / api bind seam with boot nonce
2026-06-04T14:33:01.8268772Z - Required stages: impl, unit
2026-06-04T14:33:01.8268789Z 
2026-06-04T14:33:01.8269299Z ### REQ-SEAM-PSYCHE
2026-06-04T14:33:01.8270251Z - Title: spawn-psyche seam (fresh + resume templates)
2026-06-04T14:33:01.8270798Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8270817Z 
2026-06-04T14:33:01.8271304Z ### REQ-SEAM-HISTORY
2026-06-04T14:33:01.8272246Z - Title: History subsystem (fetcher / locate-normalize / native store)
2026-06-04T14:33:01.8272799Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8272818Z 
2026-06-04T14:33:01.8273304Z ### REQ-SEAM-ACTIVITY
2026-06-04T14:33:01.8274232Z - Title: Activity/idle reported via api sentinels, not PTY quiescence
2026-06-04T14:33:01.8274750Z - Required stages: impl, unit
2026-06-04T14:33:01.8274768Z 
2026-06-04T14:33:01.8275236Z ### REQ-SEAM-INJECT
2026-06-04T14:33:01.8276076Z - Title: inject-input methods configurable per activity-state
2026-06-04T14:33:01.8276590Z - Required stages: impl, unit
2026-06-04T14:33:01.8276621Z 
2026-06-04T14:33:01.8277092Z ### REQ-SEAM-RESUME
2026-06-04T14:33:01.8278042Z - Title: resume-session seam (fresh-with-preload / continue-existing)
2026-06-04T14:33:01.8278746Z - Required stages: impl, unit
2026-06-04T14:33:01.8278769Z 
2026-06-04T14:33:01.8279348Z ### REQ-SEAM-CAPABILITY
2026-06-04T14:33:01.8280222Z - Title: Hostable endpoint-types capability declaration
2026-06-04T14:33:01.8280725Z - Required stages: impl, unit
2026-06-04T14:33:01.8280743Z 
2026-06-04T14:33:01.8281225Z ### REQ-SEAM-UPDATE
2026-06-04T14:33:01.8282032Z - Title: Adapter-update avenue (file-pull / delegated command)
2026-06-04T14:33:01.8282534Z - Required stages: impl, unit
2026-06-04T14:33:01.8282551Z 
2026-06-04T14:33:01.8293601Z ### REQ-API-1
2026-06-04T14:33:01.8294779Z - Title: api prefix and adapter_name on every machinery invocation
2026-06-04T14:33:01.8295301Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8295322Z 
2026-06-04T14:33:01.8295754Z ### REQ-API-2
2026-06-04T14:33:01.8296818Z - Title: The api subcommand surface (bind/listen/poll/state/worker/boundary/...)
2026-06-04T14:33:01.8297323Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8297372Z 
2026-06-04T14:33:01.8297808Z ### REQ-API-3
2026-06-04T14:33:01.8298475Z - Title: commune/signoff are file-drops, not commands
2026-06-04T14:33:01.8298984Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8299002Z 
2026-06-04T14:33:01.8299785Z ### REQ-START-1
2026-06-04T14:33:01.8300756Z - Title: Adapters never resolve SPT_HOME; binary on PATH; api bridging only
2026-06-04T14:33:01.8301280Z - Required stages: impl, unit
2026-06-04T14:33:01.8301299Z 
2026-06-04T14:33:01.8301743Z ### REQ-START-2
2026-06-04T14:33:01.8302410Z - Title: Harness-hosted startup: api seed then listen
2026-06-04T14:33:01.8302927Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8302945Z 
2026-06-04T14:33:01.8303378Z ### REQ-START-3
2026-06-04T14:33:01.8304227Z - Title: spt-hosted startup: spawn-session then api bind (no file)
2026-06-04T14:33:01.8304732Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8304764Z 
2026-06-04T14:33:01.8305202Z ### REQ-START-4
2026-06-04T14:33:01.8305867Z - Title: Adapter-injected env aliases (SPT/OWL/LIVE)
2026-06-04T14:33:01.8306358Z - Required stages: impl, unit
2026-06-04T14:33:01.8306378Z 
2026-06-04T14:33:01.8306818Z ### REQ-EP-1
2026-06-04T14:33:01.8307435Z - Title: Day-one endpoint types; open type system
2026-06-04T14:33:01.8307940Z - Required stages: impl, unit
2026-06-04T14:33:01.8307959Z 
2026-06-04T14:33:01.8308754Z ### REQ-EP-2
2026-06-04T14:33:01.8309946Z - Title: Agent endpoints vs Shells distinction in the type model
2026-06-04T14:33:01.8310454Z - Required stages: impl, unit
2026-06-04T14:33:01.8310473Z 
2026-06-04T14:33:01.8310899Z ### REQ-EP-3
2026-06-04T14:33:01.8311838Z - Title: Messaging payloads carry typed operation commands + file blobs
2026-06-04T14:33:01.8312339Z - Required stages: impl, unit
2026-06-04T14:33:01.8312358Z 
2026-06-04T14:33:01.8312786Z ### REQ-EP-4
2026-06-04T14:33:01.8313495Z - Title: PresenceChannel broker endpoint (seam day-one)
2026-06-04T14:33:01.8313989Z - Required stages: impl, unit
2026-06-04T14:33:01.8314008Z 
2026-06-04T14:33:01.8314456Z ### REQ-EP-5
2026-06-04T14:33:01.8318283Z - Title: Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope
2026-06-04T14:33:01.8318749Z - Required stages: 
2026-06-04T14:33:01.8318781Z 
2026-06-04T14:33:01.8319263Z ### REQ-INST-1
2026-06-04T14:33:01.8320323Z - Title: endpoint ID vs instance split (adapter-agnostic ID)
2026-06-04T14:33:01.8320784Z - Required stages: 
2026-06-04T14:33:01.8320801Z 
2026-06-04T14:33:01.8321246Z ### REQ-INST-2
2026-06-04T14:33:01.8321796Z - Title: Per-node files, synced Psyche mind
2026-06-04T14:33:01.8322294Z - Required stages: impl, unit
2026-06-04T14:33:01.8322313Z 
2026-06-04T14:33:01.8322748Z ### REQ-INST-3
2026-06-04T14:33:01.8323464Z - Title: Dormant (warm) / suspended (cold) resting states
2026-06-04T14:33:01.8323981Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8324000Z 
2026-06-04T14:33:01.8324572Z ### REQ-INST-4
2026-06-04T14:33:01.8325463Z - Title: active to dormant/suspended fires a transition echo commune
2026-06-04T14:33:01.8325956Z - Required stages: impl, unit
2026-06-04T14:33:01.8325974Z 
2026-06-04T14:33:01.8326420Z ### REQ-INST-5
2026-06-04T14:33:01.8327300Z - Title: Two-tier context sync (live to all, project to same-project)
2026-06-04T14:33:01.8327810Z - Required stages: impl, unit
2026-06-04T14:33:01.8327829Z 
2026-06-04T14:33:01.8328274Z ### REQ-INST-6
2026-06-04T14:33:01.8329254Z - Title: Deferred messages not delivered to dormant/suspended instances
2026-06-04T14:33:01.8330075Z - Required stages: 
2026-06-04T14:33:01.8330094Z 
2026-06-04T14:33:01.8330529Z ### REQ-INST-7
2026-06-04T14:33:01.8331185Z - Title: Subnet registry + bare-id resolution policy
2026-06-04T14:33:01.8331687Z - Required stages: impl, unit
2026-06-04T14:33:01.8331704Z 
2026-06-04T14:33:01.8332135Z ### REQ-INST-8
2026-06-04T14:33:01.8332875Z - Title: Remote-control mode distinct from local operation
2026-06-04T14:33:01.8333384Z - Required stages: impl, unit
2026-06-04T14:33:01.8333402Z 
2026-06-04T14:33:01.8333841Z ### REQ-INST-9
2026-06-04T14:33:01.8334771Z - Title: Multi-subnet membership (same-user N subnets; cross-user seam)
2026-06-04T14:33:01.8335262Z - Required stages: impl, unit
2026-06-04T14:33:01.8335282Z 
2026-06-04T14:33:01.8335736Z ### REQ-INST-10
2026-06-04T14:33:01.8336794Z - Title: Qualified addressing [subnet:]id[@node] + ambiguity forces qualification
2026-06-04T14:33:01.8337291Z - Required stages: impl, unit
2026-06-04T14:33:01.8337309Z 
2026-06-04T14:33:01.8337748Z ### REQ-INST-11
2026-06-04T14:33:01.8338811Z - Title: spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)
2026-06-04T14:33:01.8339336Z - Required stages: impl, unit
2026-06-04T14:33:01.8339354Z 
2026-06-04T14:33:01.8340137Z ### REQ-INST-12
2026-06-04T14:33:01.8341662Z - Title: Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync
2026-06-04T14:33:01.8342166Z - Required stages: impl, unit
2026-06-04T14:33:01.8342183Z 
2026-06-04T14:33:01.8342614Z ### REQ-INST-13
2026-06-04T14:33:01.8343516Z - Title: Subnet-exclusive sync + per-endpoint subnet-membership list
2026-06-04T14:33:01.8344004Z - Required stages: impl, unit
2026-06-04T14:33:01.8344022Z 
2026-06-04T14:33:01.8344616Z ### REQ-INST-14
2026-06-04T14:33:01.8346679Z - Title: Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated
2026-06-04T14:33:01.8347193Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8347211Z 
2026-06-04T14:33:01.8347658Z ### REQ-INST-15
2026-06-04T14:33:01.8352122Z - Title: Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)
2026-06-04T14:33:01.8352647Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8352682Z 
2026-06-04T14:33:01.8353126Z ### REQ-REACH-1
2026-06-04T14:33:01.8353827Z - Title: Off-node remote-drive detection + file transfer
2026-06-04T14:33:01.8354333Z - Required stages: impl, unit
2026-06-04T14:33:01.8354351Z 
2026-06-04T14:33:01.8354787Z ### REQ-REACH-2
2026-06-04T14:33:01.8355544Z - Title: Remote command execution (deferred, consent-gated)
2026-06-04T14:33:01.8356034Z - Required stages: 
2026-06-04T14:33:01.8356053Z 
2026-06-04T14:33:01.8356493Z ### REQ-MSG-1
2026-06-04T14:33:01.8359012Z - 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-04T14:33:01.8359866Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8359885Z 
2026-06-04T14:33:01.8360332Z ### REQ-MSG-2
2026-06-04T14:33:01.8361729Z - Title: spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes
2026-06-04T14:33:01.8362413Z - Required stages: impl, unit
2026-06-04T14:33:01.8362435Z 
2026-06-04T14:33:01.8362887Z ### REQ-MSG-3
2026-06-04T14:33:01.8364959Z - Title: Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown
2026-06-04T14:33:01.8365471Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8365502Z 
2026-06-04T14:33:01.8365974Z ### REQ-NODE-IDENTITY
2026-06-04T14:33:01.8367120Z - Title: Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex
2026-06-04T14:33:01.8367629Z - Required stages: impl, unit
2026-06-04T14:33:01.8367647Z 
2026-06-04T14:33:01.8368075Z ### REQ-NET-1
2026-06-04T14:33:01.8368999Z - Title: WAN messaging first-class, behind default-on net feature flag
2026-06-04T14:33:01.8369542Z - Required stages: impl, unit
2026-06-04T14:33:01.8369563Z 
2026-06-04T14:33:01.8370001Z ### REQ-NET-2
2026-06-04T14:33:01.8370884Z - Title: n0 relay default + self-host knob + plain-language disclosure
2026-06-04T14:33:01.8371367Z - Required stages: impl
2026-06-04T14:33:01.8371387Z 
2026-06-04T14:33:01.8371827Z ### REQ-NET-3
2026-06-04T14:33:01.8372641Z - Title: Cross-node Psyche sync over P2P replaces gh-repo-sync
2026-06-04T14:33:01.8373133Z - Required stages: impl, unit
2026-06-04T14:33:01.8373150Z 
2026-06-04T14:33:01.8373606Z ### REQ-PAIR-1
2026-06-04T14:33:01.8374136Z - Title: TOTP-seeded SPAKE2 pairing
2026-06-04T14:33:01.8374637Z - Required stages: impl, unit
2026-06-04T14:33:01.8374655Z 
2026-06-04T14:33:01.8375106Z ### REQ-PAIR-2
2026-06-04T14:33:01.8375752Z - Title: Local trust store with TOFU + warn-on-change
2026-06-04T14:33:01.8376250Z - Required stages: impl, unit
2026-06-04T14:33:01.8376269Z 
2026-06-04T14:33:01.8376709Z ### REQ-PAIR-3
2026-06-04T14:33:01.8377427Z - Title: Fetch current pairing code from any paired node
2026-06-04T14:33:01.8377918Z - Required stages: impl, unit
2026-06-04T14:33:01.8377950Z 
2026-06-04T14:33:01.8378393Z ### REQ-PAIR-4
2026-06-04T14:33:01.8378927Z - Title: Subnet naming on first pairing
2026-06-04T14:33:01.8379467Z - Required stages: impl, unit
2026-06-04T14:33:01.8379485Z 
2026-06-04T14:33:01.8379935Z ### REQ-PAIR-5
2026-06-04T14:33:01.8381538Z - Title: Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing
2026-06-04T14:33:01.8382040Z - Required stages: impl, unit
2026-06-04T14:33:01.8382203Z 
2026-06-04T14:33:01.8382666Z ### REQ-PAIR-6
2026-06-04T14:33:01.8384006Z - Title: Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)
2026-06-04T14:33:01.8384512Z - Required stages: impl, unit
2026-06-04T14:33:01.8384529Z 
2026-06-04T14:33:01.8384971Z ### REQ-PAIR-7
2026-06-04T14:33:01.8385778Z - Title: Subnet icon (inline image metadata, GUI-only consumer)
2026-06-04T14:33:01.8386244Z - Required stages: 
2026-06-04T14:33:01.8386261Z 
2026-06-04T14:33:01.8386693Z ### REQ-SEC-1
2026-06-04T14:33:01.8388873Z - Title: Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants
2026-06-04T14:33:01.8389403Z - Required stages: impl, unit
2026-06-04T14:33:01.8389421Z 
2026-06-04T14:33:01.8389877Z ### REQ-NOTIF-1
2026-06-04T14:33:01.8391853Z - Title: Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts
2026-06-04T14:33:01.8392360Z - Required stages: impl, unit
2026-06-04T14:33:01.8392378Z 
2026-06-04T14:33:01.8392822Z ### REQ-NOTIF-2
2026-06-04T14:33:01.8394209Z - Title: spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)
2026-06-04T14:33:01.8394732Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8394750Z 
2026-06-04T14:33:01.8395191Z ### REQ-UPD-1
2026-06-04T14:33:01.8395744Z - Title: Peer-propagated update over P2P
2026-06-04T14:33:01.8396247Z - Required stages: impl, unit
2026-06-04T14:33:01.8396265Z 
2026-06-04T14:33:01.8396697Z ### REQ-UPD-2
2026-06-04T14:33:01.8397394Z - Title: All binaries signature-verified before handoff
2026-06-04T14:33:01.8398042Z - Required stages: impl, unit
2026-06-04T14:33:01.8398062Z 
2026-06-04T14:33:01.8398508Z ### REQ-UPD-3
2026-06-04T14:33:01.8399414Z - Title: No endpoint process terminates/suspends during self-update
2026-06-04T14:33:01.8399933Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8399951Z 
2026-06-04T14:33:01.8400408Z ### REQ-UPD-4
2026-06-04T14:33:01.8401328Z - Title: Update gated on user confirmation by default; opt-in full-auto
2026-06-04T14:33:01.8401824Z - Required stages: impl, unit
2026-06-04T14:33:01.8401842Z 
2026-06-04T14:33:01.8402283Z ### REQ-UPD-5
2026-06-04T14:33:01.8402950Z - Title: spt-core ripple-updates registered adapters
2026-06-04T14:33:01.8403452Z - Required stages: impl, unit
2026-06-04T14:33:01.8403472Z 
2026-06-04T14:33:01.8403922Z ### REQ-TERM-1
2026-06-04T14:33:01.8404826Z - Title: Process-supervisor terminal wrapper hosting broker PTYs
2026-06-04T14:33:01.8405350Z - Required stages: impl, unit
2026-06-04T14:33:01.8405370Z 
2026-06-04T14:33:01.8405825Z ### REQ-TERM-2
2026-06-04T14:33:01.8406780Z - Title: session-surface abstraction; send-keys + send-line injection
2026-06-04T14:33:01.8407282Z - Required stages: impl, unit
2026-06-04T14:33:01.8407300Z 
2026-06-04T14:33:01.8407749Z ### REQ-TERM-3
2026-06-04T14:33:01.8408428Z - Title: Byte-stream remote terminal streaming for v1
2026-06-04T14:33:01.8408936Z - Required stages: impl, unit
2026-06-04T14:33:01.8408954Z 
2026-06-04T14:33:01.8409453Z ### REQ-TERM-4
2026-06-04T14:33:01.8411394Z - Title: Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log
2026-06-04T14:33:01.8411920Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8411939Z 
2026-06-04T14:33:01.8412384Z ### REQ-FRONT-1
2026-06-04T14:33:01.8413238Z - Title: Day-one launcher/manager frontend (list/launch/attach/init)
2026-06-04T14:33:01.8413699Z - Required stages: 
2026-06-04T14:33:01.8413715Z 
2026-06-04T14:33:01.8414164Z ### REQ-INSTALL-1
2026-06-04T14:33:01.8415156Z - Title: Two install paths; signed one-line script; OS-service registration
2026-06-04T14:33:01.8415626Z - Required stages: 
2026-06-04T14:33:01.8415643Z 
2026-06-04T14:33:01.8416082Z ### REQ-INSTALL-2
2026-06-04T14:33:01.8416749Z - Title: Marketplace-repackaging-friendly install
2026-06-04T14:33:01.8417201Z - Required stages: 
2026-06-04T14:33:01.8417398Z 
2026-06-04T14:33:01.8417862Z ### REQ-INSTALL-3
2026-06-04T14:33:01.8418533Z - Title: Idempotent + interactive-optional first run
2026-06-04T14:33:01.8418988Z - Required stages: 
2026-06-04T14:33:01.8419006Z 
2026-06-04T14:33:01.8419506Z ### REQ-INSTALL-4
2026-06-04T14:33:01.8423123Z - Title: Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over
2026-06-04T14:33:01.8423592Z - Required stages: 
2026-06-04T14:33:01.8423608Z 
2026-06-04T14:33:01.8424066Z ### REQ-MIGRATE-1
2026-06-04T14:33:01.8424920Z - Title: Auto-detect and migrate a legacy claude_skill_owl install
2026-06-04T14:33:01.8425387Z - Required stages: 
2026-06-04T14:33:01.8425405Z 
2026-06-04T14:33:01.8425843Z ### REQ-INFRA-1
2026-06-04T14:33:01.8426748Z - Title: GitHub issue tracking for v1; tangled.org as migration target
2026-06-04T14:33:01.8427219Z - Required stages: 
2026-06-04T14:33:01.8427254Z 
2026-06-04T14:33:01.8427686Z ### REQ-DOCS-1
2026-06-04T14:33:01.8428695Z - Title: Dual-audience docs (human + AI dev-agent), markdown once / two depths
2026-06-04T14:33:01.8429153Z - Required stages: 
2026-06-04T14:33:01.8429206Z 
2026-06-04T14:33:01.8429656Z ### REQ-DOCS-2
2026-06-04T14:33:01.8430451Z - Title: Sub-10-minute runnable killer quickstart per audience
2026-06-04T14:33:01.8430921Z - Required stages: 
2026-06-04T14:33:01.8430940Z 
2026-06-04T14:33:01.8431386Z ### REQ-DOCS-3
2026-06-04T14:33:01.8432371Z - Title: Diátaxis structure; one canonical way to do X
2026-06-04T14:33:01.8432835Z - Required stages: 
2026-06-04T14:33:01.8432854Z 
2026-06-04T14:33:01.8433459Z ### REQ-DOCS-4
2026-06-04T14:33:01.8434498Z - Title: Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)
2026-06-04T14:33:01.8435285Z - Required stages: 
2026-06-04T14:33:01.8435306Z 
2026-06-04T14:33:01.8435927Z ### REQ-DOCS-5
2026-06-04T14:33:01.8437187Z - Title: Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked
2026-06-04T14:33:01.8437716Z - Required stages: 
2026-06-04T14:33:01.8437742Z 
2026-06-04T14:33:01.8438281Z ### REQ-HAZARD-GRACE-BEFORE-SIGNOFF
2026-06-04T14:33:01.8439298Z - Title: Grace-period wait completes before composing INIT_SIGNOFF (1.1)
2026-06-04T14:33:01.8439810Z - Required stages: impl, unit
2026-06-04T14:33:01.8439828Z 
2026-06-04T14:33:01.8440359Z ### REQ-HAZARD-INFO-JSON-TORN-READ
2026-06-04T14:33:01.8441097Z - Title: State-file reads tolerate concurrent writes (1.2)
2026-06-04T14:33:01.8441589Z - Required stages: impl, unit
2026-06-04T14:33:01.8441606Z 
2026-06-04T14:33:01.8442132Z ### REQ-HAZARD-STALE-INDEX-LOCK
2026-06-04T14:33:01.8442787Z - Title: Sweep stale lockfiles on daemon boot (1.3)
2026-06-04T14:33:01.8443254Z - Required stages: 
2026-06-04T14:33:01.8443272Z 
2026-06-04T14:33:01.8443774Z ### REQ-HAZARD-DEFERRED-DRAIN
2026-06-04T14:33:01.8444711Z - Title: Deferred spool rows excluded from the event-stream drain (1.4)
2026-06-04T14:33:01.8445226Z - Required stages: impl, unit
2026-06-04T14:33:01.8445245Z 
2026-06-04T14:33:01.8445738Z ### REQ-HAZARD-WORKER-PATH
2026-06-04T14:33:01.8446645Z - Title: Single source of truth for Worker/Psyche perch location (1.5)
2026-06-04T14:33:01.8447136Z - Required stages: impl, unit
2026-06-04T14:33:01.8447155Z 
2026-06-04T14:33:01.8447693Z ### REQ-HAZARD-PARENT-PID-PREFER
2026-06-04T14:33:01.8448648Z - Title: Prefer stable parent PID / broker handle over ephemeral PID (2.1)
2026-06-04T14:33:01.8449105Z - Required stages: 
2026-06-04T14:33:01.8449123Z 
2026-06-04T14:33:01.8449683Z ### REQ-HAZARD-STDIN-SESSION-ID
2026-06-04T14:33:01.8450323Z - Title: Stdin session_id precedence over env (2.2)
2026-06-04T14:33:01.8450802Z - Required stages: 
2026-06-04T14:33:01.8450821Z 
2026-06-04T14:33:01.8451354Z ### REQ-HAZARD-HANDOFF-ARGV-COMPAT
2026-06-04T14:33:01.8452161Z - Title: Broker/brain IPC + handoff argv version-tolerant (2.3)
2026-06-04T14:33:01.8452656Z - Required stages: impl, unit
2026-06-04T14:33:01.8452676Z 
2026-06-04T14:33:01.8453384Z ### REQ-HAZARD-GEN-START-NOW
2026-06-04T14:33:01.8454113Z - Title: gen_start = now() on cold-start and handoff (2.4)
2026-06-04T14:33:01.8454603Z - Required stages: impl, int
2026-06-04T14:33:01.8454621Z 
2026-06-04T14:33:01.8455158Z ### REQ-HAZARD-EPHEMERAL-CLEANUP
2026-06-04T14:33:01.8455969Z - Title: Ephemeral perch cleanup on every ring exit path (3.1)
2026-06-04T14:33:01.8456460Z - Required stages: impl, unit
2026-06-04T14:33:01.8456479Z 
2026-06-04T14:33:01.8457040Z ### REQ-HAZARD-STALE-SIGNOFF-SENTINEL
2026-06-04T14:33:01.8457855Z - Title: Stale signoff sentinel does not kill a fresh start (3.2)
2026-06-04T14:33:01.8458358Z - Required stages: impl, unit
2026-06-04T14:33:01.8458390Z 
2026-06-04T14:33:01.8458927Z ### REQ-HAZARD-ECHO-BEFORE-SIGNOFF
2026-06-04T14:33:01.8459904Z - Title: Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)
2026-06-04T14:33:01.8460404Z - Required stages: impl, unit
2026-06-04T14:33:01.8460425Z 
2026-06-04T14:33:01.8460963Z ### REQ-HAZARD-ENVELOPE-DECODE-ORDER
2026-06-04T14:33:01.8461748Z - Title: Envelope decode order, ampersand decoded last (4.1)
2026-06-04T14:33:01.8462251Z - Required stages: impl, unit
2026-06-04T14:33:01.8462270Z 
2026-06-04T14:33:01.8462798Z ### REQ-HAZARD-ENVELOPE-PARSER-SAFE
2026-06-04T14:33:01.8463674Z - Title: Two-slice envelope parser is panic-free and tolerant (4.2)
2026-06-04T14:33:01.8464167Z - Required stages: impl, unit
2026-06-04T14:33:01.8464184Z 
2026-06-04T14:33:01.8464724Z ### REQ-HAZARD-EVENTPART-REASSEMBLY
2026-06-04T14:33:01.8465822Z - Title: EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently
2026-06-04T14:33:01.8466312Z - Required stages: impl, unit
2026-06-04T14:33:01.8466476Z 
2026-06-04T14:33:01.8466987Z ### REQ-HAZARD-ID-CHARSET
2026-06-04T14:33:01.8468270Z - Title: Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)
2026-06-04T14:33:01.8468778Z - Required stages: impl, unit
2026-06-04T14:33:01.8468796Z 
2026-06-04T14:33:01.8469379Z ### REQ-HAZARD-REGISTRY-STALE-CLEAN
2026-06-04T14:33:01.8470351Z - Title: Stale registry entries degrade to fallback, never hard-fail (4.3)
2026-06-04T14:33:01.8470852Z - Required stages: impl, unit
2026-06-04T14:33:01.8470869Z 
2026-06-04T14:33:01.8471392Z ### REQ-HAZARD-REGISTRY-CONCURRENT
2026-06-04T14:33:01.8472712Z - Title: Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)
2026-06-04T14:33:01.8473215Z - Required stages: impl, unit
2026-06-04T14:33:01.8473232Z 
2026-06-04T14:33:01.8473758Z ### REQ-HAZARD-REGISTRY-DIR-CREATE
2026-06-04T14:33:01.8475621Z - Title: SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)
2026-06-04T14:33:01.8476132Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8476150Z 
2026-06-04T14:33:01.8476696Z ### REQ-HAZARD-REGISTRY-EPOCH-LEASE
2026-06-04T14:33:01.8478861Z - Title: Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)
2026-06-04T14:33:01.8479425Z - Required stages: impl, unit
2026-06-04T14:33:01.8479446Z 
2026-06-04T14:33:01.8480006Z ### REQ-HAZARD-DEFERRED-SURVIVE-DRAIN
2026-06-04T14:33:01.8480609Z - Title: Deferred rows survive poll drain (4.4)
2026-06-04T14:33:01.8481114Z - Required stages: impl, unit
2026-06-04T14:33:01.8481131Z 
2026-06-04T14:33:01.8481646Z ### REQ-HAZARD-INBOX-NO-DOUBLE
2026-06-04T14:33:01.8482271Z - Title: No double-delivery via legacy inbox (4.5)
2026-06-04T14:33:01.8482774Z - Required stages: impl, unit
2026-06-04T14:33:01.8482791Z 
2026-06-04T14:33:01.8483314Z ### REQ-HAZARD-WINDOWS-PID-RECYCLE
2026-06-04T14:33:01.8484131Z - Title: Windows PID-recycling false positives guarded (5.1)
2026-06-04T14:33:01.8484633Z - Required stages: impl, unit
2026-06-04T14:33:01.8484653Z 
2026-06-04T14:33:01.8485196Z ### REQ-HAZARD-EBUSY-RENAME
2026-06-04T14:33:01.8486019Z - Title: tmp-write + atomic-rename + retry on Windows EBUSY (5.2)
2026-06-04T14:33:01.8486507Z - Required stages: impl, unit
2026-06-04T14:33:01.8486728Z 
2026-06-04T14:33:01.8487277Z ### REQ-HAZARD-SUBPROCESS-TIMEOUT
2026-06-04T14:33:01.8488001Z - Title: Every harness/git subprocess has a timeout (5.3)
2026-06-04T14:33:01.8488493Z - Required stages: impl, unit
2026-06-04T14:33:01.8488512Z 
2026-06-04T14:33:01.8489026Z ### REQ-HAZARD-UNC-PATH-STRIP
2026-06-04T14:33:01.8489818Z - Title: Strip Windows UNC prefix on serialized paths (5.4)
2026-06-04T14:33:01.8490323Z - Required stages: impl, unit
2026-06-04T14:33:01.8490343Z 
2026-06-04T14:33:01.8490884Z ### REQ-HAZARD-SINGLE-PATH-SOURCE
2026-06-04T14:33:01.8491809Z - Title: Single path/registry source of truth; no layout ambiguity (6.1)
2026-06-04T14:33:01.8492320Z - Required stages: impl, unit
2026-06-04T14:33:01.8492338Z 
2026-06-04T14:33:01.8492824Z ### REQ-HAZARD-SOFT-CLEANUP
2026-06-04T14:33:01.8493810Z - Title: Soft-cleanup preserves state, removes only the ready marker (6.2)
2026-06-04T14:33:01.8494297Z - Required stages: impl, unit
2026-06-04T14:33:01.8494329Z 
2026-06-04T14:33:01.8494862Z ### REQ-HAZARD-CASCADE-WIPE-GUARD
2026-06-04T14:33:01.8495725Z - Title: No hard-delete of a parent hosting non-empty children (6.3)
2026-06-04T14:33:01.8496215Z - Required stages: impl, unit
2026-06-04T14:33:01.8496232Z 
2026-06-04T14:33:01.8496795Z ### REQ-HAZARD-DROP-FILE-SINGLE-WRITER
2026-06-04T14:33:01.8497499Z - Title: Drop files are daemon-owned single-writer (6.4)
2026-06-04T14:33:01.8498002Z - Required stages: impl, unit
2026-06-04T14:33:01.8498019Z 
2026-06-04T14:33:01.8498586Z ### REQ-HAZARD-DIRECT-WRITE-PRECEDENCE
2026-06-04T14:33:01.8499731Z - Title: Direct-write precedence marker (with node id) guards stale overwrite (6.5)
2026-06-04T14:33:01.8500407Z - Required stages: impl, unit
2026-06-04T14:33:01.8500432Z 
2026-06-04T14:33:01.8500995Z ### REQ-HAZARD-CONFLICT-BOTH-PRESERVED
2026-06-04T14:33:01.8504225Z - Title: A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)
2026-06-04T14:33:01.8504750Z - Required stages: impl, unit
2026-06-04T14:33:01.8504770Z 
2026-06-04T14:33:01.8505249Z ### REQ-HAZARD-CONPTY-DSR
2026-06-04T14:33:01.8506355Z - Title: ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)
2026-06-04T14:33:01.8506846Z - Required stages: impl, unit
2026-06-04T14:33:01.8506880Z 
2026-06-04T14:33:01.8507387Z ### REQ-HAZARD-LOCAL-API-AUTH
2026-06-04T14:33:01.8508476Z - Title: Every local `api` mutation authenticated to an endpoint/session (codex #13)
2026-06-04T14:33:01.8508974Z - Required stages: impl, unit
2026-06-04T14:33:01.8508991Z 
2026-06-04T14:33:01.8509578Z ### REQ-HAZARD-RESTART-IDEMPOTENT
2026-06-04T14:33:01.8510979Z - Title: Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)
2026-06-04T14:33:01.8511493Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8511510Z 
2026-06-04T14:33:01.8512026Z ### REQ-HAZARD-UPDATE-ROLLBACK
2026-06-04T14:33:01.8513392Z - Title: Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)
2026-06-04T14:33:01.8513900Z - Required stages: impl, unit
2026-06-04T14:33:01.8513917Z 
2026-06-04T14:33:01.8514476Z ### REQ-HAZARD-DAEMON-HOSTED-LIVENESS
2026-06-04T14:33:01.8516813Z - 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-04T14:33:01.8517329Z - Required stages: impl, unit, int
2026-06-04T14:33:01.8517348Z 
2026-06-04T14:33:01.8517888Z ### REQ-HAZARD-PSYCHE-OUTBOUND-PROXY
2026-06-04T14:33:01.8522143Z - Title: Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)
2026-06-04T14:33:01.8522663Z - Required stages: impl, unit
2026-06-04T14:33:01.8522681Z 
2026-06-04T14:33:01.8523229Z ### REQ-HAZARD-DAEMON-SCHED-NONBLOCKING
2026-06-04T14:33:01.8527754Z - Title: Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)
2026-06-04T14:33:01.8528329Z - Required stages: 
2026-06-04T14:33:01.8528374Z 
2026-06-04T14:33:01.8529023Z ### REQ-HAZARD-PAIR-TRANSCRIPT-BIND
2026-06-04T14:33:01.8533231Z - Title: Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)
2026-06-04T14:33:01.8533920Z - Required stages: impl, unit
2026-06-04T14:33:01.8533942Z 
2026-06-04T14:33:01.8534844Z ### REQ-HAZARD-PAIR-SEED-ROTATION
2026-06-04T14:33:01.8538218Z - Title: Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)
2026-06-04T14:33:01.8539011Z - Required stages: impl, unit
2026-06-04T14:33:01.8539031Z 
2026-06-04T14:33:01.8539965Z ### REQ-HAZARD-PAIR-RATE-LIMIT
2026-06-04T14:33:01.8545122Z - Title: Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)
2026-06-04T14:33:01.8545805Z - Required stages: impl, unit
2026-06-04T14:33:01.8545826Z 
2026-06-04T14:33:01.8546527Z ### REQ-HAZARD-WAN-ORIGIN-AUTH
2026-06-04T14:33:01.8551433Z - Title: WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)
2026-06-04T14:33:01.8552043Z - Required stages: doc, impl, unit
2026-06-04T14:33:01.8552094Z 
2026-06-04T14:33:01.8559870Z ## How to report back
2026-06-04T14:33:01.8559921Z 
2026-06-04T14:33:01.8560857Z For every (requirement, failing criterion) pair, emit one finding:
2026-06-04T14:33:01.8560881Z 
2026-06-04T14:33:01.8561306Z     {
2026-06-04T14:33:01.8561802Z       "code": "requirement_quality",
2026-06-04T14:33:01.8562308Z       "requirementId": "REQ-...",
2026-06-04T14:33:01.8563168Z       "criterion": "singular" | "verifiable" | "atomic" | "active-voice",
2026-06-04T14:33:01.8563657Z       "message": "<short reason>",
2026-06-04T14:33:01.8564245Z       "suggestedRevision": "<optional rewrite>"
2026-06-04T14:33:01.8564658Z     }
2026-06-04T14:33:01.8564719Z 
2026-06-04T14:33:01.8565690Z Wrap your response as { "findings": [ ... ] } listing only your concerns; the
2026-06-04T14:33:01.8566416Z deterministic findings above don't need to be repeated.
2026-06-04T14:33:01.8848716Z Post job cleanup.
2026-06-04T14:33:02.0178958Z [command]/usr/bin/git version
2026-06-04T14:33:02.0241207Z git version 2.34.1
2026-06-04T14:33:02.0296049Z Copying '/home/david/.gitconfig' to '/home/david/actions-runner/_work/_temp/72ce9831-7c68-41d9-ae38-f42635897efa/.gitconfig'
2026-06-04T14:33:02.0319503Z Temporarily overriding HOME='/home/david/actions-runner/_work/_temp/72ce9831-7c68-41d9-ae38-f42635897efa' before making global git config changes
2026-06-04T14:33:02.0323896Z Adding repository directory to the temporary git global config as a safe directory
2026-06-04T14:33:02.0327400Z [command]/usr/bin/git config --global --add safe.directory /home/david/actions-runner/_work/spt-core/spt-core
2026-06-04T14:33:02.0376580Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
2026-06-04T14:33:02.0424439Z [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-04T14:33:02.0673641Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
2026-06-04T14:33:02.0704461Z http.https://github.com/.extraheader
2026-06-04T14:33:02.0718563Z [command]/usr/bin/git config --local --unset-all http.https://github.com/.extraheader
2026-06-04T14:33:02.0762700Z [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-04T14:33:02.1019660Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
2026-06-04T14:33:02.1055949Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
2026-06-04T14:33:02.1505854Z Cleaning up orphan processes
