Compare commits

...

3 Commits

Author SHA1 Message Date
ea2ad0017b refactor(import): unify core editorial manifest
All checks were successful
SMOKE / smoke (push) Successful in 3s
CI / build-and-anchors (push) Successful in 35s
CI / build-and-anchors (pull_request) Successful in 39s
2026-03-11 11:33:37 +01:00
315523e80f refactor(site): depublish non-core sections and refresh anchors baseline
All checks were successful
SMOKE / smoke (push) Successful in 6s
CI / build-and-anchors (push) Successful in 41s
CI / build-and-anchors (pull_request) Successful in 40s
2026-03-11 11:07:21 +01:00
569b6de154 fix(content): declare commencer collection and remove implicit ia collection
Some checks failed
SMOKE / smoke (push) Successful in 5s
CI / build-and-anchors (push) Failing after 41s
CI / build-and-anchors (pull_request) Failing after 46s
2026-03-11 10:54:27 +01:00
20 changed files with 1327 additions and 497 deletions

View File

@@ -1,60 +0,0 @@
items:
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Introduction.docx
collection: cas-ia
slug: introduction
title: "Introduction générale — Mettre un système dIA en scène"
order: 10
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_1_Epreuve_de_detectabilite.docx
collection: cas-ia
slug: chapitre-1
title: "Chapitre I — Épreuve de détectabilité"
order: 20
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_2_Epreuve_Topologique.docx
collection: cas-ia
slug: chapitre-2
title: "Chapitre II — Épreuve topologique"
order: 30
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_3_Epreuve_archeogenetique.docx
collection: cas-ia
slug: chapitre-3
title: "Chapitre III — Épreuve archéogénétique"
order: 40
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_4_Epreuve_Morphologique.docx
collection: cas-ia
slug: chapitre-4
title: "Chapitre IV — Épreuve morphologique"
order: 50
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_5_Epreuve_Historique.docx
collection: cas-ia
slug: chapitre-5
title: "Chapitre V — Épreuve historique"
order: 60
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_6_Epreuve_de_Co-viabilite.docx
collection: cas-ia
slug: chapitre-6
title: "Chapitre VI — Épreuve de co-viabilité"
order: 70
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_7_Gestes_archicratiques_concrets_pour_un_systeme_IA.docx
collection: cas-ia
slug: chapitre-7
title: "Chapitre VII — Gestes archicratiques concrets pour un système dIA"
order: 80
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Conclusion.docx
collection: cas-ia
slug: conclusion
title: "Conclusion"
order: 90
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Annexe_Glossaire_Archicratique_Cas_IA.docx
collection: cas-ia
slug: annexe-glossaire-audit
title: "Annexe — Glossaire archicratique pour laudit des systèmes dIA"
order: 100

View File

@@ -1,6 +0,0 @@
items:
- source: sources/docx/commencer/document-de-presentation.docx
collection: commencer
slug: document-de-presentation
title: Document de présentation
order: 0

View File

