Private
Public Access
Campaign: address the parent code_path_audit_20260607 Finding 1 (CRITICAL)
Metadata 4.01e22 effective codepaths via 3 SSDL techniques.
3 children, sequential, with budget gates:
1. metadata_nil_sentinel_20260624 (>= 10% drop): introduce
NIL_METADATA sentinel + migrate 6 nil-check functions.
2. metadata_generational_handle_20260624 (>= 20% drop,
BLOCKED_BY 1): wrap Metadata in (index, generation) handle;
collapse lifetime branches to 1 lookup + 1 cmp.
3. metadata_field_cache_20260624 (>= 30% drop, BLOCKED_BY 2):
MetadataFieldCache keyed by (handle.index, field_name);
123 string-keyed entry.get('key', default) sites become
cache lookups.
Each child has its own spec/plan/metadata/state. Budget gate
after each child: re-measure effective codepaths; if drop < threshold,
PAUSE the campaign and report to user.
End-of-campaign TRACK_COMPLETION captures the cumulative reduction
vs the 4.01e22 baseline. Deferred follow-up: apply the same
3 SSDL primitives to the 4 other dict[str, Any] aliases
(FileItem, CommsLogEntry, HistoryMessage, ToolDefinition, ToolCall).
16 files committed: 4 directories x 4 files each (spec, plan,
metadata, state).
68 lines
2.9 KiB
JSON
68 lines
2.9 KiB
JSON
{
|
|
"track_id": "metadata_generational_handle_20260624",
|
|
"name": "Child 2: Metadata Generational Handle",
|
|
"track_type": "campaign_child",
|
|
"parent_campaign": "metadata_ssdl_defusing_20260624",
|
|
"created_date": "2026-06-24",
|
|
"branch": "master",
|
|
"depends_on": ["code_path_audit_20260607", "metadata_nil_sentinel_20260624"],
|
|
"blocks_within_campaign": ["metadata_field_cache_20260624"],
|
|
"scope": {
|
|
"new_files": [
|
|
"conductor/tracks/metadata_generational_handle_20260624/spec.md",
|
|
"conductor/tracks/metadata_generational_handle_20260624/plan.md",
|
|
"conductor/tracks/metadata_generational_handle_20260624/metadata.json",
|
|
"conductor/tracks/metadata_generational_handle_20260624/state.toml",
|
|
"tests/test_metadata_generational_handle.py",
|
|
"docs/reports/TRACK_COMPLETION_metadata_generational_handle_20260624.md"
|
|
],
|
|
"modified_files": [
|
|
"src/aggregate.py (MetadataHandle + Registry types + lifetime-check migrations)",
|
|
"src/ai_client.py (lifetime-check migrations; specific files TBD by Tier 2)",
|
|
"conductor/tracks.md",
|
|
"docs/reports/campaign_measurements_20260624.md"
|
|
],
|
|
"deleted_files": []
|
|
},
|
|
"estimated_effort": {
|
|
"method": "scope (per workflow.md §Tier 1 Track Initialization Rules). NO day estimates.",
|
|
"phase_1": "1 task: 4 behavioral tests",
|
|
"phase_2": "1 task: MetadataHandle + Registry + lifetime-check migrations",
|
|
"phase_3": "1 task: 6 VCs + budget gate + TRACK_COMPLETION + state + tracks.md"
|
|
},
|
|
"verification_criteria": [
|
|
"VC1: MetadataHandle + MetadataHandleRegistry exist",
|
|
"VC2: Production code uses handle + registry at entry points",
|
|
"VC3: Behavioral test exists and passes",
|
|
"VC4: Budget gate met (drop >= 20% vs post-child-1 measurement)",
|
|
"VC5: Full test suite remains green (11/11 tiers PASS)",
|
|
"VC6: 4 audit gates remain clean"
|
|
],
|
|
"known_issues": [],
|
|
"deferred_to_followup_tracks": [],
|
|
"regressions_and_pre_existing_failures": [],
|
|
"pre_existing_failures_remaining": [],
|
|
"risk_register": [
|
|
{
|
|
"id": "risk-1",
|
|
"description": "The handle breaks code that expects raw Metadata",
|
|
"likelihood": "medium",
|
|
"impact": "Production code that does entry['key'] directly fails",
|
|
"mitigation": "Handle is a wrapper; consumers can extract raw value via .value; behavioral test verifies backwards-compat"
|
|
},
|
|
{
|
|
"id": "risk-2",
|
|
"description": "The registry's lookup is not actually O(1)",
|
|
"likelihood": "low",
|
|
"impact": "Cache pattern in child 3 doesn't work as expected",
|
|
"mitigation": "Registry uses dict[int, int]; lookup is O(1) by construction"
|
|
},
|
|
{
|
|
"id": "risk-3",
|
|
"description": "Budget gate fails (drop < 20%)",
|
|
"likelihood": "low",
|
|
"impact": "Child 2 cannot ship; campaign pauses",
|
|
"mitigation": "3466 branch points include lifetime checks; replacing with handle lookup should drop the count"
|
|
}
|
|
]
|
|
} |