feat(actor): implement estimation actor type #962

Merged
brent.edwards merged 3 commits from feature/m5-estimation-actor into master 2026-03-21 01:40:58 +00:00

3 Commits

Author SHA1 Message Date
brent.edwards 4f4fb45afd Merge branch 'master' into feature/m5-estimation-actor
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 26s
CI / lint (pull_request) Successful in 3m21s
CI / quality (pull_request) Successful in 3m44s
CI / typecheck (pull_request) Successful in 3m56s
CI / security (pull_request) Successful in 4m4s
CI / e2e_tests (pull_request) Successful in 4m51s
CI / unit_tests (pull_request) Successful in 6m5s
CI / integration_tests (pull_request) Successful in 6m44s
CI / docker (pull_request) Successful in 57s
CI / coverage (pull_request) Successful in 11m3s
CI / status-check (pull_request) Successful in 1s
CI / benchmark-regression (pull_request) Successful in 36m36s
2026-03-21 01:25:52 +00:00
brent.edwards 474e86f821 Merge remote-tracking branch 'origin/master' into feature/m5-estimation-actor
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 18s
CI / lint (pull_request) Successful in 3m18s
CI / typecheck (pull_request) Successful in 3m55s
CI / quality (pull_request) Successful in 3m58s
CI / security (pull_request) Successful in 4m2s
CI / integration_tests (pull_request) Successful in 7m12s
CI / unit_tests (pull_request) Successful in 7m22s
CI / docker (pull_request) Successful in 1m16s
CI / e2e_tests (pull_request) Successful in 9m33s
CI / coverage (pull_request) Failing after 10m28s
CI / benchmark-regression (pull_request) Has been cancelled
CI / status-check (pull_request) Has been cancelled
# Conflicts:
#	src/cleveragents/domain/models/core/__init__.py
2026-03-21 01:02:49 +00:00
brent.edwards f325f7a036 feat(actor): implement estimation actor type
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 18s
CI / build (pull_request) Successful in 17s
CI / quality (pull_request) Successful in 42s
CI / typecheck (pull_request) Successful in 50s
CI / security (pull_request) Successful in 51s
CI / unit_tests (pull_request) Successful in 3m46s
CI / docker (pull_request) Successful in 1m18s
CI / coverage (pull_request) Successful in 6m22s
CI / e2e_tests (pull_request) Failing after 12m51s
CI / integration_tests (pull_request) Failing after 12m51s
CI / benchmark-regression (pull_request) Failing after 22m0s
Add EstimationResult domain model with cost, time, token, risk, and
step estimates. Add ESTIMATOR role to ActorRole enum. Add
estimation_result field to Plan model. Implement EstimationStubActor
for local estimation. Integrate estimation invocation into plan
lifecycle after Strategize phase. Display estimation results in
plan status CLI output. Estimation is optional — plans work without
an estimation actor configured.

Review fixes: add ge=0 constraints on numeric fields, Literal type
for risk_level, tuple for risk_factors (frozen model safety),
allow_inf_nan=False, max_length bounds on summary/raw_output,
risk_factors cap at 100, __all__ export, as_display_dict() to
deduplicate serialization, stub actor TODO, and assertion resilience
in context_tiers steps.

Also fixes pre-existing test failures discovered during full nox
suite verification.

ISSUES CLOSED: #890
2026-03-20 23:49:17 +00:00