Add native impact remediation synthesis loop (sprint 242)

This commit is contained in:
Bill
2026-02-26 15:08:36 -07:00
parent 3c04216a54
commit ee38182b79
9 changed files with 230 additions and 2 deletions

View File

@@ -150,7 +150,7 @@ Parallel planning tranche (active):
- `logs/taskitem_runs/TEST_ONLY_spec_planning_baseline_20260226/deterministic_spec_readiness.json`
Planning runtime controls (active):
- `sprint232_plan.md` to `sprint241_plan.md`
- `sprint232_plan.md` to `sprint242_plan.md`
- semantic bridge + intake augmentation + requirement injection + expansion gating are wired into:
- `tools/mcp/run_sprint_taskitem_pipeline.sh`
- current policy default is native-first semantic fallback:
@@ -174,3 +174,7 @@ Planning runtime controls (active):
- `WSTONE_NATIVE_IMPACT_COVERAGE_ENFORCE`
- `WSTONE_NATIVE_IMPACT_COVERAGE_PROFILES`
- `native_impact_coverage`
- remediation loop can synthesize profile-specific extra constraints and rerun:
- `WSTONE_EXTRA_NORMALIZED_REQUIREMENTS_FILE`
- `tools/mcp/synthesize_native_impact_remediation_requirements.py`
- `tools/mcp/run_native_impact_remediation_loop.sh`

View File

@@ -47,7 +47,7 @@ This is the canonical dated registry for "not production-ready" generator gaps.
| GR-018 | Performance/security/rollout constrained refactor enforcement gap | `docs/gap_hunt_fullstack_multifile_2026-02-26.md`, `logs/taskitem_runs/challenging_fullstack_multifile_20260226_r5/results.jsonl` | `partial` | Hard checks now enforce migration rollback + data-loss policy, security deny-by-default, SLO p95 presence, and rollout staged+abort policy. Enforcement is contract-level; generator capability under these constraints is still weak in C++ AB path. | Constraint-aware generation follow-up |
| GR-019 | Parity-blocked readiness load (gating without capability closure) | `logs/taskitem_runs/challenging_fullstack_multifile_20260226_r7/summary.json`, `logs/taskitem_runs/challenging_subset_prod_20260226_r7/summary.json`, `docs/sprint225_227_execution_tracker_2026-02-26.md` | `partial` | Sprint 225-227 reduced blocked parity load from `6` to `0` on both tracked hard catalogs while keeping unresolved divergence at `0`. This closes immediate safety debt for current corpora, but robustness is still contingent on pattern-driven repair classes. | Generalize repairs beyond queue-shaped transpile outputs |
| GR-020 | Semantic fallback overuse masks weak native decomposition | `logs/taskitem_runs/TEST_ONLY_sprint236_semantic_fallback_audit_20260226/semantic_fallback_summary.json`, `logs/taskitem_runs/TEST_ONLY_sprint237_semantic_fallback_gate_fail_20260226/semantic_fallback_budget_gate.json`, `logs/taskitem_runs/TEST_ONLY_sprint238_native_gate_fail_20260226.json`, `logs/taskitem_runs/TEST_ONLY_sprint239_semantic_fallback_audit_20260226/semantic_fallback_summary.json`, `logs/taskitem_runs/TEST_ONLY_sprint240_retry_20260226_145631/00_summary.json`, `docs/sprint236_execution_tracker_2026-02-26.md`, `docs/sprint237_execution_tracker_2026-02-26.md`, `docs/sprint238_execution_tracker_2026-02-26.md`, `docs/sprint239_execution_tracker_2026-02-26.md`, `docs/sprint240_execution_tracker_2026-02-26.md` | `partial` | Sprint 236 added deterministic fallback-gap auditing with tool + constraint metadata. Sprint 237 added fallback-budget hard gate (`max-fallback-rate`) and produced expected fail/pass artifacts. Sprint 238 added native decomposition hard gate in pipeline (`min task count`, `min semantic signal count`) so weak native generation can be blocked before fallback masking. Sprint 239 added native reason enrichment and improved semantic signal density (`0 -> 6`). Sprint 240 added native decomposition retry with explicit minimum-task policy; on current sample retry attempted but did not improve depth (`2 -> 2`). | Native decomposition task-depth upgrade (increase native task granularity beyond 2) |
| GR-021 | Impact-specific native decomposition coverage not enforced uniformly | `docs/native_decomposition_impact_list_2026-02-26.md`, `tools/mcp/profiles/native_decomposition_impact_profiles.json`, `logs/taskitem_runs/TEST_ONLY_sprint241_fullstack_impact_20260226_150416/00_summary.json`, `logs/taskitem_runs/TEST_ONLY_sprint241_native_impact_aggregate_20260226/native_impact_coverage_aggregate.json` | `partial` | Sprint 241 added one-by-one impact profiles and a pipeline-integrated native impact coverage gate (`native_impact_coverage`). Current fullstack sample activates 7 profiles and all fail, proving enforcement catches shallow coverage but generator closure is still pending. | Implement profile-specific native decomposition expansion to satisfy failing profile constraints |
| GR-021 | Impact-specific native decomposition coverage not enforced uniformly | `docs/native_decomposition_impact_list_2026-02-26.md`, `tools/mcp/profiles/native_decomposition_impact_profiles.json`, `logs/taskitem_runs/TEST_ONLY_sprint241_fullstack_impact_20260226_150416/00_summary.json`, `logs/taskitem_runs/TEST_ONLY_sprint241_native_impact_aggregate_20260226/native_impact_coverage_aggregate.json`, `logs/taskitem_runs/TEST_ONLY_sprint242_impact_remediation_loop_20260226/remediation_loop_summary.json` | `partial` | Sprint 241 added one-by-one impact profiles and a pipeline-integrated native impact coverage gate (`native_impact_coverage`). Sprint 242 added profile-driven remediation synthesis and rerun loop. Current hard fullstack sample remains unchanged after one remediation pass (`failing_profile_count 7 -> 7`), so capability closure is still pending. | Implement profile-specific decomposition operators that synthesize concrete task bundles, not only constraints |
## What Was Covered Today (Sprints 175-184)

