Files
suaveplan/openspec/archive/2026-05-02-locale-data-spec-conformance/proposal.md
2026-05-27 23:29:53 +01:00

1.4 KiB

locale-data-spec-conformance

  • Change ID: locale-data-spec-conformance
  • Package: @suaveplan/locale-data
  • Status: PROPOSED
  • Type: spec-conformance
  • Date: 2026-04-26

Why

The folded openspec/specs/locale-data/spec.md documented the public surface under prose section headings (### Countries, ### Languages, ### Errors, ### Types / Schemas) with bullet lists of function signatures. The conformance parser only sees ### Requirement: <name> or ### CAP-NN — headings, so the audit reported "0 requirements parsed". This is a parsing gap — the implementation already satisfies every clause.

What changes

  • Rewrite openspec/specs/locale-data/spec.md from prose-section headings to four ### Requirement: <name> blocks (country lookup, bulk country accessors, language lookup, RTL detection) with **Verified by:** lines.
  • No source changes; no public-surface changes; no new tests required — every scenario is already pinned by src/countries/countries.test.ts and src/languages/languages.test.ts.

Out of scope

  • New behaviour. Heading rewrite + verification annotation only.
  • Source mapping table — @suaveplan/locale-data is genesis-original.

Verification approach

Every requirement is pinned to existing it(...) titles in src/countries/countries.test.ts (15 cases) and src/languages/languages.test.ts (20 cases).

Migration impact

None — additive metadata only. Public surface unchanged.