diff --git a/README.md b/README.md index 59bf257..9fd07f4 100644 --- a/README.md +++ b/README.md @@ -183,6 +183,7 @@ Plan d'analyse repo courant: - [docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md](docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md) - [docs/KILL_LIFE_FEATURE_MAP_2026-03-11.md](docs/KILL_LIFE_FEATURE_MAP_2026-03-11.md) +- [docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md](docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md) --- diff --git a/docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md b/docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md new file mode 100644 index 0000000..2c1e617 --- /dev/null +++ b/docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md @@ -0,0 +1,73 @@ +# Kill_LIFE Workflow Local Sequence - 2026-03-11 + +## Scope + +Ce diagramme fixe la sequence locale canonique quand un workflow `Kill_LIFE` est edite, valide et execute sans passage par le dispatch GitHub. + +## Sequence + +```mermaid +sequenceDiagram + autonumber + participant OP as Operateur / crazy_life + participant WF as workflows/*.json + participant SCHEMA as workflow.schema.json + participant VS as tools/validate_specs.py + participant COMP as tools/compliance/validate.py + participant RUNTIME as tools/mcp_runtime_status.py + participant CAD as tools/cad_runtime.py / tools/hw/* + participant RUNS as .crazy-life/runs + participant EVID as docs/evidence / compliance/evidence + + OP->>WF: creer ou modifier un workflow canonique + OP->>SCHEMA: valider la structure JSON du workflow + SCHEMA-->>OP: workflow structurellement valide / invalide + + OP->>VS: lancer la validation spec-first + VS->>VS: verifier 03_plan / 04_tasks / constraints / RFC2119 + VS-->>OP: synthese OK / FAIL + ecarts + + OP->>COMP: lancer la validation compliance + COMP->>COMP: charger active_profile + standards + evidence attendues + COMP-->>OP: statut compliance et blockers + + OP->>RUNTIME: verifier les prerequis MCP/runtime locaux + RUNTIME-->>OP: statut global, blockers, optional degraded + + alt workflow implique du CAD ou du hardware + OP->>CAD: lancer doctor / export / smoke / schops + CAD-->>OP: artefacts locaux et statut outillage + end + + OP->>RUNS: ecrire le run local et son etat + RUNS-->>OP: historique local / restore possible + + OP->>EVID: deposer les preuves locales utiles + EVID-->>OP: evidence pack exploitable pour revue ou bascule GitHub +``` + +## Anchors + +| Surface | Role dans la sequence locale | +| --- | --- | +| `workflows/*.json` | definition executable et versionnee de la lane | +| `workflows/workflow.schema.json` | validation structurelle avant execution | +| `tools/validate_specs.py` | garde spec-first locale | +| `tools/compliance/validate.py` | validation du profil actif et des preuves attendues | +| `tools/mcp_runtime_status.py` | lecture de sante des runtimes MCP/CAD locaux | +| `tools/cad_runtime.py` et `tools/hw/*` | actions locales hardware/CAD quand le workflow en depend | +| `.crazy-life/runs/` | etat local des runs depuis l'editeur `crazy_life` | +| `.crazy-life/backups/workflows/` | revisions et restores locaux non versionnes | +| `docs/evidence/` et `compliance/evidence/` | sortie documentaire exploitable pour revue et transition release | + +## Reading + +- La validation locale ne remplace pas le dispatch GitHub; elle sert de sas avant CI distante. +- `Kill_LIFE` conserve la source de verite des workflows et des regles de validation. +- `crazy_life` joue le role d'editeur et d'operateur local, mais les artefacts canoniques restent dans `Kill_LIFE`. + +## Next lots + +- `K-DA-002` est ferme par ce diagramme versionne. +- `K-DA-003`: sequence `workflow github` avec allowlist dispatch et evidence pack CI. +- `K-DA-004`: synchroniser README et doc operateur autour des deux diagrammes `local` et `github`. diff --git a/docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md b/docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md index 8b7d558..e8fdf85 100644 --- a/docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md +++ b/docs/plans/REPO_DEEP_ANALYSIS_2026-03-11.md @@ -27,9 +27,9 @@ Rendre `Kill_LIFE` plus lisible comme socle canonique runtime/spec-first: ## Status - `K-DA-001` ferme par `docs/KILL_LIFE_FEATURE_MAP_2026-03-11.md` +- `K-DA-002` ferme par `docs/KILL_LIFE_WORKFLOW_LOCAL_SEQUENCE_2026-03-11.md` ## Next tasks -- `K-DA-002` diagramme de sequence `workflow local` - `K-DA-003` diagramme de sequence `workflow github` - `K-DA-004` synchroniser README, plans et doc operator