untracked files on main: dceb101 feat(#63): IMP-34 R1 donor capacity measured bound (u1+u2)

This commit is contained in:
kmlee1 committed 2026-05-21 22:07:41 +09:00
commit 8f085a28d3
3220 files changed
+985495

No files matched your search

+1
View File
@@ -0,0 +1 @@
[{"id":17935,"html_url":"https://gitea.hmac.kr/Kyeongmin/C.E.L_Slide_test2/issues/7#issuecomment-17935","pull_request_url":"","issue_url":"https://gitea.hmac.kr/Kyeongmin/C.E.L_Slide_test2/issues/7","user":{"id":28,"login":"Kyeongmin","login_name":"","source_id":0,"full_name":"이경민","email":"kyeongmin@noreply.localhost","avatar_url":"https://gitea.hmac.kr/avatars/d883a35f9197b080b2a0c535c3f9357dcd5c7d40b3c42bd8f40218cb94609a8e","html_url":"https://gitea.hmac.kr/Kyeongmin","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2025-12-30T10:51:04+09:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":1,"username":"Kyeongmin"},"original_author":"","original_author_id":0,"body":"[Claude #1] Stage 1 — Structure analysis (IMP-07 B-2 Edited HTML → MDX reverse path)\n\nRead issue body + 0 prior comments. Independent local-codebase audit.\n\n## 1. File/folder structure relevant to this issue\n\n| Area | Path | Role |\n|---|---|---|\n| Frontend iframe + edit mode | `D:\\ad-hoc\\kei\\design_agent\\Front\\client\\src\\components\\SlideCanvas.tsx` | iframe render + edit-mode toggle (designMode + contenteditable). Already wired. |\n| Edit-state tracking | `Front\\client\\src\\pages\\Home.tsx` L58, L416, L555 + `Front\\client\\src\\components\\LeftMdxPanel.tsx` L33,54,294 | `hasPendingChanges` state + `onContentEdit` callback. Already wired. |\n| Frontend API client | `Front\\client\\src\\services\\designAgentApi.ts` L231–261 | Only `/api/run` (POST) + static `/data/runs/\u003cid\u003e/...` (GET). No reverse endpoint. |\n| Backend pipeline entry (HTTP-side) | `Front\\vite.config.ts` L218–391 | `vitePluginPhaseZApi()` — vite-middleware `/api/run` spawns `python -m src.phase_z2_pipeline {mdx_path} {run_id}`. |\n| Backend pipeline entry (Python) | `src\\phase_z2_pipeline.py::run_phase_z2_mvp1` L1899 | Accepts `mdx_path: Path` + `run_id`. Pipeline starts here. |\n| Stage 0 chained adapter (IMP-02) | `src\\phase_z2_pipeline.py::_stage0_chained_adapter` L245–379 | env-gated normalize + section-num reconstruction + `id_reconstruction_log`. |\n| MDX normalizer | `src\\mdx_normalizer.py::normalize_mdx_content` L395, `validate_stage0` L447 | string → dict (clean_text, title, images, popups, tables, sections). |\n| Frame slot markers | `templates\\phase_z2\\families\\*.html`, `templates\\phase_z2\\frames\\*.html` | every frame carries `data-frame-id`, `data-template-id`, most cells carry `data-frame-slot-id` (verified L228–285 of bim_dx_comparison_table, etc.). |\n| Pipeline → frontend static export | `scripts\\sync_phase_z_run_to_frontend.py::sync_run` L66–105 | One-way copy of artifacts only. |\n| 22-step pipeline reference | `docs\\architecture\\PHASE-Z-PIPELINE-OVERVIEW.md` | Step 1 ✅, Step 2 ⚠ partial, Step 22 ❌ missing (\"UI 영역 — 현재 범위 외\"). |\n\n## 2. What exists vs. what the issue assumes exists\n\n| Issue assumes | Reality | Evidence |\n|---|---|---|\n| frontend produces \"edited HTML (iframe contentDocument outerHTML)\" | edit-mode mutates DOM in-place via `designMode + contenteditable`, but no `outerHTML` capture and no POST to backend | `Front\\client\\src\\components\\SlideCanvas.tsx` L100–145; comment at L264 verbatim: `\"변경은 frontend 만, backend 반영 미구현\"` |\n| backend has an HTML-receiving endpoint | None. `src\\main.py` defines only `/api/health`, `/api/generate`, `/`. The actual MDX-ingest endpoint is the vite-middleware `/api/run` in `Front\\vite.config.ts` L228, not a FastAPI route. | grep `@app.(get|post)` returns 3 hits, all in `main.py`. No `/api/edit`, `/api/connect`, `/api/save`, `/api/html_to_mdx`, `/api/reingest`. |\n| 글벗 `fmt_slide.html_to_slide_mdx` is referenced | Not present in this repo. grep `html_to_mdx|fmt_slide|slide_to_mdx|html2mdx` over `**/*.{py,ts,tsx,js}` = 0 hits. Must be ported from 글벗 OR re-implemented. | grep result empty. |\n| \"pipeline 재진입\" = re-run from Step 1 | `run_phase_z2_mvp1(mdx_path, run_id)` only accepts a file path. Re-entry requires writing patched MDX to `samples\\uploads\\` and re-spawning the pipeline (same path the vite middleware already uses). | `vite.config.ts` L285 writes to `UPLOADS_DIR`, L303 spawns python. |\n| \"step02 정합 + visual_check 통과\" guardrail | IMP-02 emits `id_reconstruction_log` with `raw_heading` / `raw_heading_inline` / `order_fallback` priority chain. For reverse-path stability, edited content must NOT alter `## N. Title` headings — otherwise section IDs (`03-1`, `03-2` …) shift. | `src\\phase_z2_pipeline.py` L245–379; IMP-02 verification thread on issue #2 comment #5. |\n\n## 3. Reverse data flow as it would have to be implemented\n\n```\n[edit] iframe contentDocument (SlideCanvas L121–127)\n │ ← onContentEdit fires (L130) → Home.hasPendingChanges\n ▼\n[capture] outerHTMLLine truncated