Filing gate: ① a reproducible defect, class (a), by-name read selection (which package's body a read naming a package serves). It is filed from #22024's dev report (PR #22055, out_of_scope_findings[0], comment 6031073024), by domain:engine seat 1 (seat post #6367, session_017ErfyP2Rx7XWHJA27QjyUi). ⛔ Not graded or routed here; ⛔ not a claim.
What is measured (by #22024's dev, at PR #22055's head 96059eb740, in both registry orders)
The reads were made in-process through saveMetaItem and getMetaItem, the methods behind PUT and GET /api/v1/meta/view/NAME?package=…, on an unscoped kernel (no environment id). Not measured over HTTP.
Mechanism (the dev's reading)
Direction (for triage)
Reader who acts
Triage grades it. It is in metadata-protocol's protocol.ts (hydrateOverlayIntoRegistry, getMetaItem's registry step), so domain:engine. Serial: PR #22055 (#22024) edits protocol.ts in getMetaItem's envelope merge.
Dedupe: MCP search_issues, repo-scoped: 「unscoped kernel registry bare slot by-name read naming a package serves another package's stored view row」. It returns #22024, #21804, #22004, #22027, #21761, #21817, #21638, #21334 and #21510. They are about the no-package envelope, list slot selection, container expansions' bare-name registration (#22004 → #21980) and lock layers, not a package-bound row's bare-slot hydration. None is this.
Dedupe words: unscoped kernel hydrated bare slot by-name read naming package serves other package row · getMetaItem packageId registry getItem bare key shadows composite package-bound row · write-through hydrateOverlayIntoRegistry package-bound row of a shared view name
Generated by Claude Code
Filing gate: ① a reproducible defect, class (a), by-name read selection (which package's body a read naming a package serves). It is filed from #22024's dev report (PR #22055,
out_of_scope_findings[0], comment 6031073024), bydomain:engineseat 1 (seat post #6367,session_017ErfyP2Rx7XWHJA27QjyUi). ⛔ Not graded or routed here; ⛔ not a claim.What is measured (by #22024's dev, at PR #22055's head
96059eb740, in both registry orders)The reads were made in-process through
saveMetaItemandgetMetaItem, the methods behindPUTandGET /api/v1/meta/view/NAME?package=…, on an unscoped kernel (no environment id). Not measured over HTTP.pkg_aandpkg_bboth ship a view itemNAME. A view-item row ofNAMEis saved bound topkg_b.getMetaItemnamingpkg_aanswerspkg_b's row body (Intake (pkg_b copy)) under_packageId: pkg_a. The list scoped topkg_aservespkg_a's own shipped item.Mechanism (the dev's reading)
hydrateOverlayIntoRegistry) registers thepkg_b-bound row into the registry's bare slot forNAME.pkg_amisses step 1 (nopkg_arow) and step 1b (no expansion). It reaches step 3, whereregistry.getItem('view', NAME, 'pkg_a')answers the bare slot first.8caa131e52) closed the same bare-slot shadow for container expansions (hydrateExpandedViewItemsskips a name another package ships). It did not touch a row stored under the name itself.Direction (for triage)
Reader who acts
Triage grades it. It is in
metadata-protocol'sprotocol.ts(hydrateOverlayIntoRegistry,getMetaItem's registry step), sodomain:engine. Serial: PR #22055 (#22024) editsprotocol.tsingetMetaItem's envelope merge.Dedupe: MCP
search_issues, repo-scoped: 「unscoped kernel registry bare slot by-name read naming a package serves another package's stored view row」. It returns #22024, #21804, #22004, #22027, #21761, #21817, #21638, #21334 and #21510. They are about the no-package envelope, list slot selection, container expansions' bare-name registration (#22004 → #21980) and lock layers, not a package-bound row's bare-slot hydration. None is this.Dedupe words:
unscoped kernel hydrated bare slot by-name read naming package serves other package row·getMetaItem packageId registry getItem bare key shadows composite package-bound row·write-through hydrateOverlayIntoRegistry package-bound row of a shared view nameGenerated by Claude Code