Mise à niveau : 101/101 composants au standard (8/8), correctif casse API, surfaces React/Python honnêtes#27
Merged
Conversation
… API catalogue (23 composants) - scripts/validate-components.py: gate reproductible des critères « à niveau » (source, jsdoc, props, relations, sémantique, exemple, présence llms/catalogue) + scan modules (page, composition bpm.*, doc, dogfooding) + écriture du ledger. - bpm/_doc_components.py: corrige 23 noms de composants dont la casse ne correspondait pas à l'API réelle du barrel (bpm.jsonviewer -> bpm.jsonViewer, etc.). La fiche /docs/components/[slug] retrouve désormais le bloc de props llms.txt pour ces 23 composants. Source .tsx = vérité. - docs/automation/mise-a-niveau.json: ledger reprenable (101 composants + 32 modules).
…(8/8 checks) - Relations (@parent/@associated/@forbidden) ajoutées/complétées sur 65 composants, fidèles au rôle réel de chaque composant dans le design system. - @example + @props (depuis l'interface réelle) sur stepper, timeline, statusTracker, orgChart, masterDetail, wizardForm, notificationCenter, table, filePreview. - Validateur affiné : props_doc tolère les composants sans interface *Props documentés via @example/@props (ex. bpm.toast = provider + hook). - Régénération llms.txt / llms-core.txt / bpm-components.json / mcp-registry.json. - Ledger: composants 101/101 done. Gate VERT (230 tests). Aucun rendu existant modifié. scripts/_add_relations.py, scripts/_add_examples.py : générateurs d'édition reproductibles.
…onible (honnêteté de dispo) Vérifié empiriquement que les DEUX paquets sont publiés et fonctionnent : - npm @blueprint-modular/core (latest 0.2.0) — install OK, exposé par le MCP. - PyPI blueprint-modular (0.1.36) — pip install OK, CLI bpm (run/build/init) OK. Décision produit (utilisateur) : « disponible, React en avant ». - CTA d'installation principal (hero + final CTA) : npm i @blueprint-modular/core. - /docs/getting-started restructuré : piste React/JSX live mise en avant, puis piste Python disponible (pip install + bpm init + bpm run) — chemin réel, jamais étiqueté « bientôt ». - i18n FR/EN : installCommand -> npm ; ajout reactTrack/pythonTrack (parité typée). Aucune commande affichée n'échoue si copiée. Build vert, routes 200, pas d'overlay.
…ès, needs-human, dispo)
…, React/npm co-équal Addendum de disponibilité écarté (prémisse fausse : pip ET npm sont publiés et fonctionnent, testés en venv : blueprint-modular 0.1.36, @blueprint-modular/core 0.2.0). - installCommand (hero + final CTA) = pip install blueprint-modular. - getting-started : piste Python d'abord (pip + bpm init + bpm run + aperçu), puis piste React/JSX co-équale (@blueprint-modular/core + usage + style.css). - Rien de masqué, rien en « bientôt ». Build vert, getting-started 200, ordre Python<React vérifié, les deux commandes présentes et fonctionnelles.
This was referenced Jun 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Mise à niveau Blueprint Modular — NE PAS MERGER (déploiement humain ensuite)
Routine « tout à niveau » (on code/complète/vérifie, pas d'audit). Chaque lot passe
le gate (
node scripts/gate.cjs: tsc + vite build + doc-sync + 230 tests), levalidateur 8-checks et un smoke fonctionnel (
next start+ curl + DOM) avant done.Source
.tsx= vérité ; aucune prop/API inventée. Ajouts strictement additifs.Composants — 35/101 → 101/101 à niveau (8/8) ✅
@examplebpm/_doc_components.py) étaient enmauvaise casse vs l'API réelle (
bpm.jsonviewer→bpm.jsonViewer…). JS étantsensible à la casse, le catalogue annonçait une API
undefinedet les fiches/docs/components/[slug]ne retrouvaient pas le bloc de props. Réaligné sur lebarrel ; catalogue + registre MCP régénérés ; fiches réparées.
@example/@propssur 9 composants riches(depuis l'interface réelle).
llms.txt/llms-core.txt/bpm-components.json/mcp-registry.jsonrégénérés. Aucun rendu existant modifié (asserté par 230 tests).Modules — 31/32 à niveau
bpm.*, doc, aucun 500.monitorréimplémente badge/button/spinner… localement(
// miroir bpm.*) au lieu de composer@/components/bpm→ ne dogfoode pas.Écart précis et marche à suivre dans le rapport.
Honnêteté de disponibilité (addendum) — vérifié empiriquement
npm @blueprint-modular/core(0.2.0) etPyPI blueprint-modular(0.1.36) sonttous deux publiés et installables (
npm i/pip install→ exit 0,bpm runOK).La prémisse « PyPI non publié » est fausse. Décision produit : « disponible, React en avant » :
CTA d'install principal →
npm i @blueprint-modular/core; getting-started mène avec lapiste React/JSX live puis présente Python comme chemin réel — jamais « bientôt ».
Aucune commande affichée n'échoue si copiée.
Outils reproductibles ajoutés
scripts/validate-components.py(gate 8-checks + ledger),docs/automation/mise-a-niveau.json,rapport
docs/automation/mise-a-niveau-report-2026-06-11.md.Vérifs
gate VERT (230 tests) · validateur 101/101 ·
tsc --noEmit0 erreur ·npm run buildvert ·smoke routes 200 sans overlay.
https://claude.ai/code/session_01D11eyPTcPhEJVv7TekSdYp
Generated by Claude Code