feat(decisions): implement decision recording hook in Strategize phase #8722

Merged
HAL9000 merged 2 commits from feat/v3.2.0-decision-recording-strategize into master 2026-05-08 06:24:24 +00:00

2 Commits

Author SHA1 Message Date
HAL9000 da50e928db fix(CI): resolve remaining lint/format violations in PR #8722
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 1m18s
CI / quality (pull_request) Successful in 1m25s
CI / typecheck (pull_request) Successful in 1m35s
CI / security (pull_request) Successful in 1m35s
CI / benchmark-regression (pull_request) Failing after 1m0s
CI / build (pull_request) Successful in 37s
CI / integration_tests (pull_request) Successful in 4m9s
CI / e2e_tests (pull_request) Successful in 3m13s
CI / unit_tests (pull_request) Successful in 4m47s
CI / helm (pull_request) Successful in 28s
CI / push-validation (pull_request) Successful in 28s
CI / docker (pull_request) Successful in 1m44s
CI / coverage (pull_request) Successful in 12m57s
CI / status-check (pull_request) Successful in 4s
- Apply ruff format to features/steps/strategize_decision_recording_steps.py:
  expanded single-line set literal to multi-line canonical form (PEP 87)
  This was the sole remaining CI lint blocker per review cycle 14.

- Remove unused imports from tests/actor/test_registry_builtin_yaml.py:
  removed 'Settings' and 'ProviderRegistry' to fix F401 errors.
  These were pre-existing violations caught by ruff check.

ISSUES CLOSED: #8522

Closes: #8722
2026-05-08 05:15:25 +00:00
HAL9000 76359e5bbd feat(decisions): implement decision recording hook in Strategize phase
CI / lint (pull_request) Failing after 1m2s
CI / typecheck (pull_request) Successful in 1m13s
CI / security (pull_request) Successful in 1m11s
CI / quality (pull_request) Successful in 48s
CI / helm (pull_request) Successful in 45s
CI / build (pull_request) Successful in 50s
CI / push-validation (pull_request) Successful in 23s
CI / integration_tests (pull_request) Successful in 5m55s
CI / e2e_tests (pull_request) Successful in 5m26s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Failing after 54s
CI / unit_tests (pull_request) Successful in 8m59s
CI / coverage (pull_request) Has been skipped
CI / docker (pull_request) Has been skipped
CI / status-check (pull_request) Failing after 4s
Implement the StrategizeDecisionHook class for recording decisions during
the Strategize phase. The hook captures every decision point with question,
chosen_option, alternatives_considered, confidence_score, rationale, and
full context_snapshot (hot_context_hash, actor_state_ref, relevant_resources).

Supports four decision types: strategy_choice, resource_selection,
subplan_spawn, and invariant_enforced. Includes a DecisionRecorder protocol
port for decoupled persistence and capture_context_snapshot utility function.

Comprehensive BDD test suite with 40+ scenarios covering all decision types,
context snapshot validation, error handling, and tree structure tracking.

ISSUES CLOSED: #8522
2026-05-07 17:45:26 +00:00