@@ -1,6 +1,15 @@
version: 1
docs:
# =========================
# Document dentrée
# =========================
- source: sources/docx/commencer/document-de-presentation.docx
collection: commencer
slug: document-de-presentation
title: "Document de présentation"
order: 0
# =========================
# Archicratie — Essai-thèse "ArchiCraT-IA"
# =========================
@@ -47,115 +56,68 @@ docs:
order: 70
# =========================
# IA — Cas pratique (1 page = 1 chapitre)
# NOTE: on n'inclut PAS le monolithe "Cas_IA-... .docx" dans le manifeste.
# Cas pratique — Gouvernance des systèmes IA
# =========================
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Introduction_generale—Mettre_en_scene_un_systeme_IA.docx
collection: ia
slug: cas-pratique/introduction
title: "Cas pratique — Introduction générale : Mettre en scène un système IA"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Introduction.docx
collection: cas-ia
slug: introduction
title: "Introduction générale Mettre un système dIA en scène"
order: 110
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_I—Epreuve_de_detectabilite.docx
collection: ia
slug: cas-pratique/chapitre-1
title: "Cas pratique — Chapitre I : Épreuve de détectabilité"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_1_Epreuve_de_detectabilite.docx
collection: cas-ia
slug: chapitre-1
title: "Chapitre I Épreuve de détectabilité"
order: 120
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_II—Epreuve_topologique.docx
collection: ia
slug: cas-pratique/chapitre-2
title: "Cas pratique — Chapitre II : Épreuve topologique"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_2_Epreuve_Topologique.docx
collection: cas-ia
slug: chapitre-2
title: "Chapitre II Épreuve topologique"
order: 130
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_III—Epreuve_archeogenetique.docx
collection: ia
slug: cas-pratique/chapitre-3
title: "Cas pratique — Chapitre III : Épreuve archéogénétique"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_3_Epreuve_archeogenetique.docx
collection: cas-ia
slug: chapitre-3
title: "Chapitre III Épreuve archéogénétique"
order: 140
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_IV—Epreuve_morphologique.docx
collection: ia
slug: cas-pratique/chapitre-4
title: "Cas pratique — Chapitre IV : Épreuve morphologique"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_4_Epreuve_Morphologique.docx
collection: cas-ia
slug: chapitre-4
title: "Chapitre IV Épreuve morphologique"
order: 150
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_V—Epreuve_historique.docx
collection: ia
slug: cas-pratique/chapitre-5
title: "Cas pratique — Chapitre V : Épreuve historique"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_5_Epreuve_Historique.docx
collection: cas-ia
slug: chapitre-5
title: "Chapitre V Épreuve historique"
order: 160
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_VI—Epreuve_de_co-viabilite.docx
collection: ia
slug: cas-pratique/chapitre-6
title: "Cas pratique — Chapitre VI : Épreuve de co-viabilité"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_6_Epreuve_de_Co-viabilite.docx
collection: cas-ia
slug: chapitre-6
title: "Chapitre VI Épreuve de co-viabilité"
order: 170
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_VII—Gestes_archicratiques_concrets_pour_un_systeme_IA.docx
collection: ia
slug: cas-pratique/chapitre-7
title: "Cas pratique — Chapitre VII : Gestes archicratiques concrets"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Chapitre_7_Gestes_archicratiques_concrets_pour_un_systeme_IA.docx
collection: cas-ia
slug: chapitre-7
title: "Chapitre VII Gestes archicratiques concrets pour un système dIA"
order: 180
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-Conclusion.docx
collection: ia
slug: cas-pratique/conclusion
title: "Cas pratique — Conclusion"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Conclusion.docx
collection: cas-ia
slug: conclusion
title: "Conclusion"
order: 190
- source: sources/docx/cas-ia/Cas_IA-Archicratie_et_gouvernance_des_systemes_IA-AnnexeGlossaire_archicratique_pour_audit_des_systemes_IA.docx
collection: ia
slug: cas-pratique/annexe-glossaire-audit
title: "Cas pratique — Annexe : Glossaire archicratique pour audit des systèmes IA"
- source: sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Annexe_Glossaire_Archicratique_Cas_IA.docx
collection: cas-ia
slug: annexe-glossaire-audit
title: "Annexe Glossaire archicratique pour laudit des systèmes dIA"
order: 195
# =========================
# Traité — Ontodynamique générative (1 page = 1 chapitre)
# NOTE: on n'inclut PAS le monolithe "Traite-...-version_officielle.docx" dans le manifeste.
# =========================
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Introduction-version_officielle.docx
collection: traite
slug: ontodynamique/introduction
title: "Traité — Introduction"
order: 210
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_1—Le_flux_ontogenetique-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-1
title: "Traité — Chapitre 1 : Le flux ontogénétique"
order: 220
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_2—economie_du_reel-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-2
title: "Traité — Chapitre 2 : Économie du réel"
order: 230
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_3—Le_reel_comme_systeme_regulateur-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-3
title: "Traité — Chapitre 3 : Le réel comme système régulateur"
order: 240
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_4—Arcalite-structures_formes_invariants-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-4
title: "Traité — Chapitre 4 : Arcalité — structures, formes, invariants"
order: 250
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_5-Cratialite-forces_flux_gradients-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-5
title: "Traité — Chapitre 5 : Cratialité — forces, flux, gradients"
order: 260
- source: sources/docx/traite/Traite-Ontodynamique_Generative-Fondements_Archicratie-Chapitre_6—Archicration-version_officielle.docx
collection: traite
slug: ontodynamique/chapitre-6
title: "Traité — Chapitre 6 : Archicration"
order: 270
# =========================
# Glossaire / Lexique
# =========================
@@ -169,4 +131,4 @@ docs:
collection: glossaire
slug: mini-glossaire-verbes
title: "Mini-glossaire des verbes de la scène archicratique"
order: 910
order: 910

