v3.2.0

v3.2.0 — M3: Decisions + Validations + Invariants

Goal: Decisions are recorded during Strategize and Execute phases and persisted to the database. Users can view the decision tree (plan tree), inspect individual decisions (plan explain), manage invariants (invariant add/list/remove), and correct decisions (plan correct --mode revert|append) with selective subtree recomputation.

Acceptance Criteria

  • Decision records are created and persisted during Strategize and Execute phases
  • agents plan tree <plan_id> renders the full decision tree with dependencies
  • agents plan explain <decision_id> shows decision rationale, context snapshot, and alternatives
  • agents invariant add / invariant list / invariant remove manage global, project, action, and plan-scoped invariants
  • agents plan correct --mode revert <decision_id> reverts a decision and recomputes affected subtrees
  • agents plan correct --mode append <decision_id> appends new guidance without discarding prior decisions
  • Validation pipeline runs required and informational validations on resource-attached validations
  • agents validation attach / validation detach manage validation attachments to resources
  • Definition-of-done gating blocks plan apply when validations fail in required mode
  • Test coverage >= 97%

Technical Criteria

  • Decision domain model with 12 decision types (prompt_definition, invariant_enforced, strategy_choice, subplan_spawn, etc.) and context snapshots persisted to SQLite.
  • Influence DAG tracks downstream decision dependencies for selective subtree recomputation.
  • Invariant precedence chain enforced: plan > action > project > global.
  • Correction engine supports revert and append modes with BFS impact analysis.
  • Validation pipeline distinguishes required (blocking) from informational (non-blocking) modes.
  • Test coverage remains >= 97%.
2026-02-26
44% Completed
[FIX] fix: isolate CheckpointRepository prune test to dedicated plan (#8853)
Some checks failed
CI / lint (pull_request) Successful in 41s
CI / quality (pull_request) Successful in 50s
CI / typecheck (pull_request) Successful in 55s
CI / unit_tests (pull_request) Failing after 52s
CI / push-validation (pull_request) Successful in 24s
CI / helm (pull_request) Successful in 27s
CI / security (pull_request) Successful in 1m22s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / build (pull_request) Successful in 39s
CI / e2e_tests (pull_request) Successful in 3m29s
CI / integration_tests (pull_request) Failing after 4m35s
CI / status-check (pull_request) Failing after 3s
auto/needs-reevaluation
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Task
#10978 opened 2026-05-06 07:09:29 +00:00 by HAL9000 1 change request 1 conflicting file
[TEST-INFRA] Add Robot framework integration tests for the provider module (#10952)
Some checks failed
CI / lint (pull_request) Successful in 38s
CI / push-validation (pull_request) Successful in 31s
CI / build (pull_request) Successful in 46s
CI / typecheck (pull_request) Successful in 1m4s
CI / quality (pull_request) Successful in 1m6s
CI / security (pull_request) Successful in 1m12s
CI / unit_tests (pull_request) Successful in 6m40s
CI / docker (pull_request) Successful in 1m34s
CI / integration_tests (pull_request) Successful in 8m36s
CI / helm (pull_request) Failing after 13m41s
CI / coverage (pull_request) Successful in 11m58s
CI / status-check (pull_request) Failing after 3s
auto/ci-timeout
controller-managed
#10977 opened 2026-05-06 02:41:44 +00:00 by HAL9000 1 change request 3 conflicting files
fix(concurrency): add thread safety to InvariantService
Some checks failed
CI / lint (pull_request) Successful in 52s
CI / quality (pull_request) Successful in 50s
CI / build (pull_request) Successful in 44s
CI / typecheck (pull_request) Successful in 1m24s
CI / security (pull_request) Successful in 1m24s
CI / push-validation (pull_request) Successful in 26s
CI / helm (pull_request) Successful in 42s
CI / unit_tests (pull_request) Failing after 5m22s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 9m23s
CI / status-check (pull_request) Failing after 3s
controller-managed
#10947 opened 2026-04-30 21:09:12 +00:00 by HAL9000 1 change request 4 conflicting files
fix(events): add unsubscribe() to EventBus protocol and implementations
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / security (pull_request) Has been cancelled
CI / quality (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
CI / push-validation (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Bug
#10887 opened 2026-04-28 07:28:21 +00:00 by HAL9000 1 change request 5 conflicting files
fix(cli/session): add --format flag and JSON envelope output to session tell
Some checks failed
CI / lint (pull_request) Has been cancelled
CI / typecheck (pull_request) Has been cancelled
CI / security (pull_request) Has been cancelled
CI / quality (pull_request) Has been cancelled
CI / unit_tests (pull_request) Has been cancelled
CI / integration_tests (pull_request) Has been cancelled
CI / e2e_tests (pull_request) Has been cancelled
CI / coverage (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
CI / push-validation (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Bug
#10880 opened 2026-04-28 05:59:55 +00:00 by HAL9000 1 change request 1 conflicting file