View File

@@ -204,3 +204,17 @@
- `logs/taskitem_runs/TEST_ONLY_sprint241_impact_gate_20260226_150404/06_native_impact_coverage.json`
- `logs/taskitem_runs/TEST_ONLY_sprint241_fullstack_impact_20260226_150416/00_summary.json`
- `logs/taskitem_runs/TEST_ONLY_sprint241_native_impact_aggregate_20260226/native_impact_coverage_aggregate.json`
## Sprint 242 Added (Same Day)
- Added remediation synthesis + rerun tooling for failing impact profiles:
- `tools/mcp/synthesize_native_impact_remediation_requirements.py`
- `tools/mcp/run_native_impact_remediation_loop.sh`
- Pipeline now accepts externally supplied extra normalized requirements:
- `WSTONE_EXTRA_NORMALIZED_REQUIREMENTS_FILE`
- summary packet: `extra_normalized_requirements`
- Dated remediation loop artifacts:
- `logs/taskitem_runs/TEST_ONLY_sprint242_impact_remediation_loop_20260226/remediation_loop_summary.json`
- `logs/taskitem_runs/TEST_ONLY_sprint242_impact_remediation_loop_20260226/extra_normalized_requirements.json`
- Current measured loop result on hard fullstack sample:
- `failing_profile_count 7 -> 7` (wiring complete, capability uplift still pending)

View File

@@ -0,0 +1,35 @@
# Sprint 242 Execution Tracker - 2026-02-26
## Scope
- `sprint242_plan.md`
## Implemented
Pipeline enhancement in `tools/mcp/run_sprint_taskitem_pipeline.sh`:
- Added `WSTONE_EXTRA_NORMALIZED_REQUIREMENTS_FILE` input.
- Validates file exists and contains JSON array.
- Appends extra requirements into `NORMALIZED_REQS` before generation.
- Summary now includes `extra_normalized_requirements`.
New remediation tooling:
- `tools/mcp/synthesize_native_impact_remediation_requirements.py`
- Converts failing profile checks into deterministic constraint requirements.
- `tools/mcp/run_native_impact_remediation_loop.sh`
- Runs baseline coverage pass.
- Synthesizes extra requirements from failing checks.
- Reruns pipeline with injected requirements.
- Emits before/after delta summary.
## Baseline Loop Artifact
- `logs/taskitem_runs/TEST_ONLY_sprint242_impact_remediation_loop_20260226/remediation_loop_summary.json`
- `logs/taskitem_runs/TEST_ONLY_sprint242_impact_remediation_loop_20260226/extra_normalized_requirements.json`
Observed result on fullstack sample:
- before: `failing_profile_count=7`
- after: `failing_profile_count=7`
- delta: `0` (remediation wiring is operational; generator capability uplift still required)
## Explicit Completion Signal
- Sprint 242: `DONE` (implemented + end-to-end remediation loop verified)