Skip to content

Nouveau design - #3

Merged
jsboige merged 2 commits into
masterfrom
nouveau_design
Apr 17, 2020
Merged

Nouveau design#3
jsboige merged 2 commits into
masterfrom
nouveau_design

Conversation

@lpelleti

Copy link
Copy Markdown
Collaborator

No description provided.

@lpelleti

Copy link
Copy Markdown
Collaborator Author

@jsboige
J'ai transformé la bordure qui décalait toute la structure en fond de couleur. J'ai aussi supprimé les forçages de padding qui sont normalement gérés par le template avancé
Pour travailler plus facilement, j'ai aussi enregistré style et template à part. Toutefois je génère à nouveau le fichier global CardPen à chaque fois

@lpelleti
lpelleti requested a review from jsboige April 17, 2020 08:51
@jsboige

jsboige commented Apr 17, 2020

Copy link
Copy Markdown
Contributor

OK, je vois en effet que le bleed et le cut sont correctement centrés maintenant, pour un rendu identique par ailleurs.

@jsboige
jsboige merged commit de2038f into master Apr 17, 2020
jsboige added a commit that referenced this pull request Jun 30, 2025
Nouveau design

Former-commit-id: de2038f
Former-commit-id: bedb0a7be67efd83d73dfeef8d2e3fc240e70682
jsboige added a commit that referenced this pull request Feb 20, 2026
Issue #1 - Poker card dimensions:
- Change WidthMM from 58mm to 63.5mm (standard poker: 2.5")
- Change HeigthMM from 89mm to 88.9mm (standard poker: 3.5")
- Fixes 5.5mm width gap in poker cards (Scenarii)

Issue #3 - Rules DPI:
- Change DPI from 500 to 300 in Argumentum_Rules_fr.json
- Change DPI from 500 to 300 in Argumentum_Rules_Back_fr.json
- Standardizes all templates to 300 DPI

Also adds issue documentation in docs/issues/

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Feb 20, 2026
- Issue #1: Poker dimensions now 63.5×88.9mm (verified in PDF)
- Issue #3: Rules DPI standardized to 300 (verified in templates)
- All acceptance criteria checked and validated

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 19, 2026
…rget, recommend closure (#547)

Closure assessment for #498 (dispatched by ai-01, PRIMARY). Evaluates cluster-level
coverage against the #498 target and recommends CLOSURE of #498 (content-proposal
layer), with phase-4 mopup documented as optional finish.

Key findings (all verified against the real 1408-row prod Fallacies CSV, master 4dd3c6b):
- 70 direct cluster AIF mappings (depth 2-4), broadMatch-dominant (57/10/3) — intact,
  no regression from phases 1-3.
- Effective coverage by inheritance: 1292/1408 = 91.8% (direct+inherited).
- The "~31% (442/1408)" figure in the issue body is jsboige's measure with unspecified
  derivation — recorded transparently rather than reproduced (DoD #5 fail-loud on the metric).
- Generative work (phases 1-3): 50 depth-3 leaves with full triple-AIF exception structures,
  17 distinct Walton schemes, 49 distinct CA-nodes. rebut-type progression (absent phases
  1-2, appears phase 3) is independent semantic-fidelity evidence.
- Phase-4 mopup (13 remaining depth-3 leaves) is OPTIONAL, not a gap: all 13 already carry
  native cluster AIF skos mappings in prod. Phase 4 would add generative density (50->63/63),
  not coverage.
- Fail-loud: the 4 unmapped depth-2 categorical parents (Technique rhetorique, Appel a
  l'emotion, Conclusion mathematique invalide, Sabotage du debat) are category umbrellas
  whose children carry the mapping — no scheme fabricated.

DoD assessment: #1 (numbering) met, #2 (generative structures) met for 50 leaves, #3
(mapping-type coherence) met, #4 (fail-loud) met. No coverage gap. Recommends closure;
gated prod write + OWL regen + jsboige content validation remain as separate downstream gates.

Doc-only gated. No production data changed.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 24, 2026
…+ Phase 1 target fix

Close the #131 lane per ai-01 jalon dispatch (review-ready WE):

- §10 (NEW): v0.9.0 release coupling recommendation — DE-COUPLE
  (tag assets-only now; DNN upgrade as separate post-release ops
  milestone). Rationale: assets complete & verified, DNN upgrade is
  VPS-side ops (jsboige only), site currently functional (9.11.1 +
  2sxc 21.07), security-debt ≠ shipping blocker.
- §10: 12 RazorComponent template migration effort estimate (~4-6h
  total, code-only, _Parts.cshtml @Helper refactor is the one
  non-trivial step; none in the Argumentum app).
- Phase 1 objective + Step 2 target + verify line + risk matrix:
  correct remaining 9.13.x references to the actée target 10.3.2
  (9.13.x closes zero CVEs, per §3).

Answer to dossier #591 point #3: recommend de-coupling.

Co-Authored-By: Claude <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 24, 2026
Per ai-01 jalon dispatch (review-ready WE):
- Update dossier §5 point #3 with po-2023 recommendation: DE-COUPLE
  (tag assets-only; DNN upgrade as post-release ops milestone), with
  effort estimate pointer to UPGRADE-ASSESSMENT §10 (#593).
- Add docs/RELEASE-NOTES-v0.9.0.md (draft, did not exist on master) —
  GitHub Release body auto-built from CHANGELOG + dossier, for jsboige
  to validate/paste. Covers 8-language scope, assets, pipeline infra,
  recovery fixes, quality (533 tests, zero-warning build), and a
  security note (DNN CVEs → post-release, target 10.3.2).

Co-Authored-By: Claude <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 24, 2026
…3.x=closes 0) + .NET 4.8 runtime (#593)

* docs(dnn): #131 refresh UPGRADE-ASSESSMENT — fix CVE + .NET 8 errors

Correct two material factual errors in the 2026-06-07 assessment that
changed the upgrade path (both VERIFIED 2026-06-17, NVD/GHSA/nupkg):

1. CVE patch level: original said "both CVEs patched in DNN 9.13.x+".
   WRONG — 9.13.x closes ZERO of the 2 CVEs. CVE-2025-64095 (CVSS 10.0)
   patched at 10.1.1, CVE-2025-52488 (8.6) at 10.0.1. Security floor =
   10.1.2 (before 2sxc cliff @10.2.0). Stopping at 9.13.x leaves both
   critical CVEs open.

2. Runtime: original assumed DNN 10.x = .NET 8 and derived an OpenStore
   blocker. WRONG — DNN 10.3.2 nupkg ships lib/net48/ only; 10.x runs on
   .NET Framework 4.8. OpenStore blocker dissolves; Stripe Native (#445)
   stands on modernization, not an upgrade gate.

Path corrected: 9.11.1 -> 10.1.2 (security floor) -> 10.3.2 (actée
target decision #458), all on .NET Framework 4.8. Eshop Option 1
corrected to compatible. Phase 3 / risk matrix retracted entries
explicitly marked.

Header banner + §3/§4/§5/§7/§8 corrected in place. References the
full correction doc docs/dnn-localization/131-cve-correction-and-
target-refinement.md.

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

* docs(dnn): #131 finalize — v0.9.0 coupling reco + 12-template effort + Phase 1 target fix

Close the #131 lane per ai-01 jalon dispatch (review-ready WE):

- §10 (NEW): v0.9.0 release coupling recommendation — DE-COUPLE
  (tag assets-only now; DNN upgrade as separate post-release ops
  milestone). Rationale: assets complete & verified, DNN upgrade is
  VPS-side ops (jsboige only), site currently functional (9.11.1 +
  2sxc 21.07), security-debt ≠ shipping blocker.
- §10: 12 RazorComponent template migration effort estimate (~4-6h
  total, code-only, _Parts.cshtml @Helper refactor is the one
  non-trivial step; none in the Argumentum app).
- Phase 1 objective + Step 2 target + verify line + risk matrix:
  correct remaining 9.13.x references to the actée target 10.3.2
  (9.13.x closes zero CVEs, per §3).

Answer to dossier #591 point #3: recommend de-coupling.

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

---------

Co-authored-by: Claude <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 27, 2026
…nded fix path (#601)

* docs(investigations): trace Virtues mindmap FR-frozen mechanism + bounded fix path

Converts the release dossier #591 §3.2 finding ("Virtues .content.svg
FR-frozen, deferred, mechanism untraced") into a traced, bounded fix path
so jsboige's post-release decision is informed, not open-ended. Docs only,
0 write under Cards/ (release freeze), master stays bef3bc6.

Mechanism TRACED (was untraced): localization is NOT in TitleFunc nor in
ProcessSvgFilesAsync. It is expression-rewriting upstream of the render —
ParallelDocumentCreatorConfigBase.ProcessDocumentAsync clones the config
per language, then DocumentLocalization.DoReflectionTranslate mutates the
expression strings in-place via naive template.Replace (e.g.
"{fallacy.TextFr}" -> "{fallacy.TextZh}"); interpolation at render time
then yields localized node text.

Root cause 2-layer (both verified on bef3bc6):
- Layer B (config): AssetConverterConfig entry #3 targets
  VirtueMindMapDocumentConfig.TitleExpression but its only conversion is
  "Vertus"->"Virtues" (tree root, 4 langs) — stale stub from when Virtues
  data was FR-only. "{item.Text}".Replace("Vertus",...) = no-op -> FR
  for all 8 langs.
- Layer A (entity): Virtue.cs has no TitleAr/TitleFa/TitleZh props
  (Fallacy.cs has TextAr/Fa/Zh). CSV data VERIFIED present
  (title_ar/zh/fa + subfamily_*/subsubfamily_* in the taxonomy file) —
  pure entity-mapping gap, not a data task.

Fix path (post-release, jsboige-gated, 3 steps mirroring Fallacies) with
one non-obvious prerequisite flagged: DefaultTitleExpression must change
{item.Text} -> {item.TitleFr} BEFORE a config-only fix can fire (else
Replace is a silent no-op — same trap class as the earlier SUPPOSE error).

Orthogonal to the #599/#568 render-engine work (gap is upstream of the
engine). Enriches the jsboige decision dossier; does not touch Cards/.

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

* docs(investigations): add WE 27/06 option-cost analysis to #601 (Virtues mindmap FR-frozen)

ai-01 raised a NEW arbitrage at the coordinator level: how to handle the
Virtues mindmap FR-freeze for v0.9.0 — (a) fix before tag, (b) ship FR-frozen
+ known-limitation, (c) exclude Virtues mindmaps from non-FR packs. #601
traced the mechanism + bounded the fix path but did not quantify the
per-option cost. This adds a dedicated "Decision input for WE 27/06" section
+ a TL;DR pointer, so jsboige's decision is informed by the technical cost
(this investigation's unique contribution — the mechanism is traced here).

Key verified fact leveraged: mindmap SVGs are COMMITTED FILES under
Cards/Fallacies/Mindmaps/{lang}/, not package-assembled (no separate
release-bundling step). So option (c) "exclude from non-FR packs" = git rm
of 14 SVGs = a Cards/ write (freeze break) that REMOVES present content
-> technically dominated by (b). (a) fix-at-tag = 3-step fix + full mindmap
régén (RDP-gated Mindmapper mode) + re-establishes the #591 byte-proven
baseline -> most expensive. (b) = 0 code / 0 Cards/ write, already the
#591 §3.2 assumption.

Neutral (presents costs, does not make the call): worker reco = (b) for
v0.9.0, fix in v0.9.1; jsboige decides. Docs only, 0 write under Cards/,
master stays bef3bc6.

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

---------

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 29, 2026
…ublish) (#612)

Idle #135 (endorsed by ai-01). Net-new public-facing announcement article
for the v0.9.0 release, prepped for the DNN News5 module. FR canonical +
EN mirror (docs/publication/ convention). Publish action stays GATED on
#134 (tag) + #131 (DNN 10.3.2 live) + #132 (deploy) — this is text prep only.

Grounded in RELEASE-NOTES-v0.9.0.md + release-dossier README (no figure
invented): 8 languages (fr/en/ru/pt/es/ar/fa/zh, config-verified), 1408
fallacy nodes + 223 virtues + 167 scenarios 100% translated, 4 new game
variants (Bingo mixologie argumentative + Dernier Beau Parleur + Moulin a
Baratin + Parlote Coinchee, Rules deck-verified), 64 PDFs (8 langs x 8
types), FreeMind SVG mind maps, OWL 5.3MB SKOS+AIF, Print&Play A4.

Issue #135 body is STALE ("4 languages") — live scope is 8 (decision #4,
merged via #359/#360/#361). Reflected current scope, not the stale brief.

All version/download/og:image fields = [PLACEHOLDER] filled at tag time.
Downloads taxonomy by language x format x package (extends release-dossier
section 5 snippet). SEO meta block (title/description/og:image/twitter:card
/hreflang) + sitemap note. Publish checklist (gates #134/#131/#132).
Indexed in docs/publication/README.{fr,en}.md inventory (doc #3).

Scope: docs/publication/ only. 0 write Cards/, 0 AssetConverter code change
(pre-tag safe). Base ba8e4a6.

Relates to #135, #134, #131, #132.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 1, 2026
…free, gated post-release (#622)

SECONDAIRE of ai-01 deep-queue supersede #3 (msg-...v95b6l): the apply
harness for the #600 step "ratify -> apply" (§6), built from the #618
sidecar (2934 candidate link_<lang> URLs). Dry-run only — 0 write Cards/.

What it delivers:
  - drift-free write path (#595: QUOTE_MINIMAL + quotechar " + CRLF +
    UTF-8 no-BOM), verified to match the on-disk dialect of both CSVs.
  - skip-non-empty — refuses to overwrite any filled link_<lang> cell.
  - spot-validation ~5% of the AR/FA/ZH residue (§6.4 homonym risk):
    80 candidates inspected.

Dry-run headline (master d0856aa):
  - cands=2934, would-apply=2934, skip-nonempty=0 -> zero clobber.
  - 0 orphan-PK, 0 col-missing, 0 duplicate-(key,lang), 0 homonym.
  - Both CSVs #595 drift-safe (Fallacies: 1409 records = 1409 CRLF +
    144 intra-cell-LF benign; Virtues: 224 = 224 CRLF, 0 intra-cell-LF).
  - All 2754 fallacies URLs host-match their declared language (0 mismatch).
  - Spot-sample decoded correct: ar احتكام إلى الجهل (ignorance),
    zh 合成謬誤 (composition), zh 定錨效應 (anchoring) — no English leak.

The --apply path is wired but NOT exercised (freeze forbids Cards/
write). Post-release: `python docs/taxonomy/600-link-apply.py --apply`.

PK detection is case-insensitive (Fallacies='PK', Virtues='pk').

Scope: docs/taxonomy/600-link-apply.py + 600-link-apply-report.md only.
0 write Cards/, 0 AssetConverter code change. Base d0856aa.

Relates to #600, #618, #595, #192.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 1, 2026
…sume, anti-fab closed-set (#623)

PRIMAIRE of ai-01 deep-queue supersede #3 (msg-...v95b6l): scales the #620
pilot (28 nodes, 0 fabrication) to ALL Fallacies non-card nodes (1232),
same closed-set anti-fab design. Dry-run sidecar generator. 0 write Cards/.

Anti-Fab design (validated 0 fabrication on the pilot, holding at scale):
  - cross-link targets picked from enumerated REAL nodes (siblings +
    parent + children + 7 family roots) — cannot invent a decimal_path.
  - AIF scheme tokens picked from the 60-token observed Walton vocab —
    cannot invent a scheme name.
  - post-generation validation re-checks target in index, token in vocab,
    verb in 8, mappingType in observed set.

CHECKPOINT/RESUME (spans multiple ticks at ~12s/node -> ~4h for 1232):
  - one JSON line per node in tmp/141-aif-fullscale.jsonl (not committed).
  - re-run skips already-processed nodes (load_ckpt on source_dp).
  - flush after each node — survives crash/tick boundaries.
  - --limit N caps new nodes per run; --finalize aggregates -> sidecar.

Modes:
  python docs/taxonomy/141-aif-fullscale.py              # resume, all
  python docs/taxonomy/141-aif-fullscale.py --limit 50   # cap new nodes
  python docs/taxonomy/141-aif-fullscale.py --finalize   # tmp -> sidecar (no API)

Smoke-tested (--limit 3): 3/3, 0 errors, 12s/node, non-card=1232 (matches
#609 census), vocab=60. Full run launched in background this tick;
sidecar CSV/JSON + coverage/WARN report land in a follow-up PR via
--finalize. Only WARN at scale = skos:relatedMatch/exactMatch (legit SKOS
predicates outside the observed {broad,close,narrow}Match set -> a schema
decision for the expert gate, NOT fabrications).

gpt-5.5 /v1/responses + reasoning.effort=low + json_object (memory
gpt55-responses-api-effort-low). Key read by path from session scratchpad,
never inlined. DRY-RUN: checkpoint+interim to tmp/ (not committed); final
sidecar to docs/taxonomy/ only when aggregated.

Scope: docs/taxonomy/141-aif-fullscale.py only. 0 write Cards/, 0
AssetConverter code change. Base d0856aa.

Relates to #141, #609, #620, #130, #192.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 1, 2026
#625)

TERTIAIRE of ai-01 deep-queue supersede #3 (msg-...v95b6l): scoping for
the e-shop Stripe-native implementation, extending UPGRADE-ASSESSMENT.md
§5 (jsboige decision Option 2 Stripe Native, 2026-06-07) with a detailed
capability map for the five #445 §3 requirements.

Capability matrix (NATIVE / PARTIAL / NOT-native):
  - 3.1 reseller account   NATIVE (Stripe Connect) or direct+offline
  - 3.2 zonal shipping     NATIVE (Checkout dynamic shipping / EasyPost / Shippo)
  - 3.3 multi-currency     NATIVE (135+ presentment currencies, Adaptive Pricing)
  - 3.4 stock              PARTIAL (not a WMS; external sync or reseller-owned)
  - 3.5 fulfillment        NATIVE events / not a 3PL (webhook -> partner dispatch)

Conclusion: 4/5 native. The one open architecture fork is Connect
(platform routes money to resellers) vs direct+offline (each reseller
owns their local sale) -> a jsboige call, surfaced not decided. Genuine
build work concentrated in stock (3.4) + fulfillment webhook dispatch
(3.5), both modest. CVE rationale (RazorEngine 3.10.0 -> CVE-2021-46703,
used only by NBrightBuy) stands independently of that fork.

Out of scope (BD/human outreach, not code): #445 §1 fabrication quotes,
§2 distribution-partner mapping.

Cross-link added to UPGRADE-ASSESSMENT.md §5. docs-only: 0 write Cards/,
0 AssetConverter code change. Base d0856aa.

Relates to #445, #131, #444, #458.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 1, 2026
…abrication (#626)

* docs(taxonomy): #141 AIF Stage-1 full-scale results — 1232 nodes, 0 fabrication

PRIMAIRE of ai-01 deep-queue supersede #3 (msg-...v95b6l): the full-scale
AIF Stage-1 candidate sidecar + coverage/WARN report. The generator was
shipped in #623; this is the run output (1232/1232 non-card nodes,
gpt-5.5 assist, dry-run, 0 write Cards/).

Headline — anti-fab closed-set HOLDS at full scale:
  - 1232 nodes covered (100% of Fallacies non-cards, the #609 gap).
  - 3850 crossLinks (3.12/node, 100% nodes) + 2310 AIF refs (1.88/node,
    96% nodes).
  - confidence mean 0.73, median 0.72 (1301 high >=0.8 / 2460 mid / 89 low).
  - FABRICATION = 0. invalid targets = 0. invalid verbs = 0.
    The closed-set design (targets from enumerated real nodes, AIF tokens
    from the 60-token observed Walton vocab) contains LLM fabrication
    completely across 1232 nodes.

crossLink verb mix: IsRelatedTo 42% / Leverages 33% / Mirrors 15% /
Allows 7% / Inverts 2% / Opposes 1% / PredatesOn 1% / Denounces <1%.
Honest improvement vs pilot: Opposes/PredatesOn/Denounces were 0 in the
28-node pilot (flagged limitation) -> non-zero at scale (sample was too
small to surface them); still sparse, conservative-but-incomplete.

Top Walton DirectRef schemes well-represented: Bias_Inference 262,
Sign_Inference 119, Ethotic_Inference 117, EvidenceToHypothesis 94.

WARN = 87 nodes (7%), ALL bad_map:* (mappingType outside the observed
{broad,close,narrow}Match set: relatedMatch 78, none 5, exactMatch 2,
noMatch 2). These are LEGIT SKOS predicates -> a schema-extension
decision for the expert gate, NOT fabrications. none/noMatch = hedge
candidates to DROP during ratification.

Sidecars: 141-aif-candidates-fullscale.csv (1.1 MB, flat, reviewable,
committed) + report. The structured JSON (1.4 MB) is regenerable via
--finalize from the checkpoint and is NOT committed (repo already
2.05 GiB per #415/#621 — limit additive weight).

1 node (6.3.1.2.3.1.4 Hypocrisie morale) failed once on an API read-
timeout, recovered on a 1-node resume (0 content/parse errors).

Scope: docs/taxonomy/141-aif-candidates-fullscale.csv + report only.
0 write Cards/, 0 AssetConverter code change. Base 0e39425.

Next (gated post-release): Stage 2 dry-run diff, Stage 3 expert/jsboige
ratification gate (decide relatedMatch/exactMatch schema extension,
drop none/noMatch hedges, prioritize >0.8 candidates), Stage 4 ->
#130 OWL / #136 2sxc.

Relates to #141, #609, #620, #130, #136, #192.

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

* docs(taxonomy): #141 AIF Stage-2 dry-run diff — 9 conflict / 2 confirm / 5 silent

Read-only diff of the Stage-1 sidecar (#626) against the 12 non-card nodes
that already carry an AIF value on the taxonomy (0.97% — the other 1220 are
entirely net-new, no conflict possible). High-signal prep for the expert gate:
- 2 CONFIRM: gpt-5.5 independently re-derived the exact expert token
  (Ignorance_Inference, VagueVerbalClassification_Inference) — closed-set
  produces real Walton mappings.
- 9 CONFLICT: 1 field-swap/churn node (Pente glissante) + 5 frank token
  disagreements → gate must adjudicate, not auto-apply.
- 5 SILENT: generator stayed silent on a filled field → gate must preserve
  existing values.

Adds 141-aif-stage2-diff.py (read-only, 0 Cards/ write), 16-row diff.csv, and
a Stage-2 section to the report. Same scope/honors pre-tag freeze.

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

---------

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 1, 2026
…ANGELOG SVGs 8-lang (#591)

* docs(release): v0.9.0 validation dossier + fix CHANGELOG SVGs 8-lang

Add the v0.9.0 release validation dossier (go-live GATE for #134):
- scope (8 languages, jsboige decisions), verified asset inventory
  (CSV 8-lang, MindMap SVGs 8-lang via #565, OWL 5.4MB, PDFs reported
  from 12-Jun regen 64/64), toolchain state (zero-warning CS+NU,
  533/0/5), residual risks, and the decision points that need jsboige
  before the tag (pixel RTL/CJK eyeball, fresh regen, DNN coupling,
  tag v0.9.0).

Fix CHANGELOG line 16: it stated "ES/AR/FA/ZH SVG regeneration
pending" but #565 (merged 2fff84c) shipped those 12 SVGs. Wording
now reflects the delivered 8-language set including RTL + CJK.

Dossier built on committed assets + the reported 12-Jun release
regen (64/64 PDFs, 9834 images, exit 0); no fresh regen run this
session (bin/ empty post-crash, no RDP GO).

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

* docs(release): #591 address NanoClaw review notes on v0.9.0 dossier

- Byte-verify asset sizes: OWL 5.4MB→5.13MB (5,378,765 bytes),
  zh SVG 18MB→17.2MB (18,075,919 bytes).
- Add §3.1 source pointer for the 1408/223/167 taxonomy counts
  (issues #335/#499 spec / Scenarii commits, not re-derived this day).
- Clarify §5 point 5: CHANGELOG already fixed in this PR;
  docs/RELEASE-NOTES-v0.9.0.md does NOT exist on master
  (verified 22eb5f3) — only CHANGELOG.md documents the release.

Non-blocking review notes from ai-01/NanoClaw; no content change
to the 6 gate decisions.

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

* docs(release): #591 update coupling reco + draft v0.9.0 release notes

Per ai-01 jalon dispatch (review-ready WE):
- Update dossier §5 point #3 with po-2023 recommendation: DE-COUPLE
  (tag assets-only; DNN upgrade as post-release ops milestone), with
  effort estimate pointer to UPGRADE-ASSESSMENT §10 (#593).
- Add docs/RELEASE-NOTES-v0.9.0.md (draft, did not exist on master) —
  GitHub Release body auto-built from CHANGELOG + dossier, for jsboige
  to validate/paste. Covers 8-language scope, assets, pipeline infra,
  recovery fixes, quality (533 tests, zero-warning build), and a
  security note (DNN CVEs → post-release, target 10.3.2).

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

* docs(release): #591 refresh dossier — #592 OWL merged + MindMap byte-proven + Virtues FR-gap

§3.2: + reproductibilité byte-proven (régên 8-lang 2026-06-24, Fallacies_zh.svg
cmp IDENTICAL) + gap structurel honnête (Virtues .content.svg FR-figés, non-bloquant).
§3.4: #499 Phase 2 OWL — 'en cours po-2024' → MERGED (#592, 8d5d275).
§5.5: RELEASE-NOTES-v0.9.0.md créé dans cette PR (n'existait pas sur master).
§5.6: #499 Phase 2 OWL — livré avant ce dossier, conservé pour traçabilité.

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

* docs(release): #591 refresh §3.3/§5.2/§7/§8 — régên fraîche 2026-06-25 post-#595 (vraiment)

§3.3: 'RAPPORTÉ régén 12 juin' → ✅ régên fraîche 2026-06-25 (bef3bc6). PDFs Virtues
re-rendered post-#595 (clobber targeted, Chromium invoqué, labels familiaux localisés
vérifiés : zh 有效论证, ar حجة_معتبرة). i18n distinct anti-leak #216 OK. Régén headless.
§5.2: décision 'régén fraîche ?' → FAITE. Risque résiduel '16 commits depuis 12 juin' levé.
§7: risque 'régén 12 juin non reproduite' → LEVÉ (régén fraîche reproduit counts + #592/#595).
  + note de procédure stale-harvest honnête (oubli clobber corrigé ce cycle).
§8: reco point 3 (régén fraîche) → FAITE.

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

* docs(release): #591 cohérence — header note de méthode + §4 tests actualisés (relecture)

Header note de méthode : 'RAPPORTÉS non re-vérifiés ce jour' → régén fraîche 2026-06-25
re-vérifiée ce jour (résout contradiction header vs §3.3 refresh tick préc.).
§4 tests : 533 pass (22eb5f3) → 540 pass (bef3bc6, test run Release 22s),
+7 = tests OWL Virtues #592. 0 fail, 5 skip (GUI/Freeplane).

Relecture cohérence read-only (pas de polish) : 1 contradiction header/corps
résiduelle trouvée + facts actualisés vs bef3bc6.

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

* docs(release): #591 fix FINDING relecture po-2024 — header ligne 6 stale + mineurs

FINDING principal (po-2024 cross-verify, gate go-live) :
- ligne 6 (Master de référence) : 22eb5f3/533 → bef3bc6/540 (j'avais corrigé ligne 14
  mais manqué la 6 — contradiction header/corps résiduelle).

Mineurs :
- ligne 3 (date) : 2026-06-23 → 2026-06-25 (refresh).
- ligne 95 (attribution) : '+7 = tests OWL Virtues #592' → précisé +5 VirtueOwlGeneration
  +ContractTests + +2 VirtueClassMapRegressionTests (#592 = 8d5d275). +7 confirmé correct
  vs doute po-2024 (message commit #592 liste explicitement +5 et +2).

Dossier cohérent bout-en-bout après cross-verify indépendant po-2024.

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

* docs(release): #591 fix taille SVG zh fausse (17.2→5.45 MB) + RELEASE-NOTES régên date

Coherence cross-check RELEASE-NOTES + dossier §3.2 (extension relecture po-2024
qui n'avait vérifié que RELEASE-VALIDATION). 2 nombres faux vs assets réels :

- Taille Fallacies_zh.svg : '17.2 MB (18 075 919 B)' → '5.45 MB (5 451 309 B)'
  (fichier réellement commité, byte-proven régên 2026-06-25). Aucun SVG zh n'est
  à 17.2 MB (content/links = 4.0 MB, main = 5.45 MB). Corrigé dans RELEASE-NOTES
  l.23 + dossier §3.2 table zh.
- RELEASE-NOTES l.22 : 'régên 12 juin 2026' → 'régên fraîche 2026-06-25 bef3bc6
  post-#592/#595' (cohérent dossier §3.3 refresh).

CHANGELOG '21 SVGs FR/EN/RU/PT' l.47 = section historique recovery (commits
avril 2026), pas contradiction avec l.16 Added '8 languages' = laissé intact.

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

* docs(release): #591 refresh dossier v0.9.0 — régén 2026-07-01 + verdict visuel PASS ai-01

The validation dossier was last refreshed 2026-06-25 and flagged the PDF counts as
"RAPPORTÉS" and the visual verdict as "remaining (ai-01, règle HARD)". Both are now
resolved as of the 2026-07-01 cycle:

- Régén Release 8-lang executed 2026-07-01 on 18b4d02 + #614 (serial,
  EnableParallelism=false, isolated worktree) — 0 échec, 64/64 PDFs, 1229 img/lang ×8,
  "Generation finished.", bundle on GDrive review-v0.9.0-2026-06-28/ with sha256 manifest.
- Verdict visuel ai-01 = PASS représentatif (2026-07-01 08:50): spot-check
  Fallacies_Web_Thumbnails p1 across zh/ar/fa/ru/es covering CJK + RTL + cyrillic + latin;
  bug #216 (FR contamination) held, structure complete 8 types × 8 languages.
- DNN migration full-IIS now CLOSED (dnn.argumentum.myia.io LIVE) — coupling no longer an
  assets blocker.

Refreshed sections: header (date/status/master-ref), §1 (méthode), §3.3 (PDFs counts +
verdict PASS), §4 (tests 549/0/5), §5 (decisions: verdict FAIT/PASS, régén 07-01, DNN LIVE,
new §5.7 params Debug-vs-Release), §7 (risks lifted), §8 (recommendations).

content-only, 0 write Cards/, 0 runtime change. CHANGELOG + RELEASE-NOTES untouched.

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

---------

Co-authored-by: Claude <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 11, 2026
#774 export (#786)

Closes the 2 open "a clarifier" rows in the spec S2 scope table, using the live
v21 export (#774, already on master) as ground truth.

- S2 #3 Glossary entries: RESOLVED -- no 2sxc export needed. Glossary3 does not
  exist as an app=60 content-type (export lists 13 types, none glossary). The
  fallacies glossary IS the Fallacies taxonomy (content-type Fallacy id=376),
  served via the 8-lang CSV cards + App.Query["FallaciesFromCSV"] -- already
  localized. The "Glossary3" name was a 15.02 hypothesis; the glossary was never
  a separate 2sxc entity set.
- S2 #4 FAQ entries: DEFERRED jsboige. Faq4 absent from the 13 app=60 types.
  Cross-app Question (app=18/38) unconfirmed as the Argumentum FAQ. Action =
  jsboige confirm whether a FAQ section exists (and in which 2sxc app) before
  any export. If no FAQ -> row is moot.

Doc-only. No DB write. No Cards/ edit. Closes open questions flagged in #777
before jsboige/ops consumes the spec for the gated apply.

Co-authored-by: Claude-Code <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jul 16, 2026
…ppers (read-only, 0 write) (#821)

Read-only check on the 29 integrated HTML mindmap wrappers regenerated by
#819 (the T&A review vehicle for gate (b)), extending the #818 encoding
thread. Answers a concrete de-risking question: did the #804 residual #3
(.content.svg declare encoding="utf-16" but are UTF-8+BOM, ai-01 Cycle H)
propagate into the file Thomas & Adeline actually open?

Result: NO. 0/29 wrappers carry the latent.
- 29/29 are really UTF-8, declare charset=UTF-8 (meta).
- 0 utf-16-declared-but-utf8 mismatches.
- Cause: MindMapHtmlWrapper.FormatWrapper strips the <?xml?> prologue and
  injects the SVG into an HTML shell with its own charset=UTF-8, so the
  erroneous utf-16 declaration is eliminated, not inherited.

Independently corroborates ai-01's Cycle H localization certification
(SHA256 #636 + script composition) on the freshest artifact (#819).

Tracked-not-fixed observation: 4/29 wrappers carry a BOM
(Fallacies_{ar,es,fa,zh}.html) — harmless (meta charset + BOM precedence)
but inconsistent. Fix = po-2023 regen lane (mindmaps), not po-2024
(Cards). Folded into po-2023's post-tag mindmap regen pass (#804 #1/#2/#3).

Out of scope: wrapper/.content.svg regen, MindMapHtmlWrapper edit, BOM
strip — all lane po-2023. No write prod this PR.

Refs: #819, #804 residu #3, #818, #458.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude Opus 4.8 (1M context) <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