aditya
9273f0d8de
fix(estimation): address Hamza code review findings F1–F17 on PR #528
...
Squash 7 estimation migrations (m6_003, 992484befd85, m6_005, m6_006,
m6_007, m6_008, m7_002) into a single clean m6_003_estimation_schema
with linear dependency on m4_003_plan_env_columns. Rename column
estimation_skipped_json to estimation_skipped for naming consistency.
Domain model hardening: replace deprecated FieldValidationInfo with
ValidationInfo, change historical_basis from list[str] to tuple[str,...]
to prevent mutation on frozen model, add max_length=10_000 to rationale.
Service improvements: remove unnecessary ThreadPoolExecutor wrapping,
add EstimationActorProtocol for pluggable actor dispatch, log unexpected
exceptions at error level, document EstimationService as stateless.
Deduplicate estimation serialization via static helpers on
LifecyclePlanModel used by both from_domain() and _update_plan_row().
Remove 6 out-of-scope coverage-boost files (container_73_lines,
plan_cli_print_coverage, resume_coverage) and revert 3 unrelated
benchmark import fixes.
Add Behave scenario for update_plan_overrides atomic field setting.
ISSUES CLOSED : #209
2026-03-19 15:07:05 +00:00
..
2025-10-31 16:18:53 -04:00
2026-03-11 02:42:13 +00:00
2026-03-12 14:38:57 +00:00
2026-03-03 03:29:31 +00:00
2026-03-10 15:09:03 +00:00
2026-03-05 01:28:50 +00:00
2026-03-05 15:13:19 +00:00
2026-03-08 21:53:21 -04:00
2026-03-08 21:53:21 -04:00
2026-02-14 12:16:39 -05:00
2026-02-13 19:01:55 +05:30
2026-02-24 19:12:01 +00:00
2026-02-24 17:57:18 +00:00
2026-02-18 10:49:26 +00:00
2026-02-25 10:30:42 +00:00
2026-03-17 13:14:37 -04:00
2026-02-19 11:29:34 +00:00
2026-02-22 14:18:24 -05:00
2026-02-22 14:18:24 -05:00
2026-02-17 13:54:27 +00:00
2026-02-26 09:10:35 +00:00
2026-02-25 10:48:05 -05:00
2026-02-25 10:01:57 +00:00
2026-03-08 21:53:21 -04:00
2026-02-20 15:57:21 +00:00
2026-02-22 10:19:43 +00:00
2026-03-17 13:14:37 -04:00
2026-02-20 15:57:21 +00:00
2026-02-28 22:06:57 +00:00
2026-03-19 15:07:05 +00:00
2026-03-10 14:18:04 -04:00
2026-03-03 17:01:57 +00:00
2026-03-17 13:14:37 -04:00
2026-03-17 13:14:37 -04:00
2026-03-17 13:14:37 -04:00
2026-03-17 13:14:37 -04:00
2026-03-03 17:01:57 +00:00
2026-03-17 13:14:37 -04:00
2026-03-03 17:01:57 +00:00
2026-02-22 14:18:24 -05:00
2026-02-21 16:27:40 +00:00
2026-02-18 03:27:00 +00:00
2026-02-26 02:47:14 +00:00
2026-03-08 21:53:21 -04:00
2026-02-12 22:01:51 +00:00
2026-03-19 15:07:05 +00:00
2025-12-11 13:55:55 -05:00
2026-02-18 12:18:03 +00:00
2026-02-25 19:38:43 -05:00
2026-02-24 20:11:42 +00:00
2026-02-20 15:57:21 +00:00
2026-03-06 20:28:37 +00:00
2026-02-20 21:46:46 +00:00
2026-03-17 13:14:37 -04:00
2026-03-08 21:53:21 -04:00
2026-02-25 10:48:05 -05:00
2026-03-01 04:38:30 +00:00
2026-03-02 15:05:20 +00:00
2026-03-01 04:38:30 +00:00
2026-03-12 10:31:37 +00:00
2026-03-05 14:11:23 +00:00
2026-03-17 13:14:37 -04:00
2026-03-05 12:58:57 +00:00
2026-03-05 22:00:15 +00:00
2026-03-03 17:01:57 +00:00
2026-02-25 12:08:01 -05:00
2026-02-16 21:35:54 +00:00
2026-03-08 21:53:21 -04:00
2026-03-02 14:32:31 +00:00
2026-02-13 13:05:20 -05:00
2026-02-13 13:05:20 -05:00
2026-02-20 15:57:21 +00:00
2026-03-17 13:14:37 -04:00
2026-02-22 16:40:06 +00:00
2026-02-22 11:07:35 +00:00
2026-03-08 21:53:21 -04:00
2026-02-23 22:19:19 +00:00
2026-02-26 16:13:44 +00:00
2026-02-26 16:13:44 +00:00
2026-03-03 12:18:27 +00:00
2026-03-05 15:42:20 +00:00
2026-03-08 21:53:21 -04:00
2026-03-17 13:14:37 -04:00
2026-02-25 10:02:38 +00:00
2026-02-20 20:38:53 +00:00
2026-02-25 10:04:31 +00:00
2026-02-25 10:48:05 -05:00
2026-03-19 15:07:05 +00:00
2026-03-02 11:54:53 +00:00
2026-03-08 21:53:21 -04:00
2026-02-21 10:18:26 -05:00
2026-02-21 18:11:31 +00:00
2026-03-04 15:36:34 +00:00
2026-02-20 08:50:08 -05:00
2026-02-22 14:18:24 -05:00
2026-03-08 21:53:21 -04:00
2026-03-03 21:44:20 +00:00
2026-02-20 15:57:21 +00:00
2026-03-08 21:53:21 -04:00
2026-02-22 10:15:25 +00:00
2026-03-06 18:16:47 +00:00
2026-02-25 04:50:43 +00:00
2026-02-25 19:38:43 -05:00
2026-02-25 21:26:19 +00:00
2026-02-26 02:01:47 +00:00
2026-02-27 20:20:13 +00:00
2026-03-12 14:38:57 +00:00
2026-02-25 13:17:26 +00:00
2026-03-03 14:55:58 -05:00
2026-03-19 08:46:46 +00:00
2026-03-08 21:53:21 -04:00
2026-02-20 21:46:46 +00:00
2026-02-20 15:57:21 +00:00
2026-02-23 09:47:00 -05:00
2026-02-21 10:18:26 -05:00
2026-02-20 15:57:21 +00:00
2026-02-20 15:57:21 +00:00
2026-03-08 21:53:21 -04:00
2026-02-22 00:43:08 -05:00
2026-02-22 15:13:43 +00:00
2026-03-03 12:10:25 +00:00
2026-02-27 09:47:10 -05:00
2026-02-17 02:24:35 +00:00
2026-02-17 02:24:35 +00:00
2026-02-22 14:18:24 -05:00
2026-02-17 02:35:20 +00:00
2026-03-08 22:31:40 +00:00
2026-02-20 15:57:21 +00:00
2026-02-25 14:00:04 -05:00
2026-03-08 21:53:21 -04:00
2026-02-16 23:56:55 -05:00
2026-02-18 03:27:00 +00:00
2026-02-18 03:27:00 +00:00
2026-03-09 06:59:15 +00:00
2026-02-17 02:35:20 +00:00
2026-02-22 00:43:08 -05:00
2026-03-09 07:56:38 +00:00
2026-03-08 22:19:40 +00:00
2026-02-27 09:47:10 -05:00
2026-02-23 03:11:12 +00:00
2026-02-16 16:46:54 -05:00
2026-02-20 08:48:33 -05:00
2026-02-22 14:18:24 -05:00
2026-02-23 22:20:44 +00:00
2026-02-23 22:20:44 +00:00
2026-02-17 02:35:20 +00:00
2026-02-18 00:10:15 +00:00
2026-02-16 16:46:54 -05:00
2026-02-15 10:44:14 -05:00
2026-03-19 14:03:17 +00:00
2026-03-18 02:30:00 +00:00
2026-02-18 03:27:00 +00:00
2026-03-10 03:39:32 +00:00
2026-02-15 15:19:09 +00:00
2026-02-15 15:19:09 +00:00
2026-03-18 01:45:25 +00:00
2026-03-11 17:42:13 +00:00
2026-03-03 22:21:14 +00:00
2026-03-02 17:44:18 +00:00
2026-03-04 15:59:15 +00:00
2026-02-27 23:08:55 +00:00
2026-02-20 03:31:43 +00:00
2026-03-06 00:49:33 +00:00
2026-02-21 10:18:26 -05:00
2026-02-26 14:30:43 +00:00
2026-03-19 15:07:05 +00:00
2026-02-21 16:32:03 +00:00
2026-02-25 10:05:57 +00:00
2026-02-26 20:33:20 +00:00
2026-02-13 19:24:24 +00:00
2026-02-19 11:15:18 +00:00
2026-02-25 10:06:27 +00:00
2026-03-08 21:53:21 -04:00
2026-03-08 21:53:21 -04:00
2026-03-02 22:05:53 +00:00
2026-03-12 14:38:57 +00:00
2026-02-20 01:10:19 +00:00
2026-03-10 21:39:31 +00:00
2026-03-10 21:24:42 +00:00
2026-02-14 03:50:40 +00:00
2026-02-22 14:18:24 -05:00
2026-03-05 21:38:55 +00:00
2026-03-08 02:57:44 +00:00
2026-03-19 09:30:35 +00:00
2026-02-22 14:18:24 -05:00
2026-02-24 17:57:18 +00:00
2026-02-20 08:50:08 -05:00
2026-02-26 12:29:49 +00:00
2026-02-21 16:30:40 +00:00
2026-02-27 20:09:26 +00:00
2026-02-14 03:54:14 +00:00
2026-02-17 10:13:19 +00:00
2026-02-27 08:02:48 +00:00
2026-03-03 17:01:57 +00:00
2026-02-19 22:07:56 +00:00
2026-03-02 09:41:25 -05:00
2026-03-10 22:40:15 +00:00
2026-03-11 03:07:42 +00:00
2026-03-17 13:14:37 -04:00
2026-03-11 01:36:06 +00:00
2026-03-08 22:11:49 +00:00
2026-02-16 21:35:54 +00:00
2026-02-20 08:49:30 -05:00
2026-02-14 18:55:48 +00:00
2026-02-22 14:18:24 -05:00
2026-02-17 20:28:20 +00:00
2026-02-21 10:23:31 -05:00
2026-02-22 14:18:24 -05:00
2026-03-04 18:21:19 +00:00
2026-03-05 19:20:39 +00:00
2026-03-11 00:40:07 +00:00
2026-03-04 22:40:34 +00:00
2026-03-08 21:53:21 -04:00
2026-02-20 15:57:21 +00:00
2026-02-25 10:03:21 +00:00
2026-02-20 02:54:08 +00:00
2026-02-25 10:48:05 -05:00