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