No description
High 둘은 실제 유실 경로였다. - withheld를 페이로드로 그대로 넘기면 재진입에 깨진다. 전파 중 Observer가 Set을 불러 게이트에 재진입하면 중첩 전파가 끝나며 table.clear가 돌아 바깥 전파의 남은 갈래가 빈 집합을 받는다. 전파 직전에 새 테이블로 스왑해 배치를 떼어내고 그 배치를 페이로드로 넘기는 것으로 수정. - OffWithoutEmit()이 집합을 안 비웠다. Dispatch.drive의 배치 게이팅이 매 프레임 On() -> OffWithoutEmit()을 돌므로 집합이 단조 증가하고(weak 설계와도 충돌) 나중에 아무 소스나 통과할 때 폐기분이 같이 실려 나간다. 그 경로도 비우도록 확정하고 withheld를 weak key로 명시. 나머지 수정 셋: - "무조건 withheld에 넣는다"가 수신 규칙 1~3을 건너뛴다는 뜻으로 읽히던 것을 "정책의 통과/유보와 무관하게"로 명시(그대로 두면 다이아몬드에서 Throttle 정책이 두 번 돌아 유령 trailing emit이 나간다) - luau-test/STATUS.md의 "런타임 12개"가 이미 나간 04/10/19를 포함한 옛 총계에서 이어져 온 수라 실제(9건)와 안 맞던 것 - followup D절 색인 표가 삭제된 research/ 두 문서를 현재형으로 서술하던 것 열린 항목으로 승격 둘(question.md의 "남은 것은 사용자 판단이 아니다"도 정정): - Gate 재진입 계약 — 스냅샷으로 유실은 막았으나 정책 안 재귀 호출 계약은 미정 - 소스 없는 emit(빈 배치) — 정책이 상류 신호와 무관하게 emit()을 부르면 빈 배치가 나가 하류가 조용히 삼킨다. Effect(fn, ...deps) 설치 구간 억제 용례가 정확히 이 모양이라 그대로는 성립하지 않음. 권고는 "빈 배치 = 무조건 통지" 처리 전량은 round5-followup.md의 T절. doc-check.py ERROR 0. Co-authored-by: qwreey <me@qwreey.moe> Claude-Session: https://claude.ai/code/session_01TiW21rnti9SbLgF6twtn6D |
||
|---|---|---|
| .claude | ||
| .vscode | ||
| quad-base | ||
| quad-roblox | ||
| quad-types | ||
| type-version-check | ||
| .gitignore | ||
| .luaurc | ||
| CLAUDE.md | ||
| default.project.json | ||
| HUMAN_TODO.md | ||
| mise.toml | ||
| pesde.lock | ||
| pesde.toml | ||
| ROADMAP.md | ||
| SAFETY.md | ||