docs(spec): clarify invariant phase boundaries and ACMS thread-safety model [AUTO-ARCH-23]
CI / push-validation (pull_request) Successful in 43s
CI / helm (pull_request) Successful in 45s
CI / build (pull_request) Successful in 1m29s
CI / lint (pull_request) Successful in 2m5s
CI / quality (pull_request) Successful in 2m10s
CI / security (pull_request) Successful in 2m18s
CI / typecheck (pull_request) Successful in 2m41s
CI / e2e_tests (pull_request) Successful in 5m12s
CI / integration_tests (pull_request) Successful in 7m59s
CI / unit_tests (pull_request) Failing after 9m34s
CI / docker (pull_request) Has been skipped
CI / coverage (pull_request) Successful in 11m22s
CI / status-check (pull_request) Failing after 3s

- Split Invariant glossary entry into shorter, clearer sentences for readability
- Add Plan Lifecycle section documentation of invariant reconciliation at each
  phase boundary (before Strategize, Execute, and Apply) per reviewer feedback
  (addresses acceptance criterion for issue #9899)

Addresses reviewer feedback from PR #10759
This commit is contained in:
2026-05-05 00:11:36 +00:00
parent df58c4b864
commit bfd62f2469
+3 -1
View File
@@ -89,7 +89,7 @@ The following standards are integrated into the architecture:
: A persisted choice point in a plan's decision tree, created during Strategize or Execute. Records the question, chosen option, alternatives, confidence score, rationale, context snapshot, and downstream dependencies. Types: `prompt_definition`, `invariant_enforced`, `strategy_choice`, `subplan_spawn`, `subplan_parallel_spawn`, among others. Supports targeted correction with selective subtree recomputation.
Invariant
: A natural-language constraint on plan execution scoped to global, project, action, or plan level. The runtime precedence chain is four-tier: ==plan > action > project > global==. Exception: global invariants marked `non_overridable` always win regardless of scope. Reconciled by the Invariant Reconciliation Actor at each phase boundary (before Strategize, Execute, and Apply); this multi-phase enforcement catches invariants added or modified between phases; recorded as `invariant_enforced` decisions that propagate to child plans.
: A natural-language constraint on plan execution scoped to global, project, action, or plan level. The runtime precedence chain is four-tier: ==plan > action > project > global==. Exception: global invariants marked `non_overridable` always win regardless of scope. Reconciliation is performed by the Invariant Reconciliation Actor at each phase boundary before Strategize, before Execute, and before Apply. This multi-phase enforcement catches invariants added or modified between phases. Each reconciliation run records `invariant_enforced` decisions that propagate to child plans.
Automation Profile
: A named set of confidence thresholds (each `0.0``1.0`) gating which plan operations proceed automatically versus requiring human approval. `0.0` = always automatic; `1.0` = always manual. Eight built-in profiles (`manual` through `full-auto`). Custom profiles namespaced as `[[server:]namespace/]name`. Each profile composes a **Safety Profile** that controls hard safety constraints (sandbox, checkpoint, unsafe-tool gating, skill restrictions, cost/retry limits).
@@ -18300,6 +18300,8 @@ In this spec:
The normal phase progression is forward, but both Execute and Apply may revert to Strategize when the current strategy's constraints are too restrictive (see *Phase Reversion* below).
**Invariant reconciliation** is enforced at every phase boundary — before Strategize, before Execute, and before Apply. The Invariant Reconciliation Actor runs at each boundary to catch invariants that were added or modified since the previous phase. Each reconciliation produces `invariant_enforced` decisions in the plan's decision tree, which constrain downstream decisions and propagate to child plans.
#### Phase Transition Verbs (CLI / UX Contract)
Verbs that trigger phase transitions. CleverAgents should standardize these verbs as the **public API** (CLI, TUI, web):