docs(coordination): report c beta supervision

This commit is contained in:
Dom
2026-05-29 18:40:03 +02:00
parent aba849324a
commit d515b22d1b
3 changed files with 199 additions and 0 deletions

View File

@@ -0,0 +1,87 @@
# Codex - RESULTAT C-beta verdict humain + popup supervision
Date: 2026-05-29 18:38
Branche: `backup/post-demo-2026-05-19`
## Decision Dom
Dom a donne son GO pour C-beta.
Cadre confirme:
- finalite Lea = apprentissage par demonstration;
- VWB = pont de supervision, replay et edition, pas produit workflow-builder separe;
- verdict humain autorise en journal supervise;
- aucun write-back YAML sans validation explicite de Dom;
- popups inattendues = pause humaine, pas auto-resolution;
- Claude et Qwen restent garde-fous fonctionnels et techniques.
## Implementation
Commit:
- `aba849324 feat(vwb): log supervised competence verdicts`
Ajoute:
- journal de verdicts `core/competences/verdicts.py`;
- stockage JSONL idempotent par `verdict_id`;
- endpoint `POST /api/v1/lea/competences/<competence_id>/verdict`;
- endpoint `GET /api/v1/lea/competences/<competence_id>/verdicts`;
- garde popup supervise `visual_workflow_builder/backend/services/supervised_popup_guard.py`;
- integration runtime `wait_for_state` + `pause_for_human`;
- UI active `visual_workflow_builder/frontend_v4` avec boutons `Valide`, `Invalide`, `Incertain`.
Contrat C-beta:
- verdicts autorises: `valid`, `invalid`, `inconclusive`;
- `context_signature.machine_id` obligatoire;
- ecriture uniquement dans le journal JSONL;
- aucun write DB workflow;
- aucun write-back YAML;
- reponse forcee avec `write_back_enabled: false` et `yaml_write: false`;
- popup inattendue en mode supervise = pause humaine uniquement.
## Runtime VWB
Frontend actif:
- `http://localhost:3002`
Backend actif:
- `http://localhost:5002`
Note:
- le frontend actif est `visual_workflow_builder/frontend_v4`;
- l'ancien `visual_workflow_builder/frontend` n'est pas la surface utilisateur active.
## Validations
Tests:
- `python3 -m pytest tests/unit/test_competence_verdicts.py tests/unit/test_lea_competence_verdict_api.py tests/unit/test_supervised_popup_guard.py tests/unit/test_vwb_supervised_pause_runtime.py tests/unit/test_competence_to_vwb_preview.py tests/unit/test_competence_catalog_loader.py tests/unit/test_vwb_wait_for_state.py -q`
- resultat: 33 tests OK.
Controles:
- `py_compile` backend OK;
- `git diff --check` OK;
- `npm run build` dans `visual_workflow_builder/frontend_v4` OK.
Smoke live:
- frontend `http://localhost:3002` -> 200;
- backend catalogue `http://localhost:5002/api/vwb/catalog/actions` -> 200;
- `POST /api/v1/lea/competences/key_win_r_wait_explorer_exe/verdict` -> 201;
- verdict smoke: `inconclusive`, `write_back_enabled=false`, `yaml_write=false`;
- `pause_for_human` via catalogue -> `status=paused`, `needs_human=true`, `write_back_enabled=false`.
## Point important worktree
Les fichiers suivants restent modifies mais ne font pas partie de C-beta:
- `visual_workflow_builder/backend/api_v3/dag_execute.py`;
- `visual_workflow_builder/backend/services/learned_workflow_bridge.py`;
- ancien frontend `visual_workflow_builder/frontend/src/...` avec diffs hors surface active;
- donnees runtime type `data/competence_verdicts/verdicts.jsonl` si generees par smoke.
Ne pas les embarquer sans decision explicite.
## Suite proposee
C-gamma seulement apres accord Dom:
- promotion/write-back YAML eventuel;
- criteres d'acceptation de promotion;
- consolidation popup/save-as/save-existing sur traces humaines;
- trajectoire apprentissage Lea, pas trajectoire VWB autonome.