Skip to content

The dispatcher /metadata transport decides org scope from the RAW path segment — the #10340 defect on the second transport #10503

Description

@os-elon

Found while implementing #10340 (the REST /meta doors' half). Filed unassigned; recording only, not claiming.

What is wrong

#10340 measured and fixed the REST /meta doors deciding organization scope from the raw URL spelling while storage folds through the complete META_URL_TO_SINGULAR map. The dispatcher transport has the same shape and was outside that card's declared file surface:

Direction already settled

The correction is the one #10340 landed for REST and the one packages/spec/src/meta-spelling/metadata-url-spelling.ts mandates: fold the segment through canonicalMetaUrlType at the boundary, before the scope decision. ⛔ Not by widening declaresOrgOverridepackages/metadata-core/src/meta-write-org-scope.ts now documents and pins that limit (see the ORG_OVERRIDABLE_TYPES header and meta-write-org-scope.test.ts).

Note for whoever takes it: packages/rest/src/rest-server-meta-org-scope-url-spelling.test.ts is the REST-side suite to mirror; the dispatcher's meta-write-org-scope.test.ts twin in packages/runtime pins the end-to-end row and is where the dispatcher-side cases belong.

Reachability caveat (grading input, not a claim)

Whether real callers reach the dispatcher transport with plural spellings is not measured here — the SDK's item routes are the likely producer (#10078's subject). The REST transport was the measured, user-visible surface; this one is recorded so the class is closed on both transports rather than one.

Related: #10340 (REST half, measured + fixed) · #10078 · #7894 · #9454


Generated by Claude Code

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions