Files
2026-05-27 23:29:53 +01:00

2.0 KiB

Tasks: @suaveplan/locale-data

Task 3.1 — OpenSpec + scaffold ✅

  • Create openspec/changes/enterprise-locale-data/proposal.md + tasks.md
  • Scaffold package directory and config files
  • bun install
  • Commit: chore(locale-data): scaffold package

Task 3.2 — Error class + types

  • Implement src/errors/locale-data-error.ts with LOCALE_DATA_CODES
  • Create src/errors/locale-data-error.md
  • Implement src/types/types.ts with CountryItemSchema and LanguageItemSchema
  • Create barrels: src/errors/index.ts, src/types/index.ts
  • Commit: feat(locale-data): add error class and types

Task 3.3 — countries module (TDD)

  • Write tests in src/countries/countries.test.ts
  • Run tests → confirm FAIL
  • Implement src/countries/countries.data.ts (static data)
  • Implement src/countries/countries.ts (lookup functions + OTel)
  • Create src/countries/countries.schemas.ts and countries.md
  • Create src/countries/index.ts barrel
  • Run tests → confirm PASS
  • Commit: feat(locale-data): add countries module

Task 3.4 — languages module (TDD)

  • Write tests in src/languages/languages.test.ts
  • Run tests → confirm FAIL
  • Implement src/languages/languages.data.ts (static data)
  • Implement src/languages/languages.ts (lookup functions + OTel)
  • Create src/languages/languages.schemas.ts and languages.md
  • Create src/languages/index.ts barrel
  • Run tests → confirm PASS
  • Commit: feat(locale-data): add languages module

Task 3.5 — Docs + pre-publish gate

  • Create README.md
  • bun run docs:check --filter=@suaveplan/locale-data → 100%
  • bunx turbo lint typecheck test --filter=@suaveplan/locale-data → green
  • bunx turbo test:coverage --filter=@suaveplan/locale-data → 100%
  • bun scripts/publish.ts --package @suaveplan/locale-data
  • Archive openspec changes
  • Create openspec/specs/locale-data/spec.md
  • Commit: release(locale-data): v0.0.0 — publish to Verdaccio