Files
jobtrackingapp/docs/i18n/00/BASELINE_TESTS.md
T

2.7 KiB

Planning evidence and baseline checks

2026-11-02. Baseline 5cb903b989742b7a96cb22ddf4c0e24993b18980, branch feature/i18n-00-audit. Documentation only. No runtime code, test code, lockfiles or settings changed.

Check Result Scope
git diff ba04d817fed26d659bfa2a56b089d6cac851dc34 HEAD --stat -- JobTrackerApi JobTrackerApi.Tests JobTrackerApi.MariaDb.Tests job-tracker-ui tools/summarizer PASSED: empty diff, exit 0 Source identity only; no fresh runtime assertion
English catalogue AST extraction using existing TypeScript PASSED: 3,119 unique keys Property assignments required to be string literals; duplicate/unsupported members throw; 134 non-test TS/TSX files scanned
Static syntactic t call association 3,164 sites; 188 dynamic/unknown calls; 853 entries without static caller Partial inventory, not symbol resolution or coverage proof; no dead-code inference
Existing Ajv draft-07 validation PASSED: 60 entries LOCALE_SCHEMA.json compiled and validated LOCALE_CATALOG.json; no installed dependency changes
Uniqueness and Intl.getCanonicalLocales parsing PASSED: 60 unique parseable tags Node v24.19.0, ICU 78.3; syntax acceptance is not runtime translation availability
Negative publication fixture PASSED In-memory copy changed first surfaces.ui from planned to released; validator rejected it
Montenegrin identity OPEN Intl maps cnr-ME to sr-ME; product semantics require explicit resolution before registry implementation
Product/unit/browser/MariaDB/Python suites NOT RUN No implementation changes; existing accepted evidence remains historical
Native/legal/AT/device/PDF/hosted/production/provider/model qualification NOT RUN No authority or claim conferred by planning checks

The inventory records its baseline, parser version, exact source SHA-256 and source line for each English message. Callers retain expressions and file/line, making manual review possible. Extraction covers the en object in translations.ts, excludes *.test.*, and associates literal first arguments of expressions named t or ending in .t. Dynamic keys, aliases, direct property reads, C#/Python messages and hardcoded JSX are not completely captured. Recompute after source changes; do not extrapolate counts to full application completeness.

Research sources checked on this date: CLDR 49 territory table, EU official-language list, i18next plural documentation, FormatJS ICU syntax, Norwegian Language Act, Swiss federal multilingualism guidance and Serbian government constitution. Specific links and limitations are in the matrix and implementation plan. No production data or private user text was sent to translation services.