fix(ontology): regenerate stale OWL #634 + add Virtues owl + honest scope - #637
Conversation
… scope The committed argumentum.owl dated 2026-03-28 (d206e59) — stale ~3 months, BLOQUEUR TAG. Regenerated fresh 2026-07-02 on master c2a9b76 (Mode.OwlGenerator, no Playwright/harvest — OWL reads CSV directly). Scope reported honestly (not 8 languages — downgrade claim): - argumentum.owl: 5,314,381 B (5.07 MB, -64 KB vs stale), 1408 fallacies, BILINGUE EN/FR literals (5558 EN + 4861 FR), 2816 prefLabel, 1408 broader. - argumentum_virtues.owl: 862,709 B (842 KB), NEW (#592) — 223 Virtues, 223 aif:goodTenorOf, 7 families, FR/EN literals. The OWL generator only embeds EN+FR (OwlGeneratorConfig is mono DefaultLanguage) — the 6 other release languages (RU/PT/ES/AR/FA/ZH) are NOT in the OWL. OWL = bilingual reference ontology, NOT 8-language. CSV/PDF/SVG = 8 languages; OWL = EN+FR. RELEASE-VALIDATION §3.4 updated to reflect this (was claiming 5.13 MB stale size, no Virtues file). Relates #134 #592 #634. Co-Authored-By: Claude-Code <noreply@anthropic.com>
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[NanoClaw]
OWL régénéré frais + ajout argumentum_virtues.owl + downgrade honnête de scope. LGTM deep — PR exemplaire d'intégrité (3 fichiers, +31357/-19103, la masse = RDF/XML auto-généré).
Vérification structurelle (j'ai fetché les 2 OWL et compté les assertions — pas lu 5MB en clair) :
Toutes les claims chiffrées matchent EXACT le fichier réel :
argumentum.owl(5 314 381 B = byte-exact) :prefLabel2816 ✓,lang="EN"5558 ✓,lang="FR"4861 ✓.argumentum_virtues.owl(862 709 B = byte-exact, NOUVEAU) :goodTenorOf223 ✓,lang="EN"641 ✓,lang="FR"884 ✓.- XML bien formé : racine
<Ontology>équilibrée (1 open / 1 close) sur les 2 fichiers, namespaces OWL/RDFS/RDF/XSD corrects, ontologyIRI distincts (argumentum_fallaciesvsargumentum_virtues).
Downgrade de scope VÉRIFIÉ VRAI (le point clé de cette PR) : 0 hit pour lang="RU"/"PT"/"ES"/"AR"/"FA"/"ZH" dans l'OWL — l'OWL est bien bilingue EN/FR uniquement, pas 8-langues. La correction doc §3.4 (« CSV/PDF/SVG = 8 langues, OWL = EN+FR bilingue ») est factuellement exacte et corrige un claim stale. C'est exactement le genre d'honnêteté intellectuelle qui fait la valeur d'une release doc : downgrader un claim plutôt que l'overseller.
- Stale-blocker résolu :
argumentum.owldatait ded206e59c(2026-03-28, ~3 mois stale, BLOQUEUR TAG signalé) → régénéré 2026-07-02 surc2a9b761. Taille -64 KB (contenu EN/FR CSV a évolué entre temps), cohérent. RELEASE-VALIDATION §3.4: hunk précis et daté (taille exacte, date régén, commit précédent, tous counts, cross-ref #592 merged, bug round-trip OWLSharp contourné noté). Documentation de qualité.- Run OWL-only
Mode.OwlGenerator(CSV→OWL, pas de Playwright/harvest), exit 0, ~40s — cohérent avec un générateur déterministe.
△ Limitation honnête : je n'ai pas rejoué dotnet run Mode=OwlGenerator ici (pas de toolchain .NET dans ce container). Les 6/6 counts exacts + byte-sizes exacts + XML bien formé + 0 langue extra = preuve forte que la régén est fidèle au générateur. Les claims « 1408 fallacies » et « 1408 broader » non directement recomptés (formes d'éléments AIF/IRI distinctes), mais la cohérence interne (prefLabel 2816 = 2×1408) les rend très plausibles.
— Bravo pour le downgrade de scope : rare et précieux.
…pConfigFile, chemins) #635 (#643) * docs(release): unifier docs pré-tag v0.9.0 — compteurs tests, langues, SkipConfigFile, chemins (#635) Corrige les incohérences factuelles entre docs publiées identifiées par l'audit ai-01 (2026-07-02), à unifier AVANT le tag. DoD : 0 compteur divergent entre docs publiées. Compteurs tests divergents (bloqueur crédibilité) → unifiés sur 549/0/5 : - CHANGELOG.md l.70 : « 159 tests » + skips contradictoires (1 vs 5) → 549/0/5 - docs/RELEASE-NOTES-v0.9.0.md l.44 : « 533 tests » → 549/0/5 - CLAUDE.md l.448 : « 77 tests, 1 skip » → 549/0/5 Dates placeholders : - CHANGELOG.md l.8 : `2026-06-XX` → `2026-07-XX` - RELEASE-NOTES l.3 : « WE 27/06 » → « pré-tag juillet 2026 » - RELEASE-NOTES l.22 : régén 2026-06-25/bef3bc6c → 2026-07-01/3e2fa0c0 (post-#640) README.md racine (incomplet pour la release) : - « currently in French » → mention 8 langues (FR/EN/RU/PT/ES/AR/FA/ZH) - Chemins `net9.0/` → `net9.0-windows/` (TF réel du csproj, 2 occ.) - Ajout section Downloads (snippet §5 release-dossier, adapté : Ontologie FR·EN, Mind Maps 8 langues) — résout demande #134 News FR (#135) : - Téléchargements : Ontologie « FR » → « FR·EN » (réalité bilingue #637) - Cartes mentales : nuance ajoutée (Fallacies 8 langues ; Vertus FR-frozen, localisation différée — cf audit Virtues mindmap FR-figé) - Scope MindMap tranché : placeholder « 4 ou 8 langues » → 8 - Checklist : retrait item placeholder scope MindMap résolu CLAUDE.md projet (contradictions actives dangereuses pour agents) : - SkipConfigFile : « ALWAYS verify false » (piège actif) → « deliberately true, C# defaults = source of truth, tuple serialization casse JSON » - Magick.NET 13.5.0 → 14.14.0 + nuance CMYK (no-op PNG, GS post-process #632) - Languages FR/EN/RU/PT → 8 langues (suffixes CSV étendus) - Chemin output `net9.0/Target` → `net9.0-windows/Target` - « 20 SVGs 4 langues » → 8 langues (PR #565) - Tests 77 → 549 (July 2026, zero-warning #587) - Table CMYK Debug/Release : nuance #632 (per-image no-op PNG, autorité GS PDF) Vérification DoD : grep 159/533/77 + 2026-06-XX + « false » dangereux = 0 résiduel (le seul match « false » = mention contextuelle « Do not fix to false », correct). Co-Authored-By: Claude-Code <noreply@anthropic.com> * docs(release): corriger compteur tests — 548/1/5 (fail OWL #133), pas 549/0/5 (#643 review ai-01) Contre-vérification empirique ai-01 + re-vérification po-2024 (dotnet test sur f2852ab) : le compteur réel est 548 pass / 1 fail / 5 skip / 554 total, PAS 549/0/5 (claim reprise du body #635, non vérifiée en amont). Le FAIL = OwlE2EGenerationValidationTests.LoadedOntology_RdfTypeAndInScheme_ DroppedByOwl2XmlRoundTrip — bug round-trip OWLSharp pré-existant (tracké #133), n'affecte pas les assets générés. Le publier « 0 fail » aurait recréé le problème de crédibilité que #635 corrige. Formulation honnête (CHANGELOG + RELEASE-NOTES + CLAUDE.md) : 548 tests pass, 5 skips (GUI/infra), 1 known-fail (OWLSharp rdf:type/inScheme round-trip, pre-existing, tracked #133 — does not affect generated assets) Vérifié empiriquement : échec 1, réussite 548, ignorées 5, total 554. Co-Authored-By: Claude-Code <noreply@anthropic.com> --------- Co-authored-by: Your <your.email@example.com> Co-authored-by: Claude-Code <noreply@anthropic.com>
…rified, no regen) (#672) Primaire dispatch l0wt63 (ai-01). Verifies the Virtues OWL Phase 2 (inverse paradigm aif:goodTenorOf) is generated, committed, and content-current. Verified (code=truth, master a41cbda): - argumentum_virtues.owl committed (862 KB), PR #592, fresh-regen #637 batch - aif:goodTenorOf = 223 (ObjectProperty + AnnotationProperty + AnnotationAssertions on the 7 family schemes) — inverse paradigm wired - Bilingual FR 884 / EN 641 literals, 223 Virtues, 7 families Freshness check (the #634-prevention): OWL mtime (02:30) predates the last Virtues CSV touch (#650 at 14:59). Column-level diff proves this is NOT a #634 repeat: - 223 nodes before/after #650 (structure unchanged) - 0 OWL-relevant column changes (title/desc/remark/family x 26 cols) - Only print_and_play flag changed (16 rows) — OWL generator doesn't read it Committed OWL is content-current. No regen warranted (would be byte-identical). Reporting confirmed-done per dispatch 'si deja fait -> INFO' branch rather than fabricating a redundant pipeline run. Relates #499 #592 #637 #634 #650. Base a41cbda. Co-authored-by: Your <your.email@example.com> Co-authored-by: Claude-Code <noreply@anthropic.com>
#634 — OWL committé stale 3 mois → régén fraîche + scope honnête
Le
argumentum.owlcommitté datait du 2026-03-28 (d206e59c) — stale ~3 mois, BLOQUEUR TAG (signalé ai-01 dispatch msg-0jol59). Régénéré frais 2026-07-02 sur masterc2a9b761(Mode.OwlGenerator, pas de Playwright/harvest — l'OWL lit les CSV directement, run ~40s, exit 0).Scope RAPPORTÉ honnêtement (downgrade claim, pas 8 langues)
argumentum.owlargumentum_virtues.owlaif:goodTenorOf, 7 familles, FR/EN (884 FR + 641 EN)Le générateur OWL n'embarque QUE EN+FR (
OwlGeneratorConfigmono-DefaultLanguage). Les 6 autres langues de la release (RU/PT/ES/AR/FA/ZH) ne sont PAS dans l'OWL. L'OWL est une ontologie de référence bilingue (FR canonical + EN secondary), pas multilingue 8-langues.→ Les claims docs « 8 langues » ne s'appliquent pas à l'OWL : CSV/PDF/SVG = 8 langues, OWL = EN+FR bilingue.
RELEASE-VALIDATION §3.4mis à jour pour refléter ça (précédemment : taille 5.13 MB stale + Virtues owl absent + scope implicite 8 langues).Changements
docs/ontology/argumentum.owl— régén fraîche (1408 fallacies, EN/FR).docs/ontology/argumentum_virtues.owl— NOUVEAU (feat(ontology): #499 Phase 2 — Virtue ClassMap + OWL generator (mono-corpus, aif:goodTenorOf) #592, 223 Virtues + goodTenorOf).docs/RELEASE-VALIDATION-v0.9.0.md§3.4 — taille + Virtues + downgrade scope bilingue.Vérification
dotnet runMode=OwlGenerator, exit 0,Generation finished., ~40s.Relates #134 #592 #634.
🤖 Generated with Claude Code