| index.html — la page-mère servie à la racineH7_frontstage_external · S0 | livré | frontend/index.html:1-434 ; généré par scripts/generer-index.py:24 | La porte d'entrée : hero, 4 chapitres en teasers, 9 domaines, porte vers la Lettre.C'est une copie générée de landing-unifie.html. Le commentaire en tête du fichier explique pourquoi (frontend/index.html:1-6) : Vercel sert un fichier statique AVANT d'appliquer une réécriture, donc « / » exige un vrai index.html. Le fichier de travail reste landing-unifie.html. |
| landing-unifie.html — le fichier de travail de la page-mèreH7_frontstage_external · S0 | livré | frontend/landing-unifie.html (428L, 6 scripts) | La vraie source à éditer ; elle relie 21 pages de l'œuvre (les Lettres, les Écritures, les présentations, les cosmogrammes).21 liens .html distincts mesurés dans le fichier ; c'est la cible de scripts/generer-index.py:24 (SOURCE). |
| Les 6 ATOM-Reference-Book*.html — les livres investisseur/publicH7_frontstage_external · S0 | livré | frontend/ATOM-Reference-Book*.html — 6 fichiers, 8272L pour le plus gros | Six variantes du Livre de Référence (base, Investor, Investor-DE, Investor-ESO, Public, Public-ESO) — 7 400 à 8 300 lignes chacune, ~560 Ko.Zéro balise <script> dans les six : ce sont des documents purement statiques (les 19 src= par fichier sont des images/ , ex. images/chenu-infographic.png). Ils fonctionnent tels quels — mais aucun d'eux n'est lié depuis une autre page (5 des 6 sont dans la liste des 43 orphelines). |
| livre-reference.html + releve-chiffres.html — le Livre au propre et sa colonne des mesuresH7_frontstage_external · S0 | livré | frontend/livre-reference.html (3454L) ; frontend/releve-chiffres.html (380L) | Le Livre engendré depuis la source markdown, et le relevé qui met la mesure réelle à côté de chaque chiffre annoncé.Engendrés, pas recopiés : scripts/generer-livre-reference.py:3 et :17 (SOURCE = frontend/content/lettre-aux-humains.md, SORTIE = frontend/livre-reference.html) ; scripts/generer-releve-chiffres.py. Le relevé porte des ancres explicites comme id="agents-400-plus-350-essaim-gonflé" et id="spheres-9-10-16-gonflé" — c'est le dépôt qui documente lui-même sa propre dérive. |
| la-lettre.html + lettre-aux-humains.html + lettre-tissee.htmlH7_frontstage_external · S0 | livré | frontend/la-lettre.html (1121L, 269 Ko) ; lettre-aux-humains.html (150L) ; lettre-tissee.html (159L) | Les Lettres — le registre intime de l'œuvre.la-lettre.html charge 6 scripts et renvoie vers landing-unifie.html + onboarding.html (les 2 seuls liens sortants). Contenu statique, décor animé — rien à câbler, rien de cassé. |
| Les 7 presentation-*.html — les chapitres de l'expositionH7_frontstage_external · S0 | livré | frontend/presentation-{exposition,fondations,ecritures,programme,economie,juin,obtenez}.html — 142L à 1136L | Exposition, Fondations, Écritures, Programme, Économie, Juin, Obtenez.Tous liés depuis landing-unifie.html (mesuré dans la liste des 21 href). 6 scripts chacun, essentiellement du décor (veil-vivante, decor-incunable). |
| Les 10 pages de sphère — personal, entreprise, institutions, creation, communaute, communication, formation, logistique, durabilite, cuisineH6_domain_vertical · S1-S9 | livré | frontend/{personal,entreprise,institutions,...}.html ; carte des modules dans frontend/js/governance-init.js:71-119 (SPHERE_MODULE_MAP) | Le cœur métier : chaque sphère a sa page et ses modules dédiés.Les 10 pages sont listées dans GOVERNANCE_PAGES (governance-init.js:53-56) donc elles reçoivent la pile complète. Les 10 modules de sphère existent tous sur disque (vérifié un par un : 311L à 1617L). Elles appellent le serveur : institutions 17 appels, communication 13, personal 9, durabilite 8, communaute 8, logistique 7, entreprise 7, formation 3. institutions.html est la plus lourde (3241L) et charge à elle seule 33 modules dont 7 orphelins S3 recâblés le 2026-07-01 (commentaire governance-init.js:88). |
| desktop.html — le bureauH4_mapping_projection · S8 | livré | frontend/desktop.html (1688L, 88 <script>) | Le poste de travail : 88 balises script, 80 fichiers chargés, la page la plus câblée du dépôt.Listée dans GOVERNANCE_PAGES (governance-init.js:56) et possède ses 13 modules propres (governance-init.js:110-116 : bureau-widgets, environment-browser, env-renderer-village, nexus-commander, vps-console…). C'est le seul endroit qui relie 20 autres pages (agents, budget, les 9 sphères, dashboard, governance, meshmap, settings, transit…) — c'est votre vrai menu. |
| admin.html — l'administrationH5_specialized_backstage · S3 | livré | frontend/admin.html (2995L ; 1645 lignes de JS inline ; 14 appels serveur) | 197 Ko, 2995 lignes, 1645 lignes de JavaScript écrites directement dans la page.14 appels atomFetch/atomPost mesurés. Mais : seulement 3 scripts externes chargés, tout le reste est inline — donc non réutilisable et non testable. Et la page n'est liée depuis nulle part (elle figure dans les 43 orphelines) : on n'y accède qu'en tapant l'adresse. |
| dashboard.html + settings.html + governance.html + compliance.htmlH5_specialized_backstage · S3 | livré | frontend/dashboard.html (1577L, 9 scripts) ; settings.html (456L) ; governance.html (478L) ; compliance.html (872L) | Le poste de pilotage courant.dashboard est dans GOVERNANCE_PAGES (governance-init.js:53) et reçoit 2 modules propres (governance-init.js:121-124 : dashboard-master-bridge, dashboard-cascade-readout). compliance reçoit compliance-module.js (governance-init.js:141). Toutes appellent le serveur (dashboard 1, settings 3, governance 2). |
| auth.html + auth-callback.html + inscription.html + onboarding.html + checkout.htmlH2_membrane · S1 | livré | frontend/auth.html (836L) ; auth-callback.html (196L, 141 lignes inline, 0 script externe) ; inscription.html (759L) ; onboarding.html (1028L) ; checkout.html (385L) | La porte d'entrée des membres : connexion, retour d'authentification, inscription, accueil, paiement.config.js:474 et :565 portent les vrais appels (/api/v1/auth/logout, /api/v1/auth/refresh). onboarding est dans GOVERNANCE_PAGES (governance-init.js:56) et ne mène qu'à 3 endroits : /agents.html, /auth.html, /dashboard.html. auth-callback.html est 100% inline et orpheline de lien — normal pour un callback, mais rien ne le documente dans la page. |
| Les 4 centres Tier-2 minimaux — dev-center, education-center, government-center, labor-centerH6_domain_vertical · S3 | livré | frontend/dev-center.html:1-65 (et les 3 jumelles) ; moteur partagé frontend/js/center-summary-page.js (221L) | Quatre pages de 64-65 lignes qui affichent Résumé / Départements / Spécialisations / Processus / Statistiques.Le serveur répond : register_router pour dev_center_router (backend/app/main.py:1916), education_center_router (:1923), government_center_router (:1934), labor_center_router (:1947). Les 4 pages sont dans GOVERNANCE_PAGES (governance-init.js:64). Elles marchent — mais les 4 affichent « Loading… » en dur et les 4 sont orphelines de navigation : aucun lien nulle part ne mène à elles. |
| mission-center.html — l'agrégateur des 8 flux d'opportunitésH6_domain_vertical · S5 | livré | frontend/mission-center.html:1-58 (8 scripts pour 58 lignes) ; backend/app/main.py:1698-1699 | Tâches / Projets / Emplois / Cours / Événements / Commissions / Experts / Investir, avec bascule de proximité LOCAL/NEARBY/GLOBAL.Le router est monté avec un commentaire explicite (main.py:1698 : « prefix="" because mission_center.py has prefix="/api/v2/mission-center" baked in »). La page est dans GOVERNANCE_PAGES (governance-init.js:62) et reçoit mission-workspace.js (governance-init.js:124-126). Ses 8 sections <section id="mc-tab-*"> sont vides dans le HTML : tout est rempli par mission-center-tabs.js + mission-center.js. Orpheline de navigation elle aussi. |
| Les 14 autres *-center.html — health, legal, transport, exchange, energy, defense, science, disaster, agriculture, design, communication, creation-hub, comms-hub, support-deskH6_domain_vertical · S3 | livré | frontend/{health,legal,transport,exchange,energy,defense,science,disaster,agriculture,design}-center.html + communication-center.html + creation-hub.html | Les centres sectoriels étoffés (735L à 2750L chacun).Attention, deux régimes distincts mesurés. Côté serveur monté : health_center_router (main.py:1936), legal_center_router (:1948), transport_center_router (:2008), exchange_center_router (:1928). Côté serveur ABSENT : energy-center, defense-center, science-center, disaster-center, agriculture-center, design-center → 0 fichier correspondant dans backend/app/routers/ (grep -rl, résultat 0). Ces 6-là ont donc une page riche (735L à 1331L) mais aucune route dédiée derrière. |
| business.html + construction.html + operations.html + crm.html + compta.html + logistique.html — les outils d'entrepriseH6_domain_vertical · S2 | livré | frontend/business.html (1066L, 28 appels serveur) ; construction.html (1001L, 21) ; operations.html (395L, 14) ; crm.html (890L) ; compta.html (1300L) | Les pages qui travaillent vraiment : ce sont elles qui parlent le plus au serveur.business.html détient le record mesuré du dépôt : 28 occurrences atomFetch/atomPost/fetch(api/. construction.html en a 21, operations.html 14. Ce sont les pages les plus « branchées » du frontend. Toutes accessibles par lien. |
| agents.html + nexus.html + conseil.html + threads.html — la couche agentsH3_vital_loop · S8 | livré | frontend/agents.html (1870L) ; nexus.html (2173L, 8 scripts, 4 appels serveur) ; conseil.html (271L) ; threads.html (580L) | L'annuaire des agents, le poste de commande, le conseil, les fils de discussion.agents.html est dans GOVERNANCE_PAGES (governance-init.js:53) et reçoit 3 modules (governance-init.js:117 : agents-database.js, agent-workspace.js, agent-character-manager.js). Rappel de mesure : agents-database.js contient des fiches de référence, PAS des agents exécutables — le relevé des chiffres du dépôt le dit lui-même. |
| Les 8 pages à script externe — cooperation, cosmogramme-3d, donut, flows, geo-hub, mirror-earth, resources, temple-decoderH4_mapping_projection · S9 | câblé, en attente | frontend/mirror-earth.html (script src="https://unpkg.com/leaflet@1.9.4/…") ; cosmogramme-3d.html (cesium.com) ; donut/flows/cooperation.html (d3js.org) ; geo-hub.html (unpkg maplibre) | Cartes et graphiques : d3.js, Leaflet, MapLibre, CesiumJS.Le code de page est correct, mais frontend/vercel.json impose Content-Security-Policy avec script-src 'self' 'unsafe-inline' 'unsafe-eval' — aucun hôte externe autorisé. En production le navigateur refuse de charger d3, Leaflet, MapLibre et Cesium : ces 8 cartes s'affichent vides. mirror-earth reçoit pourtant 3 modules dédiés (governance-init.js:149-153 : temple-tuning-motor-bridge, temple-flow-bridge, mirror-earth). |
| babel-measure.html + babel-reception.html + babel-matrix27-dashboard.html + babel-fractal-test.htmlH5_specialized_backstage · S0 | livré | frontend/babel-measure.html (373L) ; babel-reception.html (146L, 1 seul script : js/babel-reception.js) ; babel-matrix27-dashboard.html (329L, 0 script externe, 112 lignes inline) ; babel-fractal-test.html (482L, 14 scripts) | Le Décodeur de Babel côté écran : mesurer un mot, recevoir les dissonances, tableau matrice 27, banc d'essai fractal.CLAUDE.md documente 9 endpoints REST Babel sur 3 routers et 36 topics de bus. Mais les 4 pages sont orphelines de navigation (aucun lien nulle part). babel-matrix27-dashboard n'a aucun script externe — tout tient dans 112 lignes inline. |
| meshmap.html + spheres.html + world.html + monde-interieur.html + le-grand-cosmogramme.html — les cartes du systèmeH4_mapping_projection · S9 | livré | frontend/meshmap.html (803L, 13 scripts) ; spheres.html (1311L) ; world.html (455L) ; monde-interieur.html (422L) ; le-grand-cosmogramme.html (426L) | La représentation du maillage, des sphères et du monde.meshmap est dans GOVERNANCE_PAGES (governance-init.js:57) et lié depuis desktop.html. spheres.html : 1 appel serveur mesuré. Toutes accessibles. |
| _harness-reconnexion.html + forge-generator-pool-test.html + simulation-dashboard.html + coverage.html + observer.htmlH1_spine · S0 | câblé, en attente | frontend/_harness-reconnexion.html (121L, 28 <script>) ; simulation-dashboard.html (241L, 23 <script>) ; coverage.html (333L, un seul <div id="coverageDashboardRoot">) ; observer.html (31L, 7 scripts dont 3 sous js/observer/) | Les bancs d'essai internes : harnais de reconnexion (28 scripts pour 121 lignes), test du pool de générateurs, tableau de simulation, couverture, observatoire.Les 5 sont orphelines de navigation. coverage.html reçoit coverage-dashboard.js (governance-init.js:127-129) et n'a qu'un seul conteneur vide — la page ne vaut que ce que le module y injecte. Le préfixe « _ » de _harness-reconnexion signale clairement l'outil de développement, pas une page de produit. |
| 404.html + 500.html + offline.html + maintenance.html + widget-sentinel.htmlH2_membrane · S0 | livré | frontend/404.html (96L, 0 script) ; 500.html (96L, 0 script) ; offline.html (114L) ; maintenance.html (68L) ; widget-sentinel.html (78L) | Les pages de secours.maintenance.html a un interrupteur réel : governance-init.js:33 déclare const SITE_MAINTENANCE = false avec le commentaire « SITE LIVE — activated March 2026 ». Si vous le passez à true, governance-init.js:39-45 redirige TOUTES les pages vers /maintenance.html, sauf si localStorage porte atom_maintenance_bypass=true. C'est votre coupe-circuit — sachez qu'il existe. |
| conditions.html + confidentialite.html + mentions-legales.html + help.htmlH7_frontstage_external · S3 | livré | frontend/conditions.html (152L) ; confidentialite.html (202L) ; mentions-legales.html (131L) ; help.html (229L) | Le juridique et l'aide.Les trois pages juridiques n'ont aucun JavaScript (0 script, 0 inline) — c'est correct et voulu pour du texte de loi. Elles sont liées depuis les pieds de page. |
| editor.html + planches-atelier.html + toute-loeuvre.html + studio.html — l'atelierH5_specialized_backstage · S4 | livré | frontend/editor.html (1797L dont 1251 lignes de JS inline, 3 <script>) ; planches-atelier.html (174L, 13 src) ; toute-loeuvre.html (501L) ; studio.html (2849L) | L'éditeur de mise en page, l'atelier des planches, la vue « toute l'œuvre d'un seul regard », le studio.editor.html est le cas extrême du problème inline : 1251 lignes de JavaScript écrites dans la page, seulement 3 balises script, et la page n'est liée de nulle part. toute-loeuvre.html ne contient aucun lien .html sortant (mesuré : liste vide) — elle affiche les pages en cadres iframe. |
| La racine du dépôt — pas de index.html, et une redirection qui part ailleursH2_membrane · S0 | déclaratif | ATOM-CLEAN/vercel.json:1-9 (racine) vs frontend/vercel.json | Ce qui décide où va le trafic.Le vercel.json de la RACINE se nomme "atom-legacy-redirect" et renvoie tout en 308 vers https://atom-arche.vercel.app/$1. Il n'existe aucun index.html à la racine du dépôt (ls: No such file). Donc : les 148 pages ne sont publiées que si c'est le dossier frontend/ qui est déployé (frontend/vercel.json, name "at-om-arche", outputDirectory "."). La racine, elle, ne fait que rediriger. |