2026-09-04
요약 (AI 작성)
원격 감시를 정직하게 만든 날입니다. macOS 원격은 «감시하는 척» 하고 있었습니다 — 못 하면 못 한다고 말하게 하고(RW6), 폴링 설계를 쓰고(RW7), 한도에서 포기 대신 폴링으로 내려가며(RW7d), 폴링 다이제스트가 «화면의 숫자» 까지 보게 했습니다. filter 는 «닫으면 안 되는» 문이라 선을 그었습니다. 편집기 Term 은 자기 키 컨텍스트를 얻어 전역에 못 넣던 chord 를 그 Term 안에서 세우고, ⌘D 를 확정 자리로 옮겼습니다(비교 뷰에서는 전역으로).
모바일은 U2 전환 손짓을 «덮개» 로 정하고 돌아온 세션이 빈 화면부터 다시 쌓지 않게 했습니다(U2a). session-host 는 쓸 수 있는 backend 가 있으면 래치를 풀고(붙어 있는데도 원격으로 안 열렸다), baseline app authority·preparation 을 orchestrate 하고, candidate prerequisite transaction·product·publication product·trusted source directory 를 세웠습니다. 5초 마감을 확정하고 근거를 적었고(옛 문장은 결정이 아니었다), 셸 단계가 게이트를 조용히 깨는 것을 원장으로 막았으며, 같은 버전을 두 번 빌드하면 마지막 한 줄이 릴리스를 죽이던 CI 도 고쳤습니다. @ohah/pdf 는 Type3 글리프 스트림을 쪽 단위로 들고 있게 했습니다.
커밋
ohah/maru
- feat(session-host): own candidate release ordering
- test(session-host): require candidate release transaction
- docs(session-host): define candidate release transaction
- refactor(mobile): 컨트롤 축의 «정책» 을 host 에서 코어로 옮긴다
- fix(scm): 판 번호를 박아 둔 «세 번째» 자리를 고친다
- feat(scm): 한도에서 포기 대신 폴링으로 내려간다 (RW7d)
- feat(session-host): add trusted source directory owner
- test(session-host): require trusted source directory owner
- docs(session-host): define trusted source directory owner
- feat(session-host): bind release Zig authority
- test(session-host): pin release Zig authority
- docs(session-host): define release Zig authority
- docs: 5초 마감을 확정하고 그 근거를 적는다 — 옛 문장은 결정이 아니었다
- docs(control-plane): §4a 가 정한 두 가지가 코드와 어긋나 있었다
- fix(session-host): 쓸 수 있는 backend 가 있으면 래치를 푼다 — 붙어 있는데도 원격으로 안 열렸다
- fix(ci): 떼어낸 main executable 에 건 codesign 검증이 릴리스를 매번 막았다
- fix(build): 원장이 첫날에 하나를 잡았다 — baseline-child-paths 를 가린다
- fix(build): 셸 단계가 게이트를 조용히 깨는 것을 원장으로 막는다
- feat(scm): 감시를 포기했으면 화면이 말한다 (RW6)
- docs(mobile): U2 세 슬라이스를 완료로 적고 남은 것을 실기로 좁힌다
- feat(mobile): 든 세션에 상한과 버림을, 목록에 그 표시를 (U2b·U2c)
- feat(session-host): bind baseline app authority
- test(session-host): require bounded baseline app binding
- docs(session-host): define baseline app authority binding
- fix(scm): macOS 원격은 «감시하는 척» 하고 있었다 — 못 하면 못 한다고 말한다
- fix(agent): 화면이 어느 규칙으로 그 상태를 냈는지 남긴다 — 물을 수단이 없었다
- feat(session-host): orchestrate baseline preparation
- test(session-host): require baseline preparation transaction
- docs(session-host): define baseline preparation transaction
- fix(mobile): 나가는 자리가 둘인데 하는 일이 달랐다 — 뒤로가기를 그리고 길을 하나로 (U2)
- fix(mobile): 원격 화면에서 나갈 자리가 없었다 — 덮개로 바꾸려면 돌아갈 수 있어야 한다 (U2)
- fix(scm): 「잠시 멈춤」과 「놓아줌」을 가른다 — 도크 토글이 RW5 를 풀었다
- feat(mobile): 다른 세션을 봤다 돌아와도 빈 화면부터 다시 쌓지 않는다 (U2a)
- docs(mobile): U2 의 전환 손짓을 «덮개» 로 정하고 슬라이스를 쪼갠다
- feat(session-host): compose baseline production runner
- test(session-host): specify baseline production runner
- docs(session-host): define baseline production runner
- feat(session-host): own candidate publication transaction
- test(session-host): require candidate publication transaction
- docs(session-host): define candidate publication transaction
- docs(session-host): 기본값 전환 완료를 문서에 반영하고 값 서술을 단일 출처로 되돌린다
- fix(scm): filter 는 «닫으면 안 되는» 문이다 — 선을 긋고 못 박는다
- fix(render): 판정자의 lock 관용구를 맞춘다 — mutex.lock 은 오류 합집합이다
- fix(render): sync(2026) 어긋남의 원인은 게이트가 아니라 «청크 통째 적용»이었다
- docs(scm): RW7 설계 — macOS·BSD 를 폴링으로 되살린다
- feat(session-host): own candidate prerequisite transaction
- test(session-host): require candidate prerequisite transaction
- docs(session-host): define candidate prerequisite transaction
- feat(session-host): wire baseline production transaction
- test(session-host): require baseline production transaction
- docs(session-host): define baseline production transaction
- feat(input): 편집기 Term 키 컨텍스트 — 전역에 못 넣던 chord 를 그 Term 안에서 세운다
- test(session): 기본값 전환이 드러낸 프로세스 전역 누수를 걷는다
- feat(session): keep-alive 기본값을
true로 전환한다 — 영속 터미널이 기본이 된다 - feat(session-host): 소켓이 끊겨 닫은 것과 앱이 닫은 것을 가른다
- feat(scm): macOS·BSD 원격을 폴링으로 되살린다 (RW7a·b·c)
- feat(session-host): share candidate release deadlines
- test(session-host): require shared release deadlines
- docs(session-host): define shared release deadline entrypoints
- feat(input):
⌘D를 확정 자리로 옮긴다 — 비교 뷰에서는 전역으로 돌려준다 - feat(session-host): wire candidate release product owner
- test(session-host): require candidate release product owner
- docs(session-host): define candidate release product owner
- fix(scm): status 마다 도는 실행 벡터를 닫는다 — core.fsmonitor
- feat(session-host): bind candidate publication product
- test(session-host): require candidate publication product owner
- docs(session-host): define candidate publication product owner
- feat(session-host): own candidate prerequisite product
- test(session-host): require candidate prerequisite product owner
- docs(session-host): define candidate prerequisite product owner
- fix(ssh): 세션을 바꿀 수가 없었다 — 원인이 셋이고 셋 다 「빠른 여닫기」에서 터진다
- docs(mobile): U2 를 실기로 확인하고, 그 회차가 찾은 「전환이 막힌다」를 적는다
- fix(scm): 폴링 다이제스트가 «화면의 숫자» 까지 본다 — §3 이 이미 잰 구멍
- fix(ci): 같은 버전을 두 번 빌드하면 마지막 한 줄이 릴리스를 죽였다
- feat(session-host): add candidate release bootstrap contract
- test(session-host): require candidate release bootstrap contract
- docs(session-host): define candidate release bootstrap contract
- feat(session-host): add candidate release driver
- test(session-host): require candidate release driver
- docs(session-host): define candidate release driver
ohah/pdf
- chore: 실수로 커밋된 찌꺼기 x 를 지운다
- perf: 파싱에서 파일을 통째로 훑던 두 자리를 걷어낸다
- perf: Type3 글리프가 낸 명령을 받아 적어 두고 되풀이한다
- perf: Type3 글리프 스트림을 쪽 단위로 들고 있는다