View File

@@ -1,42 +0,0 @@
---
title: "Démarrage — Essai-thèse"
edition: "archicratie"
status: "modele_sociopolitique"
level: 1
version: "0.0.1"
concepts: ["archicratie"]
links:
- type: "definition"
target: "/glossaire/archicratie/"
note: "Terme canonique."
order: 0
summary: "Page de test (structure)."
---
import Callout from "../../components/Callout.astro";
import Term from "../../components/Term.astro";
Ceci est une page de test pour valider la structure de l**Essai-thèse**.
<Callout kind="definition" title="Entrée minimale">
<p>
<Term term="Archicratie" slug="archicratie" /> : régime où linstance régulatrice est tenue dexposer ses prises,
ses critères et ses scènes dépreuve.
</p>
</Callout>
<Callout kind="these" title="Ce que lédition web doit rendre possible">
<p>Une lecture à plusieurs niveaux, sans confusion entre les productions, et une citabilité stable.</p>
</Callout>
<div class="level-2">
<Callout kind="objection" title="Objection (niveau 2)">
<p>Que gagne-t-on par rapport à une simple doctrine ? Réponse : la scène, la contrainte dexposition, la pluralisation des prises.</p>
</Callout>
</div>
<div class="level-3">
<Callout kind="limite" title="Limite (niveau 3)">
<p>Tout schéma darticulation doit préciser ses non-déductions (transpositions), sinon confusion Traité ↔ Archicratie.</p>
</Callout>
</div>

View File

@@ -1,13 +0,0 @@
---
title: "Démarrage — Atlas"
edition: "atlas"
status: "cartographie"
level: 1
version: "0.0.1"
concepts: ["archicrates"]
links: []
order: 0
summary: "Page de test (structure)."
---
Ceci est une page de test pour valider la structure de l**Atlas**.

View File

@@ -6,12 +6,13 @@ level: 1
version: "0.1.0"
concepts: []
links: []
order: 10
order: 110
summary: ""
source:
kind: docx
path: "sources/docx/cas-ia/Cas_Pratique-Archicratie_et_gouvernance_des_systemes_IA-Introduction.docx"
---
1. Introduction générale — Mettre un système dIA en scène
Ce texte est un prolongement opératoire de lessai-thèse sur l*archicratie*. Il najoute pas un nouveau pan théorique, ni un chapitre caché : il montre *comment* utiliser le paradigme archicratique pour instruire un cas concret, massif, déjà à lœuvre. Il propose un audit archicratique dun grand système dintelligence artificielle de fondation, tel quil est intégré dans des dispositifs de décision publics et privés. Autrement dit : il sagit dexaminer, avec les outils construits par la thèse, ce qui se passe quand un modèle dIA ne se contente plus de produire des textes ou des prédictions dans labstrait, mais devient un opérateur régulateur au cœur des politiques sociales, des institutions de santé, des systèmes de justice, des ressources humaines, des plateformes dinformation.

View File

