Dom
7bb8d543ab
feat(cognition): dataclasses Trace + SceneExpected + Precondition (Phase 2.1)
Crée les 3 dataclasses du modèle Mandat/Protocoles/Scènes v0.3 dans
core/cognition/, standalone (aucun branchement runtime), avec
sérialisation JSON explicite et tests offline.
Préparation des phases :
- Phase 2.1 plan : objet Trace (mandate_id, intention_id, scene_id,
affordance_signature, expected_retour, level_of_delegation)
- Workpack A : SceneExpected (monitor_index, app_name, title_patterns,
title_anti, window_rect_hint, scene_role, accepted_transitions,
stability_ms) + helper matches_title()
- Workpack B : Precondition (kind, window_title_must_contain/anti,
critic_question, verify_timeout_ms) + PreconditionRecovery
(max_attempts, on_recovery_fail, actions)
Toutes les dataclasses sont frozen, immutables, avec to_dict/from_dict
tolérants (champs vides/None -> instance vide). Validation au __post_init__
pour Precondition.kind et PreconditionRecovery.on_recovery_fail.
Aucune dépendance runtime obligatoire : si l'objet n'est pas posé sur
une action, fallback comportement actuel. Aucune modif executor /
api_stream / replay_engine / grounding.
Tests : 22/22 passent (sérialisation JSON, contrats from_dict tolérants,
validation kinds, helpers matches_title/check_title, anti-intention).
Tag rollback : rollback/pre-cognition-dataclasses-2026-05-25_0610
2026-05-25 06:08:18 +02:00
..
2026-03-31 09:30:14 +02:00
2026-04-17 17:46:40 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-04-15 09:06:19 +02:00
2026-05-24 21:54:39 +02:00
2026-04-14 16:49:02 +02:00
2026-04-09 21:03:25 +02:00
2026-03-26 10:19:18 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-05-09 15:30:25 +02:00
2026-03-18 16:24:01 +01:00
2026-05-12 18:49:49 +02:00
2026-05-24 16:48:37 +02:00
2026-04-10 09:01:13 +02:00
2026-05-24 16:48:37 +02:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-05-25 06:08:18 +02:00
2026-05-24 21:53:24 +02:00
2026-03-16 22:25:12 +01:00
2026-03-16 22:58:44 +01:00
2026-04-14 16:48:36 +02:00
2026-04-20 17:03:44 +02:00
2026-01-29 11:23:51 +01:00
2026-05-24 17:52:38 +02:00
2026-04-10 09:01:52 +02:00
2026-04-15 09:06:28 +02:00
2026-03-15 10:02:09 +01:00
2026-05-24 16:48:37 +02:00
2026-03-15 10:02:09 +01:00
2026-03-16 23:10:51 +01:00
2026-04-09 22:21:40 +02:00
2026-04-15 09:06:41 +02:00
2026-04-10 08:09:05 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-05-24 16:48:37 +02:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-04-20 17:03:44 +02:00
2026-04-15 22:02:30 +02:00
2026-05-24 16:48:37 +02:00
2026-03-15 10:02:09 +01:00
2026-04-10 08:42:01 +02:00
2026-03-26 10:19:18 +01:00
2026-05-05 23:09:43 +02:00
2026-05-05 22:50:22 +02:00
2026-05-24 21:58:06 +02:00
2026-04-22 10:43:28 +02:00
2026-04-14 16:48:23 +02:00
2026-05-24 21:07:12 +02:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-04-18 13:07:56 +02:00
2026-01-29 11:23:51 +01:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-03-15 10:02:09 +01:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-01-29 11:23:51 +01:00
2026-05-05 23:29:38 +02:00
2026-04-15 09:06:41 +02:00
2026-04-18 13:07:56 +02:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-04-15 09:06:51 +02:00
2026-01-29 11:23:51 +01:00
2026-04-14 16:49:17 +02:00
2026-04-14 16:49:17 +02:00
2026-01-29 11:23:51 +01:00
2026-05-24 16:48:37 +02:00
2026-04-17 17:46:40 +02:00
2026-04-10 09:04:37 +02:00
2026-04-10 09:04:37 +02:00
2026-05-09 12:42:47 +02:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-03-31 09:45:20 +02:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-04-10 10:54:19 +02:00
2026-04-14 16:48:00 +02:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-04-09 21:03:25 +02:00
2026-04-25 17:48:18 +02:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-05-24 16:48:37 +02:00
2026-04-14 16:48:00 +02:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-04-10 08:28:55 +02:00
2026-04-10 11:02:51 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 16:48:37 +02:00
2026-05-24 17:52:06 +02:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-03-15 10:02:09 +01:00
2026-03-15 10:02:09 +01:00
2026-04-20 17:03:44 +02:00
2026-03-15 10:02:09 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-05-24 16:48:37 +02:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-01-29 11:23:51 +01:00
2026-04-09 21:50:32 +02:00
2026-04-15 09:06:19 +02:00
2026-04-15 09:07:04 +02:00