Files
C.E.L_Slide_test2/tests/regression/fixtures/89a_pre_baseline_sha.json
T
KyeongminandClaude Opus 4.8 63f4479b05 feat(#16): overflow 압력 기반 popup escalation — mdx04 최초 PASS (#98 추천 3)
구조 결함 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>
2026-07-07 09:17:32 +09:00

57 lines
2.4 KiB
JSON

{
"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-07T00:11:02Z",
"renderer": {
"entrypoint": "src.phase_z2_pipeline.run_phase_z2_mvp1",
"write_site": "src/phase_z2_pipeline.py:5994-5996",
"artifact_relpath": "<RUNS_DIR>/<run_id>/phase_z2/final.html"
},
"mdx_batch": [
"01.mdx",
"02.mdx",
"03.mdx",
"04.mdx",
"05.mdx"
],
"mdx_files": {
"01.mdx": {
"mdx_file": "01.mdx",
"run_id": "89a_baseline_01",
"final_html_size_bytes": 38731,
"sha256": "749ebb626e284a62d37b5be32af97c61ae2a5b8d4226d1c3fa90f04c843d9fef",
"pipeline_exit_code": null
},
"02.mdx": {
"mdx_file": "02.mdx",
"run_id": "89a_baseline_02",
"final_html_size_bytes": 42127,
"sha256": "835d67eb7003bbcc55f3ea9ea73e6c781bb3b51d021a860200876c1d93cecfd2",
"pipeline_exit_code": null
},
"03.mdx": {
"mdx_file": "03.mdx",
"run_id": "89a_baseline_03",
"final_html_size_bytes": 40217,
"sha256": "44abaaf8fd0737002188c7af0ae3bd0dd281b313f74b8a50ddfd4aa0ddef3eb7",
"pipeline_exit_code": null
},
"04.mdx": {
"mdx_file": "04.mdx",
"run_id": "89a_baseline_04",
"final_html_size_bytes": 42265,
"sha256": "9c680c6f99c2e401f72edfdaf65e527e01263223eaaee70b9af75cb273ad3d3b",
"pipeline_exit_code": null
},
"05.mdx": {
"mdx_file": "05.mdx",
"run_id": "89a_baseline_05",
"final_html_size_bytes": 36844,
"sha256": "397f238df2d23c7f3371d9032de5fbae4fd37aca116bb8b62e8fd36c4255c26d",
"pipeline_exit_code": null
}
},
"total_files": 5
}