@@ -17,21 +17,6 @@ const baseTextSchema = z.object({
});
// Éditions (séparation stricte : edition + status verrouillés par collection)
const traite = defineCollection({
type: "content",
schema: baseTextSchema.extend({
edition: z.literal("traite"),
status: z.literal("theorie_fondamentale")
})
});
const archicratie = defineCollection({
type: "content",
schema: baseTextSchema.extend({
edition: z.literal("archicratie"),
status: z.literal("modele_sociopolitique")
})
});
const casIa = defineCollection({
type: "content",
@@ -41,11 +26,11 @@ const casIa = defineCollection({
})
});
const atlas = defineCollection({
const commencer = defineCollection({
type: "content",
schema: baseTextSchema.extend({
edition: z.literal("atlas"),
status: z.literal("cartographie")
edition: z.literal("commencer"),
status: z.union([z.literal("presentation"), z.literal("draft")])
})
});
@@ -79,12 +64,8 @@ const glossaire = defineCollection({
});
export const collections = {
traite,
archicratie,
commencer,
"archicrat-ia": archicratIa,
"cas-ia": casIa,
glossaire,
atlas,
// ⚠️ clé avec tiret => doit être quotée
"archicrat-ia": archicratIa
};

View File

@@ -1,13 +0,0 @@
---
title: "Démarrage — Cas pratique IA"
edition: "ia"
status: "application"
level: 1
version: "0.0.1"
concepts: ["gouvernance-ia"]
links: []
order: 0
summary: "Page de test (structure)."
---
Ceci est une page de test pour valider la structure du **Cas pratique IA**.

View File

@@ -1,13 +0,0 @@
---
title: "Démarrage — Traité"
edition: "traite"
status: "theorie_fondamentale"
level: 1
version: "0.0.1"
concepts: ["ontodynamique-generative"]
links: []
order: 0
summary: "Page de test (structure)."
---
Ceci est une page de test pour valider la structure du **Traité**.

View File

@@ -1,36 +0,0 @@
---
import EditionLayout from "../../layouts/EditionLayout.astro";
import { getCollection } from "astro:content";
import EditionToc from "../../components/EditionToc.astro";
import LocalToc from "../../components/LocalToc.astro";
export async function getStaticPaths() {
const entries = (await getCollection("archicratie"))
.filter((e) => !e.slug.startsWith("archicrat-ia/"));
return entries.map((entry) => ({
params: { slug: entry.slug },
props: { entry },
}));
}
const { entry } = Astro.props;
const { Content, headings } = await entry.render();
---
<EditionLayout
title={entry.data.title}
editionLabel="Archicratie"
editionKey="archicratie"
statusLabel="modèle sociopolitique"
statusKey="modele_sociopolitique"
level={entry.data.level}
version={entry.data.version}
>
<Fragment slot="aside">
<EditionToc currentSlug={entry.slug} />
<LocalToc headings={headings} />
</Fragment>
<h1>{entry.data.title}</h1>
<Content />
</EditionLayout>

View File

@@ -1,16 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
import { getCollection } from "astro:content";
const entries = (await getCollection('archicratie'))
.filter((e) => e.slug !== "prologue");
entries.sort((a, b) => (a.data.order ?? 9999) - (b.data.order ?? 9999));
---
<SiteLayout title="Essai-thèse — Archicratie">
<h1>Essai-thèse — Archicratie</h1>
<ul>
{entries.map((e) => (
<li><a href={`/archicratie/${e.slug}/`}>{e.data.title}</a></li>
))}
</ul>
</SiteLayout>

View File

@@ -1,28 +0,0 @@
---
import EditionLayout from "../../layouts/EditionLayout.astro";
import { getCollection } from "astro:content";
export async function getStaticPaths() {
const entries = await getCollection("atlas");
return entries.map((entry) => ({
params: { slug: entry.slug },
props: { entry },
}));
}
const { entry } = Astro.props;
const { Content } = await entry.render();
---
<EditionLayout
title={entry.data.title}
editionLabel="Atlas"
editionKey="atlas"
statusLabel="cartographie"
statusKey="cartographie"
level={entry.data.level}
version={entry.data.version}
>
<h1>{entry.data.title}</h1>
<Content />
</EditionLayout>

View File

@@ -1,15 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
import { getCollection } from "astro:content";
const entries = await getCollection("atlas");
entries.sort((a, b) => (a.data.order ?? 9999) - (b.data.order ?? 9999));
---
<SiteLayout title="Atlas archicratique">
<h1>Atlas archicratique</h1>
<ul>
{entries.map((e) => (
<li><a href={`/atlas/${e.slug}/`}>{e.data.title}</a></li>
))}
</ul>
</SiteLayout>

View File

@@ -1,7 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
---
<SiteLayout title="Carte des œuvres">
<h1>Carte des œuvres</h1>
<p>Cette page explicite la séparation stricte et larticulation entre les éditions.</p>
</SiteLayout>

View File

@@ -1,28 +0,0 @@
---
import EditionLayout from "../../layouts/EditionLayout.astro";
import { getCollection } from "astro:content";
export async function getStaticPaths() {
const entries = await getCollection("ia");
return entries.map((entry) => ({
params: { slug: entry.slug },
props: { entry },
}));
}
const { entry } = Astro.props;
const { Content } = await entry.render();
---
<EditionLayout
title={entry.data.title}
editionLabel="Cas IA"
editionKey="ia"
statusLabel="application"
statusKey="application"
level={entry.data.level}
version={entry.data.version}
>
<h1>{entry.data.title}</h1>
<Content />
</EditionLayout>

View File

@@ -1,15 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
import { getCollection } from "astro:content";
const entries = await getCollection("ia");
entries.sort((a, b) => (a.data.order ?? 9999) - (b.data.order ?? 9999));
---
<SiteLayout title="Cas pratique — Gouvernance des systèmes IA">
<h1>Cas pratique — Gouvernance des systèmes IA</h1>
<ul>
{entries.map((e) => (
<li><a href={`/ia/${e.slug}/`}>{e.data.title}</a></li>
))}
</ul>
</SiteLayout>

View File

@@ -1,38 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
---
<SiteLayout title="Méthode & statut des textes">
<h1>Méthode & statut des textes</h1>
<h2>1) Séparation stricte des productions</h2>
<ul>
<li><strong>Traité</strong> : ontodynamique générative (théorie fondamentale).</li>
<li><strong>Essai-thèse</strong> : archicratie (modèle sociopolitique).</li>
<li><strong>Cas pratique</strong> : gouvernance des systèmes IA (application).</li>
<li><strong>Glossaire</strong> : référentiel terminologique (définitions et renvois).</li>
<li><strong>Atlas</strong> : cartographie des archicrates (à venir).</li>
</ul>
<h2>2) Règle dor : liens typés</h2>
<p>Tout lien important est explicitement typé :</p>
<ul>
<li><strong>definition</strong> : renvoi vers le glossaire (sens canonique).</li>
<li><strong>appui</strong> : renvoi argumentatif (support).</li>
<li><strong>transposition</strong> : analogie / déplacement non-déductif (anti-confusion Traité ↔ Archicratie).</li>
</ul>
<h2>3) Niveaux de lecture</h2>
<p>Le même texte peut contenir trois niveaux :</p>
<ul>
<li><strong>Niveau 1</strong> : lecture citoyenne (accès principal).</li>
<li><strong>Niveau 2</strong> : approfondissement.</li>
<li><strong>Niveau 3</strong> : niveau recherche.</li>
</ul>
<p>Techniquement : les blocs <code>.level-2</code> et <code>.level-3</code> sont masqués/affichés par le toggle, sans casser la lisibilité si JS est absent.</p>
<h2>4) Citabilité</h2>
<p>Chaque paragraphe reçoit un identifiant stable et peut être cité par ancre (bouton “Citer”).</p>
<h2>5) Statut éditorial</h2>
<p>Chaque page indique : Édition / Statut / Niveau / Version. Les versions servent à garantir la citabilité et lhistorique.</p>
</SiteLayout>

