Background / Issue
Existing static translation and content files (and any existing translations blob rows) must be
moved into the new key-level tables once per environment, idempotently, including converting
markdown bodies to HTML.
Technical Context
Acceptance Criteria
- Re-running upserts rather than duplicates; a dry-run reports changes without writing.
- Base and public/Partners overrides land in the correct key rows; non-English rows carry a
sourceHash of their English source.
- Markdown content bodies are converted to sanitized HTML and open cleanly in the editor; the
dry-run report lists each converted body.
QA Notes
Backend. Run the dry-run and confirm the reported changes; run for real and confirm idempotency on a
second run. Spot-check converted markdown bodies render correctly and open in Tiptap.
Background / Issue
Existing static translation and content files (and any existing
translationsblob rows) must bemoved into the new key-level tables once per environment, idempotently, including converting
markdown bodies to HTML.
Technical Context
script-runnercommand that: explodes existingtranslationsblobs into per-key rows; loadsbase and per-site overrides into key rows (Partners overrides as global
null-jurisdiction rows)with
sourceHashbaselines; extracts structured content intoJurisdictionContent, convertingmarkdown bodies to sanitized HTML. Idempotent, with a dry-run flag.
Acceptance Criteria
sourceHashof their English source.dry-run report lists each converted body.
QA Notes
Backend. Run the dry-run and confirm the reported changes; run for real and confirm idempotency on a
second run. Spot-check converted markdown bodies render correctly and open in Tiptap.