codex@macbookpro
·
2026-03-31
2026-03-31_task02_branch_a_dynamics_feedback.md
1# Task 02: Branch A Dynamics + Feedback
2
3## Title
4
5Task 02: minimal dynamics + feedback loop + decay + degraded output
6
7## Direct Prompt
8
9Continue Branch A from commit `3e972559b9ea28fdad8c8eccd8d206afd669836f`, keep the implementation independent from other branches, strengthen the graph-native runtime beyond scaffold level, make output feedback materially affect later state, make decay observable, make degraded output real and testable, and record execution results in-repo.
10
11## Suggested Branch Name
12
13`branch-a/task02-dynamics-feedback`
14
15## Goal
16
17Implement the smallest inspectable Branch A runtime that has real local graph dynamics across `(phi, mu, J)`, real output-to-input feedback, observable forgetting, and runtime-conditioned `full` / `degraded` / `minimal` output behavior.
18
19## Background
20
21This round must continue to follow the locked conceptual and engineering constraints in:
22
23- `/Users/george/code/CIE-Unified/README.md`
24- `/Users/george/code/CIE-Unified/LOCKED_IMPLEMENTATION_SPEC.md`
25
26Those documents remain locked and define the Branch A requirements for graph-native runtime state, output-to-input feedback, homing, decay, degraded output, and comparable observability.
27
28## Involved Repo
29
30- `/Users/george/code/CIE-Unified`
31
32## Scope
33
34- update the Branch A plan/task docs for round 2
35- strengthen `step()` so `phi`, `mu`, and `J` evolve through explicit local rules
36- make `emit()` queue structured internal feedback that changes later runtime state
37- make inactivity decay and forgetting observable through retained event traces
38- make `output_mode` depend on real runtime conditions
39- improve snapshot observability while keeping the runtime small and stdlib-only
40- extend tests for dynamics, feedback, decay, and degraded output
41
42## Allowed Modifications
43
44- `/Users/george/code/CIE-Unified/plans/2026-03-31_branch_a_plan.md`
45- `/Users/george/code/CIE-Unified/tasks/2026-03-31_task01_branch_a_round1_scaffold.md`
46- `/Users/george/code/CIE-Unified/tasks/2026-03-31_task02_branch_a_dynamics_feedback.md`
47- `/Users/george/code/CIE-Unified/cie/__init__.py`
48- `/Users/george/code/CIE-Unified/cie/graph.py`
49- `/Users/george/code/CIE-Unified/cie/state.py`
50- `/Users/george/code/CIE-Unified/cie/runtime.py`
51- `/Users/george/code/CIE-Unified/tests/__init__.py`
52- `/Users/george/code/CIE-Unified/tests/test_smoke.py`
53- `/Users/george/code/CIE-Unified/tests/test_dynamics.py`
54
55## Avoid Modifying
56
57- `/Users/george/code/CIE-Unified/README.md`
58- `/Users/george/code/CIE-Unified/LOCKED_IMPLEMENTATION_SPEC.md`
59
60## Must Complete
61
62- mark Task 01 complete and Task 02 complete in the Branch A plan
63- create this Task 02 prompt document in-repo
64- strengthen runtime dynamics across `phi`, `mu`, and `J`
65- make emit-driven feedback materially affect later steps
66- make decay/forgetting real and observable
67- make output degradation real and testable
68- validate with the recommended unittest command
69- record execution details and deferred limitations here
70
71## Acceptance Criteria
72
731. `step()` performs real graph-native state evolution across `phi`, `mu`, and `J`.
742. Output-to-input feedback materially affects subsequent runtime state.
753. Decay/forgetting is real and observable.
764. `output_mode` transitions among `full`, `degraded`, and `minimal` using runtime conditions.
775. `bound_ability_core`, `drift_score`, and `anchor_pull` are more meaningful than scaffold placeholders.
786. Tests pass.
79
80## Evaluation Requirements
81
82- use only the Python standard library in runtime code
83- keep the implementation minimal, explicit, and inspectable
84- stay graph-native with `(phi, mu, J)` as the canonical state
85- avoid `exact_text_map`
86- avoid MoE-style substitution
87- avoid latent-vector ontology as the real runtime state
88- keep observability stronger than hidden heuristics
89
90## Recommended Validation Command
91
92`python3 -m unittest discover -s tests -v`
93
94## Delivery Requirements
95
96- commit on `branch-a/task02-dynamics-feedback`
97- push the branch to `origin`
98- keep the implementation independent from `branch-b` and other later branches
99- include execution record details for branch/base/backup/files/validation/results/limitations
100
101## Execution Record
102
103- actual branch name: `branch-a/task02-dynamics-feedback`
104- base commit: `3e972559b9ea28fdad8c8eccd8d206afd669836f`
105- backup path used for dirty-worktree handling: `none`
106- files changed:
107 - `/Users/george/code/CIE-Unified/plans/2026-03-31_branch_a_plan.md`
108 - `/Users/george/code/CIE-Unified/tasks/2026-03-31_task01_branch_a_round1_scaffold.md`
109 - `/Users/george/code/CIE-Unified/tasks/2026-03-31_task02_branch_a_dynamics_feedback.md`
110 - `/Users/george/code/CIE-Unified/cie/graph.py`
111 - `/Users/george/code/CIE-Unified/cie/state.py`
112 - `/Users/george/code/CIE-Unified/cie/runtime.py`
113 - `/Users/george/code/CIE-Unified/tests/test_smoke.py`
114 - `/Users/george/code/CIE-Unified/tests/test_dynamics.py`
115- validation command run: `python3 -m unittest discover -s tests -v`
116- concise test result summary: `Ran 10 tests; all passed.`
117- remaining limitations deferred to Task 03:
118 - sedimentation still uses lightweight stage heuristics rather than a richer path-level memory-to-skill trace
119 - merge events remain node-level promotions, not broader structural merges or loop detection
120 - feedback is now real and stateful but still local; it does not yet model richer long-horizon teacher correction
121
122## Task 03 Continuation Note
123
124Task 03 for Branch A was branched independently from commit `9823c2395c565908965b137e343bcbc1883ae3c5` on `branch-a/task03-sedimentation` to replace those sedimentation placeholders with explicit runtime state and events.