Skip to content

docs(dnn-i18n): #457 site content-type inventory (scope map) - #525

Merged
jsboige merged 1 commit into
masterfrom
docs/457-site-content-type-inventory
Jun 17, 2026
Merged

docs(dnn-i18n): #457 site content-type inventory (scope map)#525
jsboige merged 1 commit into
masterfrom
docs/457-site-content-type-inventory

Conversation

@jsboige

@jsboige jsboige commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

What

#457 site content-type inventory — a complete localization scope map, closing the "inventory content-types" idle task (ai-01 msg-…141408). Extends PHASE1-content-audit.md (#461) and feeds the extractor (#524, merged). Docs-only, non-gated.

The 5 content-types (Argumentum-app scope only; DNN framework out-of-scope)

# Content-type Where In repo? Status
A Template hardcoded UI strings (2 keys) .cshtml extractor-done
B @Resources.* keys (8, values DB-only) .cshtml ⚠️ keys only extractor-done (DB-only flag)
C 2 static HTML pages (fallacies.html ~24K + MariagePourTous ~13K chars FR) DNNPlatform/fallacies/ repo-extractable gap
D 2sxc content items (glossary/FAQ/homepage/App resource VALUES) SQL DB-only (the bulk)
E DNN page settings (titles/SEO/nav) SQL DB-only

Findings

  • C is a real separate lane. The 2 HTML pages are standalone FR prose (not CSV-driven, no fetch()) — translation is a document-tier task (chunked, like Scenarii), not the ui.*/res.* string task (feat(dataset-updater): #457 DNN UI strings localization infra (Enabled=false) #487). Recommend a separate DatasetUpdater task shape; not wired today. PHASE1 had deferred these; this inventory surfaces them as the largest repo-extractable chunk.
  • 26 2sxc apps installed, only Argumentum is custom (25 stock). Confirms PHASE1: repo holds application templates, not portal content.
  • « Materiel » coquille is DB-only. Negative grep across the entire Argumentum-app scope → the live coquille is NOT in any repo template. It's in content-type D (2sxc App Resources / DB) — consistent with the "canonical FR lives in SQL" pattern. Fixing it needs the portal export (jsboige, gated).

What this changes

The extractor (#524) covers A + B. C is the follow-up (document-tier, gated on jsboige deciding long-form FR articles are in v0.9.0 scope). D + E remain the bulk unblocker — every live-site text correction (incl. « Materiel ») and the majority of translation surface is SQL, needing the portal export.

Gate boundaries

🤖 Generated with Claude Code

…tractor)

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>
@clusterManager-Myia

Copy link
Copy Markdown
Collaborator

[NanoClaw] — LGTM

No concerns.

@jsboige
jsboige merged commit 33091a1 into master Jun 17, 2026
3 checks passed
@jsboige
jsboige deleted the docs/457-site-content-type-inventory branch June 17, 2026 20:07
jsboige added a commit that referenced this pull request Jun 18, 2026
…e) (#527)

Procedure for the production go-live, closing #132 (which had only a
validation dossier, no runbook). Follows jsboige's 6-step migration
strategy (backup → staging restore → schema analysis → migration plan →
sandbox test → go-live) with per-phase go/no-go gates and a rollback
contract.

Grounded in repo facts: SQL Server backend (web.config System.Data.
SqlClient), .NET 4.8, 2sxc 15.02 (26 apps, only Argumentum custom),
NBrightBuy/OpenStore + OS_Stripe + Stripe.net in bin.

Key insight (§4): for target 10.1.2 no 2sxc entity migration is required
— 15.02 survives because 10.1.2 sits before the 10.2.0 cliff. Full 2sxc
migration enters scope only if jsboige targets 10.3.2 (documented §9).

Honesty boundary: sections needing the real prod DB export (schema, 2sxc
row counts, dev↔prod delta) are flagged "à confirmer contre l'export DB
réel" — not invented. The procedure, rollback strategy, topology, and
the 2sxc no-op insight hold on their own.

Doc-only, non-gated. Execution (backup/restore/upgrade/go-live) stays
GATED jsboige. No prod mutation, no DB/RDP.

