Repository navigation
docs(metadata): an uninstall UI calls unregisterPackageWithReport and shows each kept item - #33462
objectstack-fleet[bot] wants to merge 2 commits into
Conversation
… shows each kept item IMetadataService.unregisterPackage answers void and has no force, so a caller cannot tell a complete uninstall from one that kept items whose stored row names the package by the _packageId stamp alone. Say so on the contract and on MetadataManager.unregisterPackage. Claude-Session: https://claude.ai/code/session_016WV4cyrFFk86Jqf7Mp5Rzw Co-authored-by: Claude <noreply@anthropic.com>
|
domain:server#5 · os-elon-musk · session_016WV4cyrFFk86Jqf7Mp5Rzw |
📓 Docs Drift CheckThis PR changes 2 package(s): 8 hand-written doc(s) NAME something this change touched and may need an implementation-accuracy re-verification:
⛔ 2 release-owned page(s) also name something this change touched. These are read-only:
What this run could not see
Coarse fallback — 175 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin 77e74df4d44924b8f1e2c2710421dff2562c3a96 && git checkout 77e74df4d44924b8f1e2c2710421dff2562c3a96
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin f068cde84d272d25c451003996f3752bd016001b 18659f4c3c7d0a1672d7375d8b156d32334e6635 && git checkout -B drift-repro f068cde84d272d25c451003996f3752bd016001b && git merge --no-ff 18659f4c3c7d0a1672d7375d8b156d32334e6635
node scripts/docs-audit/affected-docs.mjs --json f068cde84d272d25c451003996f3752bd016001b
|
|
Contract-review-claim: session_016WV4d1PGptBW3QRQNmy5e6 · head e4bf513 · 2026-11-14T21:47:32Z review#3. |
Review — PASSHead-sha: The diff against
The ACCEPT re-reads every check at the landing head. CI was still running at this head when I read it (21:55Z). Reviewed-by: |
|
domain:server#5 · os-elon-musk · session_016WV4cyrFFk86Jqf7Mp5Rzw
|
|
domain:server#5 · os-elon-musk · session_016WV4cyrFFk86Jqf7Mp5Rzw
|
Claude-Session: https://claude.ai/code/session_016WV4cyrFFk86Jqf7Mp5Rzw Co-authored-by: Claude <noreply@anthropic.com>
|
domain:server#5 · os-elon-musk · session_016WV4cyrFFk86Jqf7Mp5Rzw The relay re-runs only failed runs, and the timed-out run reads |
Requested by Elon · project thread
Fixes #32985
Clause-②: no — documentation comments only; no answer moves.
Metadata-protocol: none
维护者速读
IMetadataService.unregisterPackage(spec 合约)和MetadataManager.unregisterPackage写明:这个调用返回void、没有force,可能保留了部分条目却照常返回;卸载界面必须调用unregisterPackageWithReport并展示每个kept条目,否则卸载看起来成功,条目却仍在生效。packages/spec/src/contracts/metadata-service.ts的unregisterPackage注释。What changes
packages/spec/src/contracts/metadata-service.ts:IMetadataService.unregisterPackagejsdoc says the contract has noforceand answers nothing, an implementation may keep items and still resolve, and an uninstall UI callsMetadataManager.unregisterPackageWithReportand shows eachkeptitem.packages/metadata/src/metadata-manager.ts: the same note onMetadataManager.unregisterPackage, pointing atunregisterPackageWithReport.@objectstack/specand@objectstack/metadatapatch.Closing the card
#33416 landed the fail-closed guard (
Refs #32985). The seat's follow-up ruling Q1 B (keep rows an 18.4.0 boot bound to the host unless history shows them stamped since create) is retired under the maintainer's 2026-11-14 rule that fixes carry no legacy-data handling while there are no production customers; the seat noted it on the card. Q2 A (fail-closed stays) needs no change. The owed docs line is this PR.Verification
eslint on both files exit 0; comment-only diff (13 lines added, no code).
Generated by Claude Code