View File

@@ -1,28 +0,0 @@
---
import EditionLayout from "../../layouts/EditionLayout.astro";
import { getCollection } from "astro:content";
export async function getStaticPaths() {
const entries = await getCollection("traite");
return entries.map((entry) => ({
params: { slug: entry.slug },
props: { entry },
}));
}
const { entry } = Astro.props;
const { Content } = await entry.render();
---
<EditionLayout
title={entry.data.title}
editionLabel="Traité"
editionKey="traite"
statusLabel="théorie fondamentale"
statusKey="theorie_fondamentale"
level={entry.data.level}
version={entry.data.version}
>
<h1>{entry.data.title}</h1>
<Content />
</EditionLayout>

View File

@@ -1,15 +0,0 @@
---
import SiteLayout from "../../layouts/SiteLayout.astro";
import { getCollection } from "astro:content";
const entries = await getCollection("traite");
entries.sort((a, b) => (a.data.order ?? 9999) - (b.data.order ?? 9999));
---
<SiteLayout title="Traité — Ontodynamique générative">
<h1>Traité — Ontodynamique générative</h1>
<ul>
{entries.map((e) => (
<li><a href={`/traite/${e.slug}/`}>{e.data.title}</a></li>
))}
</ul>
</SiteLayout>

File diff suppressed because it is too large Load Diff