Refs #132 #131 #520 #522 #525.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 18, 2026
…et) (#533)

Pulls the post-upgrade smoke items scattered across the runbook arc
(#522 §5, #527 Phase 4/5, #531 revision §4) into one tickable go/no-go
gate, and adds the two cliff-specific checks that the 10.1.2-era
scenarios did not need now that the target is decided = 10.3.2:

- §3 DnnJsInclude IIS worker-process crash check (issue #6902 cliff,
  mandatory because 10.3.2 crosses 10.2.0; 2sxc >=21.07 workaround gate)
- §4 25 stock 2sxc apps load (v20 Moment-of-Truth infra risk; staging-
  test item not repo-audit per #525)

Encodes the grounded §5 finding (all 4 Argumentum templates already
@inherits Custom.Hybrid.Razor14, PR #531 §3) so the checker knows the
expected result: Argumentum app is verify-still-binds, not migrate.

Doc only, non-gated. Visual PASS verdict = ai-01 + jsboige.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 19, 2026
docs(dnn): #131 navigation index for the DNN upgrade arc

The docs/dnn-localization/ folder had 15 markdown docs covering the
#131/#132/#457 DNN upgrade arc but no single entry point. A reader landing
here had no map: which doc is authoritative, which is superseded, what order
to execute, what is still gated on jsboige.

Add a navigation-only README that:
- sequences the 7 spine docs in 10.3.2 go-live execution order (Step 0
  runtime fact -> target decision -> CVE reconciliation -> 2sxc Phase 1.5
  -> DNN Phase 2 exec/rollback -> sandbox smoke gate -> prod go-live)
- lists 5 supporting/scope docs
- flags 3 superseded docs (9.13 plan, 10.1.2 step1, 10.1.2 deployment title)
  so they are not executed by mistake
- surfaces the 2 pending jsboige gates (#445 Stripe, #525 typo) that block
  prod go-live
- restates the hard constraints (sandbox/doc only, no csv touch, gated exec)

Pure navigation/references — no content rewritten from the detailed docs.


@

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 10, 2026
…lanned) — gated ai-01 (#765)

* docs(dnn): #131 index — execution status refresh (upgrade is DONE, not planned)

Refreshes docs/dnn-localization/README.md (the single navigation index for the
15-doc #131/#132 arc) to reflect that the DNN 10.3.2 + 2sxc 21 upgrade was
EXECUTED (2026-06-28 sandbox, 2026-07-01 full-IIS), not just planned. The index
predated execution — it read "DNN = sandbox/doc only, NO deploy" which is now
false (dnn.argumentum.myia.io is LIVE full-IIS).

Anti-doublon (read-body): the deep-queue secondary "plan upgrade 10.3.2+2sxc21"
would have re-written 10 already-merged runbooks (step0/target/cve/2sxc/
phase2/smoke) — many authored by me in June. The legitimate gap was NOT another
plan; it was the index being stale vs execution. This is a targeted index update,
not a new plan.

Adds:
- §0.5 execution-status table (Phase 1.5/2/4 DONE, full-IIS migration DONE
  2026-07-01, B1-inversion fix DONE, canonical bin/, prod go-live PENDING ops).
  Truth-grounded via MEMORY + dashboard status + tmp/dnn-backups artifact.
- 2 stale-doc flags: docs/dnn/repair-bin-net48.ps1 + 131-step1 runbook encode
  the OLD 6.0.0.0 BCL (inverted B1 thesis) — reading them verbatim would
  reintroduce the JsonOptions MissingMethodException. Needs 9.0.0.0/8.0.0.0
  correction (tracked).
- §4: cross-links #525 "Materiel typo" = res.RuleMaterial D1 (PR #761/#490).
- §6: corrects "NO deploy" → upgrade executed, prod-content-mutation still gated.

Gate: docs-only (1 file), 0 prod write, 0 re-execution of the runbooks. Triggered
by ai-01 dispatch 1gmve4 (secondaire, reframed from duplicate-plan to index-truth).
Gated review ai-01.

Co-Authored-By: Claude-Code <noreply@anthropic.com>

* docs(dnn): mark B1-inverted runbooks SUPERSEDED — 6.0.0.0 thesis backwards for 2sxc-21

Folds the stale-doc fix (flagged in this PR's README §0.5) into the #131
execution-status refresh. Three B1-era docs still encoded the inverted
"revert bin/ to 6.0.0.0" thesis from the 2026-06-25 characterization,
pre-B1-inversion being understood. For the 2sxc 21.07 runtime that recipe
is backwards and harmful: 2sxc 21.07 is compiled against .NET 9 and
REQUIRES Json 9.0.0.0 / Immutable 9.0.0.0 / Bcl.AsyncInterfaces 8.0.0.0;
reverting to 6.0.0.0 breaks JsonOptions type-init -> every 2sxc module
"Something went really wrong in view.ascx".

- sandbox-bootstrap-runbook.md §2/§3: ⛔ SUPERSEDED callout (correct fix =
  deploy matched BCL stack from 2sxc 21.07 Install pkg, redirects → 9.0.0.0).
  Preserves verified-reusable content (LocalDB/IIS facts, redirect line
  numbers, §4 web.config edits, §6 gotchas); flags §2 framing + §3.2/3.3 as
  do-not-execute.
- go-live-turnkey-checklist.md: SUPERSEDED callout on B1 section + table row
  (B1 DONE 2026-06-28 via corrected stack).
- README §0.5: flag corrected to name the right 2 docs (earlier flag mis-named
  repair-bin-net48.ps1 — already deprecated by #624 — and 131-step1 — no BCL
  versions; 132-deployment title already 10.3.2).

Verified content still accessible for re-deploy/rollback archaeology; only the
inverted recipe is flagged do-not-execute. Read-body-before-action caught that
repair-bin was already fixed (#624) — scoped the fix to the 2 runbooks that
reference it.

Co-Authored-By: Claude-Code <noreply@anthropic.com>

---------

Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 13, 2026
…backlog (#798)

The navigation index (entry point of the #131/#132/#457 arc) was last
refreshed 2026-07-10 (#765). Since then 3 merges changed what it should
report, leaving it stale:

1. B1-inversion correction swept to a 3rd doc — #792 added the lesson to
   132-deployment-runbook.md §5.5(a) as a MANDATORY sub-step (the 07-10
   refresh only named sandbox-bootstrap + go-live-turnkey). #794 extended
   the turnkey fix. §0.5 "stale-doc flags" now lists all 3 docs with PR refs.

2. #682 Path A provisioning manifest (49 fields) merged in #777 — the 3
   #682 docs (decision-input, revision-2sxc21, path-a-provisioning-manifest)
   were missing from §2 supporting-docs table. Added.

3. §4 "jsboige gates pending" listed only #445/#525/visual-verdict — the
   entire i18n portage chain (#682 provisioning → #683 enablement → #684
   re-import) was absent from the backlog. Added as gates 3/4/5, with #684
   prep marked DONE (PR #767) and re-import marked GATED.

Navigation index only — no runbook content rewritten. MD032 on the new
blockquote list resolved with blank > lines (my addition, not surrounding
style). Lane: docs/dnn-localization (po-2023). 0 prod write, 0 CSV.

Co-authored-by: Claude-Code <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