Writes
The decision: does anything downstream need to react to this edit? The litmus test: if a topology rebuild, a replanner, or a renderer must notice the edit, queue it โ dirty metadata only exists on the queued path. When unsure during simulation, queue.
Branches
| Branch | Pick when | You commit to |
|---|---|---|
| Direct field writes | setup, loading, tests, tools โ nothing consumes dirty state | keeping these writes out of the simulation loop |
| Queued operations | sim-time edits; dirty masks drive topology, replanning, or render deltas; parallel execution may ever matter | declaring a domain, touched fields, dirty mask, and WritePolicy per operation |
The declared WritePolicy is what licenses parallel execution later โ
declare it honestly even while running serial. Completion reporting
(result channels) is part of the same contract; the
queued-operations note specifies
both.
What it looks like
Learn and specify
- Teach: getting-started ยง4, rung 4;
examples/mvp_path.ccis the smallest queued edit,examples/colony_2d.ccthe schedule-integrated form. - Specify: queued-operations note (planning, write policies, result channels).