Skip to content

docs(dnn): #457 Phase 1 — content audit + UI-strings CSV - #461

Merged
jsboige merged 1 commit into
masterfrom
docs/dnn-i18n-phase1-content-audit
Jun 13, 2026
Merged

docs(dnn): #457 Phase 1 — content audit + UI-strings CSV#461
jsboige merged 1 commit into
masterfrom
docs/dnn-i18n-phase1-content-audit

Conversation

@jsboige

@jsboige jsboige commented Jun 13, 2026

Copy link
Copy Markdown
Contributor

Epic #457 Phase 1 (Content Extraction), repo-side slice.

Key finding: DNN export holds templates/HTML but NOT portal content DB. Glossary, FAQ, rules per-page, SEO/nav = DB-only → requires DNN/2sxc data export (jsboige access) before translation can run.

Deliverables:

  • docs/dnn-localization/PHASE1-content-audit.md — full inventory (in-repo vs DB-only)
  • docs/dnn-localization/dnn-ui-strings.csv — 10 UI strings, DatasetUpdater-ready

Also logs i18n bug: _FallacyExplorer_Root.cshtml hardcodes text_en regardless of culture.

Patch by po-2023, applied by ai-01.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

…raction

Epic #457 Phase 1 (Content Extraction), repo-side slice. Pure prep — no
release artifact, no DNN write, release gate untouched.

Key finding: the DNN export in this repo holds 2sxc/Razor TEMPLATES and
static HTML, but NOT the portal content DB. Resource-dictionary values and
all 2sxc content items (glossary, FAQ, homepage, per-rule content, page
SEO/nav) are DB-only — they require a DNN/2sxc data export (jsboige access,
Phase 4 dependency) before CSV-driven translation can run. This corrects the
epic's optimistic in-repo estimates.

Deliverables:
- docs/dnn-localization/PHASE1-content-audit.md — full inventory: in-repo vs
  DB-only, per-source counts, static-page assessment, next steps.
- docs/dnn-localization/dnn-ui-strings.csv — DatasetUpdater-compatible
  (key/context/source_file/fr/en/ru/pt/es/ar/fa/zh/notes). 2 hardcoded UI
  strings (real FR) + 8 @Resources keys (FR inferred, flagged verify-vs-DB).

Also logs an i18n bug: _FallacyExplorer_Root.cshtml pins text_en/desc_en/
link_en + literal "find out more" regardless of culture (fix deferred to
Phase 2/4, flagged to ai-01).

Refs #457
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[NanoClaw]

Clean audit deliverable. No issues to block.

What this PR adds:

  • docs/dnn-localization/PHASE1-content-audit.md (160 lines) — inventory of translatable content across the Argumentum DNN site, split into repo-extractable vs DB-only buckets.
  • docs/dnn-localization/dnn-ui-strings.csv (11 rows, header + 10 strings) — DatasetUpdater-compatible CSV with 2 hardcoded UI strings (real FR values) and 8 resource keys (FR inferred, flagged INFERRED).

Checked:

  • All 4 referenced .cshtml templates exist at the stated paths in the repo.
  • CSV columns match the described DatasetUpdater schema (key, context, source_file, fr, en, ru, pt, es, ar, fa, zh, notes).
  • INFERRED values clearly flagged in both audit and notes column. The audit correctly distinguishes hardcoded strings (verifiable) from resource keys (DB-only, unverified).
  • i18n bug on _FallacyExplorer_Root.cshtml (hardcoded text_en/desc_en/link_en regardless of culture) is documented with a reference to the exact template and line. Logged as a future fix item, not addressed here — correct scope for Phase 1.
  • Static HTML pages (fallacies.html 81KB, MariagePourTous.html 38KB) are inventoried but wisely deferred — dumping raw HTML into a translation CSV without confirming live-nav status would be noise.
  • No secrets, no executable code, no risk to the release gate (explicitly untouched per the PR description).

Minor observation (non-blocking): The ui.rules.players_range FR value uses &agrave; HTML entity in the source template but the CSV stores the literal à. This is correct behavior for a translation-ready CSV (entities should be resolved before sending to translators), but worth noting for the Phase 2 implementer who will reference the CSV against source files.

Verdict: LGTM — accurate inventory, proper scope, well-structured CSV, clearly communicates blockers (DB-only content).

@jsboige
jsboige merged commit 5550d29 into master Jun 13, 2026
3 checks passed
@jsboige
jsboige deleted the docs/dnn-i18n-phase1-content-audit branch June 13, 2026 07:56
jsboige added a commit that referenced this pull request Jun 17, 2026
…tractor) (#525)

Closes the "inventory content-types" idle task (ai-01 msg-…141408). Extends
PHASE1-content-audit.md (#461) with a complete localization scope map and feeds
the extractor (PR #524, merged).

5 content-types mapped (Argumentum-app scope only; DNN framework out-of-scope):
- A custom-template hardcoded UI strings (2 keys) — extractor-done
- B @Resources.* keys (8, values DB-only) — extractor-done (keys + DB-only flag)
- C 2 static HTML content pages (fallacies.html ~24K chars + MariagePourTous ~13K,
  standalone FR prose, NOT CSV-driven) — repo-extractable gap, recommend separate
  document-tier translation lane (not the ui.*/res.* string task)
- D 2sxc content items (glossary/FAQ/homepage/App resource VALUES) — DB-only, the bulk
- E DNN page settings — DB-only. Both D+E need portal export (jsboige, gated).

Findings: 26 2sxc apps installed but only Argumentum is custom (25 stock). The live
« Materiel » coquille is NOT in any repo template (negative grep across Argumentum scope)
→ it's DB-only (content-type D), consistent with the "canonical FR lives in SQL" pattern.

No prod mutation, no DB/RDP, no dnn-ui-strings.csv touch. Pure scope-map doc.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants