Follow-up to #173 (DOI capability, MILESTONE row 11). Three items were deliberately deferred during v1; only the first is actionable now.
1. Proxy URN-colon carrier (actionable)
The DOI proxy understands colon-for-initial-slash substitution (Handbook §6.3.1 NOTE): https://doi.org/urn:doi:10.123:456 resolves 10.123/456, with multi-slash suffixes hex-encoded (10.123/456ABC/zyz → …:456ABC%2Fzyz). v1 recognizes bare urn:doi: but never maps the colon, so these read MISSING (pinned by test_urn_colon_form_missing in tests/capabilities/doi/test_grammar.py).
Acceptance: new carrier group (colon→slash mapping + %2F rule) resolving https://doi.org/urn:doi:10.123:456 → SUCCESS 10.123/456 (prefix must still satisfy the 4–9 registrant bound, so 10.123:456 stays MISSING); distinct grammar semantics id per the affinity rule (research §4.5); natural fit for an extra_grammars community extension rather than the shipped grammar.
Refs: research §13 row 11 (docs/development/research/2026-09-18-doi-canonicalization.md), plan Task 3 (docs/development/plans/2026-09-18-doi-capability.md), Handbook local conversion docs/development/research/DOIHandbook_2025.pdf.md:2298-2307.
2. Future triggers (not actionable — revisit only if the Foundation acts)
- Non-
10. directory indicators (Handbook §4.3.2 reserves them): v1's 10. gate reads them MISSING by design.
- ≥10-digit registrants (Handbook: no defined length limit): v1's
{4,9} bound encodes current allocation practice.
- Either allocation change requires a
recognition_revision bump and a bound/gate revisit (research §13 row 4). No action until observed in the wild.
Follow-up to #173 (DOI capability, MILESTONE row 11). Three items were deliberately deferred during v1; only the first is actionable now.
1. Proxy URN-colon carrier (actionable)
The DOI proxy understands colon-for-initial-slash substitution (Handbook §6.3.1 NOTE):
https://doi.org/urn:doi:10.123:456resolves10.123/456, with multi-slash suffixes hex-encoded (10.123/456ABC/zyz→…:456ABC%2Fzyz). v1 recognizes bareurn:doi:but never maps the colon, so these read MISSING (pinned bytest_urn_colon_form_missingintests/capabilities/doi/test_grammar.py).Acceptance: new carrier group (colon→slash mapping + %2F rule) resolving
https://doi.org/urn:doi:10.123:456→ SUCCESS10.123/456(prefix must still satisfy the 4–9 registrant bound, so10.123:456stays MISSING); distinct grammar semantics id per the affinity rule (research §4.5); natural fit for anextra_grammarscommunity extension rather than the shipped grammar.Refs: research §13 row 11 (
docs/development/research/2026-09-18-doi-canonicalization.md), plan Task 3 (docs/development/plans/2026-09-18-doi-capability.md), Handbook local conversiondocs/development/research/DOIHandbook_2025.pdf.md:2298-2307.2. Future triggers (not actionable — revisit only if the Foundation acts)
10.directory indicators (Handbook §4.3.2 reserves them): v1's10.gate reads them MISSING by design.{4,9}bound encodes current allocation practice.recognition_revisionbump and a bound/gate revisit (research §13 row 4). No action until observed in the wild.