Cross-process idempotence

Generated Markdown for references/concept_idempotence.md.

Open book page Back to the skill graph

# Cross-process idempotence

_apply must converge across processes, not just within the running one — why test run 3 matters._

Idempotence in config-weave is **cross-process**: applying a converged playbook a
second time, in a \*fresh\* process, must report every step `already configured`.
A `check` that only passes against in-process state (a cache, an open handle, a
process-local variable) silently breaks the contract.


The [three-run protocol]../references/concept_three_run_protocol.md's third run exists precisely to catch this: it re-applies in a new process, so state that only existed in-process re-applies, surfaces as `configured`, and fails the test.

## Related

- [Convergence contract]../references/concept_convergence_contract.md

- [Three-run protocol]../references/concept_three_run_protocol.md

- [Testlab]../references/concept_testlab.md

[← Back to SKILL.md]../SKILL.md