fix(M02): 흐름도 restParts — 쉼이 그 상자에 걸렸나는 link 와 무관 · 빈 값 판정은 내보내는 알약 값만(PLAN 35-9 브레인 재검증)

- 지반 견본(토사) 꼴 시험: 흐림 = 브레이커로 깨기 하나 · 1㎥ 경비 · 경비는 안 흐림
- 시험 test_m02_df_diagram_parts.py 7 통과 · DataFlow 전부 검사 초록

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ly2oHAaTDYRjcniAmHR81z
This commit is contained in:
2026-10-01 21:21:30 +09:00
co-authored by Claude Opus 5.5
parent 932ec987dd
commit 2c134b440f
2 changed files with 103 additions and 2 deletions
@@ -322,8 +322,9 @@ export function restParts(
for (const b of lg.boxes) {
const incoming = lg.links.filter((l) => l.to.box === b.id);
const allRest = incoming.length > 0 && incoming.every((l) => links.has(l.id));
const outs = Object.values(values[b.id] ?? {});
const hit = rests.some((k) => !k.link && k.box === b.id);
// 내보내는 알약 값만(들어온 값은 빼고) · 쉼이 그 상자에 걸렸나(Eval 쉼 줄은 link 가 늘 있음)
const outs = portsOut(b).map((p) => values[b.id]?.[p.name]);
const hit = rests.some((k) => k.box === b.id);
if (allRest || (hit && outs.every(empty))) boxes.add(b.id);
}
return { links, pills, boxes };