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(cli): wrap plan status --format json output in spec-required JSON envelope
Some checks failed
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 / build (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
CI / push-validation (pull_request) Has been cancelled
CI / lint (pull_request) Failing after 51s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 4s
auto/needs-reevaluation
controller-managed
Priority
High
Type
Bug
#11224 opened 2026-05-15 07:37:36 +00:00 by HAL9000 1 change request
fix(cli): wrap plan status --format json output in spec-required JSON envelope
Some checks failed
CI / lint (pull_request) Failing after 34s
CI / build (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 29s
CI / quality (pull_request) Successful in 55s
CI / typecheck (pull_request) Failing after 57s
CI / security (pull_request) Successful in 1m1s
CI / push-validation (pull_request) Successful in 28s
CI / unit_tests (pull_request) Failing after 2m18s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Failing after 2m55s
CI / status-check (pull_request) Failing after 3s
auto/needs-reevaluation
Priority
High
State
Paused
Type
Bug
#11200 opened 2026-05-13 20:01:00 +00:00 by HAL9000 1 change request 3 conflicting files
fix(Python 3.13): replace deprecated asyncio.get_event_loop() and datetime.utcnow() calls
Some checks failed
CI / helm (pull_request) Successful in 1m9s
CI / tdd_quality_gate (pull_request) Failing after 1m39s
CI / build (pull_request) Successful in 1m37s
CI / lint (pull_request) Failing after 1m50s
CI / quality (pull_request) Successful in 1m57s
CI / security (pull_request) Successful in 2m5s
CI / typecheck (pull_request) Successful in 2m43s
CI / push-validation (pull_request) Successful in 22s
CI / unit_tests (pull_request) Failing after 5m2s
CI / docker (pull_request) Has been skipped
CI / coverage (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 5m2s
CI / integration_tests (pull_request) Failing after 7m40s
CI / status-check (pull_request) Failing after 4s
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Testing
#11156 opened 2026-05-12 12:12:01 +00:00 by freemo 1 change request 1 conflicting file
Epic #8137: Invariant Enforcement & Validation Pipeline (M3)
Some checks failed
CI / quality (pull_request) Successful in 55s
CI / push-validation (pull_request) Successful in 35s
CI / build (pull_request) Successful in 42s
CI / helm (pull_request) Successful in 46s
CI / unit_tests (pull_request) Successful in 4m44s
CI / security (pull_request) Failing after 13m59s
CI / typecheck (pull_request) Failing after 13m59s
CI / lint (pull_request) Failing after 13m59s
CI / integration_tests (pull_request) Successful in 8m27s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Epic
#11151 opened 2026-05-12 09:05:25 +00:00 by freemo 1 change request 1 conflicting file
fix: plan tree --format color outputs ANSI-coloured text
Some checks failed
CI / lint (pull_request) Successful in 54s
CI / typecheck (pull_request) Successful in 1m12s
CI / quality (pull_request) Successful in 1m12s
CI / security (pull_request) Successful in 1m19s
CI / push-validation (pull_request) Successful in 28s
CI / helm (pull_request) Successful in 30s
CI / build (pull_request) Successful in 54s
CI / unit_tests (pull_request) Failing after 4m32s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Failing after 4m34s
CI / status-check (pull_request) Failing after 4s
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Feature
#11150 opened 2026-05-12 08:31:08 +00:00 by freemo 3 / 3 1 approval 1 conflicting file
fix(agents/graphs/plan_generation): BDD tests and docs for validation bypass #10480
Some checks failed
CI / push-validation (pull_request) Successful in 19s
CI / helm (pull_request) Successful in 28s
CI / build (pull_request) Successful in 42s
CI / lint (pull_request) Successful in 48s
CI / quality (pull_request) Successful in 49s
CI / tdd_quality_gate (pull_request) Failing after 59s
CI / typecheck (pull_request) Successful in 1m14s
CI / security (pull_request) Successful in 1m15s
CI / e2e_tests (pull_request) Successful in 4m2s
CI / integration_tests (pull_request) Failing after 4m8s
CI / unit_tests (pull_request) Failing after 4m56s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
controller-managed
MoSCoW
Must have
Priority
Critical
Type
Bug
#11149 opened 2026-05-12 08:24:47 +00:00 by freemo 7 / 7 1 change request 1 conflicting file
test: restore and enhance e2e test coverage
Some checks failed
CI / lint (pull_request) Successful in 1m17s
CI / build (pull_request) Successful in 1m12s
CI / quality (pull_request) Successful in 1m23s
CI / tdd_quality_gate (pull_request) Failing after 1m28s
CI / security (pull_request) Successful in 1m55s
CI / typecheck (pull_request) Successful in 2m3s
CI / helm (pull_request) Successful in 58s
CI / e2e_tests (pull_request) Successful in 4m12s
CI / integration_tests (pull_request) Failing after 4m32s
CI / push-validation (pull_request) Successful in 24s
CI / unit_tests (pull_request) Successful in 5m4s
CI / docker (pull_request) Successful in 2m18s
CI / coverage (pull_request) Successful in 13m34s
CI / status-check (pull_request) Failing after 3s
controller-managed
State
In Progress
Type
Bug
#11142 opened 2026-05-12 06:06:28 +00:00 by freemo 6 / 7 1 change request
feat: implement agents invariant add list remove commands
Some checks failed
CI / push-validation (pull_request) Successful in 50s
CI / helm (pull_request) Successful in 56s
CI / lint (pull_request) Successful in 1m18s
CI / build (pull_request) Successful in 1m24s
CI / quality (pull_request) Successful in 1m39s
CI / typecheck (pull_request) Successful in 1m43s
CI / security (pull_request) Successful in 1m52s
CI / tdd_quality_gate (pull_request) Failing after 1m54s
CI / e2e_tests (pull_request) Failing after 4m29s
CI / unit_tests (pull_request) Successful in 4m55s
CI / integration_tests (pull_request) Failing after 5m23s
CI / docker (pull_request) Successful in 1m34s
CI / coverage (pull_request) Successful in 12m40s
CI / status-check (pull_request) Failing after 3s
controller-managed
MoSCoW
Must have
Priority
Critical
State
In Progress
Type
Feature
#11140 opened 2026-05-12 05:54:23 +00:00 by freemo 6 / 6 1 change request 3 conflicting files
fix(plan-executor): persist strategy decisions during Strategize phase
Some checks failed
CI / push-validation (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 30s
CI / lint (pull_request) Successful in 49s
CI / build (pull_request) Successful in 39s
CI / tdd_quality_gate (pull_request) Failing after 46s
CI / quality (pull_request) Successful in 1m0s
CI / typecheck (pull_request) Successful in 1m5s
CI / security (pull_request) Successful in 1m6s
CI / integration_tests (pull_request) Failing after 3m1s
CI / e2e_tests (pull_request) Successful in 3m19s
CI / unit_tests (pull_request) Failing after 4m14s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
controller-managed
Priority
Critical
State
In Review
Type
Testing
#11138 opened 2026-05-12 05:47:52 +00:00 by freemo 1 change request 2 conflicting files
fix(data-integrity): remove silent argument swap in ValidationAttachmentRepository.attach
Some checks failed
CI / load-versions (pull_request) Successful in 16s
CI / push-validation (pull_request) Successful in 26s
CI / lint (pull_request) Failing after 43s
CI / quality (pull_request) Successful in 1m0s
CI / build (pull_request) Successful in 55s
CI / typecheck (pull_request) Successful in 1m25s
CI / security (pull_request) Successful in 1m25s
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 8m57s
CI / helm (pull_request) Failing after 13m51s
CI / status-check (pull_request) Has been cancelled
auto/needs-reevaluation
controller-managed
MoSCoW
Must have
Priority
High
Type
Bug
#11079 opened 2026-05-09 08:23:28 +00:00 by HAL9000 1 change request 8 conflicting files
feat(plans): implement plan correct --mode=revert and --mode=append correction engine
Some checks failed
CI / load-versions (pull_request) Successful in 14s
CI / push-validation (pull_request) Successful in 25s
CI / lint (pull_request) Failing after 46s
CI / typecheck (pull_request) Failing after 59s
CI / quality (pull_request) Successful in 57s
CI / integration_tests (pull_request) Failing after 1m7s
CI / security (pull_request) Failing after 1m10s
CI / build (pull_request) Successful in 45s
CI / helm (pull_request) Successful in 40s
CI / unit_tests (pull_request) Failing after 45m24s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 3s
auto/needs-reevaluation
controller-managed
MoSCoW
Must have
Priority
High
Type
Feature
#11061 opened 2026-05-08 22:39:32 +00:00 by HAL9000 1 change request 2 conflicting files
fix(data-integrity): remove session.rollback() calls from all repository methods in UnitOfWork pattern
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
#11054 opened 2026-05-08 17:19:31 +00:00 by HAL9000 1 change request 23 conflicting files
fix(data-integrity): remove silent argument swap in ValidationAttachmentRepository.attach
Some checks failed
CI / lint (pull_request) Has started running
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
High
Type
Bug
#11022 opened 2026-05-08 06:37:48 +00:00 by HAL9000 1 change request 1 conflicting file
[REPLACES #8179] fix(data-integrity): remove session.rollback() calls from constructor-injected repositories
Some checks failed
CI / lint (pull_request) Failing after 46s
CI / typecheck (pull_request) Successful in 1m6s
CI / quality (pull_request) Successful in 1m1s
CI / build (pull_request) Successful in 33s
CI / security (pull_request) Successful in 1m9s
CI / push-validation (pull_request) Successful in 35s
CI / helm (pull_request) Successful in 47s
CI / integration_tests (pull_request) Failing after 3m8s
CI / unit_tests (pull_request) Failing after 12m6s
CI / coverage (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
auto/needs-reevaluation
MoSCoW
Must have
Priority
High
State
Paused
Type
Bug
#11008 opened 2026-05-07 18:55:15 +00:00 by HAL9000 1 change request 3 conflicting files
fix(concurrency): add thread safety to InvariantService
Some checks failed
CI / lint (pull_request) Failing after 45s
CI / typecheck (pull_request) Successful in 1m17s
CI / security (pull_request) Successful in 1m7s
CI / helm (pull_request) Successful in 35s
CI / build (pull_request) Successful in 47s
CI / push-validation (pull_request) Successful in 31s
CI / quality (pull_request) Successful in 1m2s
CI / unit_tests (pull_request) Failing after 1m50s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Failing after 4m14s
CI / status-check (pull_request) Failing after 3s
auto/needs-reevaluation
State
Paused
#11001 opened 2026-05-07 14:33:23 +00:00 by HAL9000 1 change request 5 conflicting files
test-infra: Harden BDD scenario tagging rules (strict @a2a/@session/@cli enforcement)
Some checks failed
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 / build (pull_request) Has been cancelled
CI / helm (pull_request) Has been cancelled
CI / push-validation (pull_request) Has been cancelled
CI / lint (pull_request) Successful in 51s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 9s
auto/needs-reevaluation
controller-managed
#10992 opened 2026-05-07 07:33:53 +00:00 by HAL9000 5 / 5 1 change request 2 conflicting files
feat(skills): implement multi-scope agent skill discovery for global, project, and local tiers
Some checks failed
CI / lint (pull_request) Failing after 36s
CI / typecheck (pull_request) Successful in 1m14s
CI / quality (pull_request) Successful in 1m0s
CI / push-validation (pull_request) Successful in 38s
CI / helm (pull_request) Successful in 42s
CI / build (pull_request) Successful in 55s
CI / security (pull_request) Successful in 1m22s
CI / unit_tests (pull_request) Failing after 1m20s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / integration_tests (pull_request) Successful in 9m43s
CI / status-check (pull_request) Failing after 3s
controller-managed
MoSCoW
Must have
Priority
High
State
In Review
Type
Feature
#10980 opened 2026-05-06 08:56:17 +00:00 by HAL9000 6 / 8 1 change request 1 conflicting file