Measured while re-closing tool.json against a live cloud checkout (refs #13042). That card's fence is packages/spec/liveness/tool.json only, so the identical defect in its three siblings is filed rather than fixed.
Census at 74049254
Ledger entries whose evidence / producer cites the prefix packages/services/service-ai/:
| ledger |
entries citing the stale prefix |
_note repeats the falsified sentence |
agent.json |
11 |
yes |
skill.json |
8 |
yes |
action.json |
3 |
yes |
tool.json |
5 (repaired in #13042) |
repaired |
22 entry citations remain after #13042 lands.
Both halves of the claim are false, and each is false in its own way
1. The framework tree is absent, not stale. All four notes say the framework's own service-ai tree "is a stale build artifact with no src/". Measured in this checkout: git ls-files | grep -ic service-ai returns 0, find . -name service-ai returns nothing, and packages/services/ holds 16 members, none of them service-ai. There is no artifact to be stale.
2. The cited path is wrong for the cloud repo too. Cloud's real layout (measured at cloud origin/main@15f55df) is packages/service-ai/… and packages/service-ai-studio/… — never packages/services/service-ai/…. So the 22 citations name a path that exists in neither repository. They are unfalsifiable pointers, which is exactly the condition the ledger's own README says a live verdict must not rest on.
The mechanical trap a repair will hit
packages/spec/scripts/liveness/evidence.mts hardcodes
export const FOREIGN_PATH_PREFIXES = ['packages/services/service-ai/'];
so the stale spelling is silently treated as foreign and never resolved — which is why 22 dead pointers have sat green. The real cloud path packages/service-ai/… is repo-rooted in shape and is NOT in that list, so a naive repoint resolves it as LOCAL and fails CI.
Every repointed citation therefore MUST carry the cloud realm marker (cloud @<sha>: packages/service-ai/…). This is not optional prose — it is the difference between a green gate and a red one. #13042 hit this and its _note now records it.
Suggested shape of the work
Same as #13042, once per ledger: read each cited consumer against a real cloud checkout, confirm or falsify, stamp verifiedAt, repoint with the cloud realm marker plus a pinned cloud SHA and a #symbol anchor, and repair the _note. Each of the three is independently doable.
Executor constraint (the same one that parked #13042 for a day): a container with the cloud repo checked out. A framework-only container cannot close any of these 22 without manufacturing false confidence — it can only re-spell the path.
Whether FOREIGN_PATH_PREFIXES should also gain packages/service-ai/ is a separate judgement: doing so would make an unmarked citation of the real path pass silently, which trades one unfalsifiable spelling for another. #13042 chose the realm marker instead and did not touch the constant.
Measured while re-closing
tool.jsonagainst a live cloud checkout (refs #13042). That card's fence ispackages/spec/liveness/tool.jsononly, so the identical defect in its three siblings is filed rather than fixed.Census at
74049254Ledger entries whose
evidence/producercites the prefixpackages/services/service-ai/:_noterepeats the falsified sentenceagent.jsonskill.jsonaction.jsontool.json5(repaired in #13042)22 entry citations remain after #13042 lands.
Both halves of the claim are false, and each is false in its own way
1. The framework tree is absent, not stale. All four notes say the framework's own service-ai tree "is a stale build artifact with no
src/". Measured in this checkout:git ls-files | grep -ic service-aireturns0,find . -name service-aireturns nothing, andpackages/services/holds 16 members, none of them service-ai. There is no artifact to be stale.2. The cited path is wrong for the cloud repo too. Cloud's real layout (measured at cloud
origin/main@15f55df) ispackages/service-ai/…andpackages/service-ai-studio/…— neverpackages/services/service-ai/…. So the 22 citations name a path that exists in neither repository. They are unfalsifiable pointers, which is exactly the condition the ledger's own README says aliveverdict must not rest on.The mechanical trap a repair will hit
packages/spec/scripts/liveness/evidence.mtshardcodesso the stale spelling is silently treated as foreign and never resolved — which is why 22 dead pointers have sat green. The real cloud path
packages/service-ai/…is repo-rooted in shape and is NOT in that list, so a naive repoint resolves it as LOCAL and fails CI.Every repointed citation therefore MUST carry the
cloudrealm marker (cloud @<sha>: packages/service-ai/…). This is not optional prose — it is the difference between a green gate and a red one. #13042 hit this and its_notenow records it.Suggested shape of the work
Same as #13042, once per ledger: read each cited consumer against a real cloud checkout, confirm or falsify, stamp
verifiedAt, repoint with thecloudrealm marker plus a pinned cloud SHA and a#symbolanchor, and repair the_note. Each of the three is independently doable.Executor constraint (the same one that parked #13042 for a day): a container with the
cloudrepo checked out. A framework-only container cannot close any of these 22 without manufacturing false confidence — it can only re-spell the path.Whether
FOREIGN_PATH_PREFIXESshould also gainpackages/service-ai/is a separate judgement: doing so would make an unmarked citation of the real path pass silently, which trades one unfalsifiable spelling for another. #13042 chose the realm marker instead and did not touch the constant.