구조 결함 2개 수정으로 IMP-35 popup 레버를 실동작화:
1. 트리거 모순 해소: 기존 T28.5d 트리거는 eligible_candidate_count==0 요구
— 후보가 '존재만' 해도 미발화인데 그 후보의 자동 소비는 T19d 로 금지
→ 영구 미발화 (mdx04 재현). salvage 정책 차단 터미널
(T19d layout / T28.5 font) 소진 시 overflow zone 을 대상으로 하는
두 번째 트리거 추가 (salvage_exhausted_overflow_pressure).
2. 높이 실감소: slide_base 는 partial 을 그대로 렌더 + <details> 추가일 뿐
(preview_text 는 렌더 경로 미소비 — popup 이 높이를 못 줄였음).
_trim_slot_payload_for_overflow 로 본문 라인을 예산만큼 트리밍 —
재귀 수집 (list-of-str + {text,indent} line-object, f13b 3중 중첩 포함),
라인 경계만, 슬롯당 최소 1라인, label/title 무접촉.
측정 피드백 루프 (최대 3회): 후보 렌더의 잔여 excess 로 추가 트림.
트리밍 전문은 popup body(raw_content 원문)에 보존 — 텍스트 무손실.
실전 검증:
- mdx04: RENDERED_WITH_VISUAL_REGRESSION → **PASS** (trimmed=6, coverage missing 0,
promoted). presentation_ready=False 는 density tight — #15 게이트 정직 판정
- mdx01/02/03/05: 오발화 0, 상태 불변
- SHA baseline 재캡처 (mdx04 final.html 정당 변경), 전체 게이트 1027 passed
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
"schema_version": 2,
|
||||
"axis": "IMP-89 89-a u4 — final.html SHA baseline captured via FULL run_phase_z2_mvp1 pipeline (flag OFF / default)",
|
||||
"description": "Frozen SHA-256 of `final.html` bytes (the artifact written to disk at src/phase_z2_pipeline.py:5994-5996) captured by running the full Phase Z pipeline end-to-end for each mdx 01-05 under PHASE_Z_B4_MAPPER_SOURCE=OFF. Under flag OFF the 89-a selector `_select_mapper_template_id(plan, T)` returns `T` verbatim, so the mapper input is byte-identical to the pre-89-a legacy call shape `map_mdx_to_slots(section, unit.frame_template_id)` — the rendered HTML and therefore the final.html SHA match the pre-89-a baseline. The u4 regression test runs the same pipeline shape under flag OFF and asserts SHA equality. Regenerate only when an upstream mapper/render/template delta is deliberately reviewed and accepted.",
|
||||
"captured_at_utc": "2026-07-03T03:39:01Z",
|
||||
"captured_at_utc": "2026-07-07T00:11:02Z",
|
||||
"renderer": {
|
||||
"entrypoint": "src.phase_z2_pipeline.run_phase_z2_mvp1",
|
||||
"write_site": "src/phase_z2_pipeline.py:5994-5996",
|
||||
@@ -40,9 +40,9 @@
|
||||
"04.mdx": {
|
||||
"mdx_file": "04.mdx",
|
||||
"run_id": "89a_baseline_04",
|
||||
"final_html_size_bytes": 40206,
|
||||
"sha256": "8ba35bc6642b0e651cd46b9216070bd49052b016807611d9771fd630ca7a2613",
|
||||
"pipeline_exit_code": 1
|
||||
"final_html_size_bytes": 42265,
|
||||
"sha256": "9c680c6f99c2e401f72edfdaf65e527e01263223eaaee70b9af75cb273ad3d3b",
|
||||
"pipeline_exit_code": null
|
||||
},
|
||||
"05.mdx": {
|
||||
"mdx_file": "05.mdx",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"schema_version": 1,
|
||||
"axis": "IMP-95 u8 — final.html SHA baseline captured via FULL run_phase_z2_mvp1 pipeline under PHASE_Z_B4_V4_EVIDENCE=OFF and PHASE_Z_B4_MAPPER_SOURCE=OFF (defaults)",
|
||||
"description": "Frozen SHA-256 of `final.html` bytes (production write site src/phase_z2_pipeline.py:5994-5996) for mdx 01/02/04/05 under PHASE_Z_B4_V4_EVIDENCE OFF. Under flag OFF, IMP-95 (u1~u7) is strictly no-op for final.html (planner branch falls through to legacy _select_frame at u3; u4/u5/u6 additive telemetry confined to placement_trace per the trace-only docstring at src/phase_z2_pipeline.py:86). The u8 regression test asserts SHA equality with these frozen values, so any future code change that drifts the flag-OFF render output produces a mismatch and breaks the test. mdx 03 is excluded per Stage 2 u8 scope (mdx 03 정비 LOCK). Regenerate only when an upstream delta is reviewed and accepted as the new pre-IMP-95 reference.",
|
||||
"captured_at_utc": "2026-07-03T00:02:27Z",
|
||||
"captured_at_utc": "2026-07-07T00:09:32Z",
|
||||
"renderer": {
|
||||
"entrypoint": "src.phase_z2_pipeline.run_phase_z2_mvp1",
|
||||
"write_site": "src/phase_z2_pipeline.py:5994-5996",
|
||||
@@ -32,9 +32,9 @@
|
||||
"04.mdx": {
|
||||
"mdx_file": "04.mdx",
|
||||
"run_id": "imp95_baseline_04",
|
||||
"final_html_size_bytes": 40206,
|
||||
"sha256": "8ba35bc6642b0e651cd46b9216070bd49052b016807611d9771fd630ca7a2613",
|
||||
"pipeline_exit_code": 1
|
||||
"final_html_size_bytes": 42265,
|
||||
"sha256": "9c680c6f99c2e401f72edfdaf65e527e01263223eaaee70b9af75cb273ad3d3b",
|
||||
"pipeline_exit_code": null
|
||||
},
|
||||
"05.mdx": {
|
||||
"mdx_file": "05.mdx",
|
||||
|
||||
Reference in New Issue
Block a user