frankie-xu/threadport는 코딩 에이전트(coding agent)의 작업 상태를 저장해 어디서든 이어 쓰고 검증할 수 있게 만드는 프로젝트다. 2026년 10월 24일 커밋 981ab05은 이 프로젝트의 컨트롤 평면(control plane, 여러 에이전트 실행의 상태를 모아 관리하는 계층)에서 상태를 투영(projection)하는 과정의 무결성과 영수증(receipt, 작업 인계가 완료되었음을 남기는 기록)의 수명 주기 경계를 손질했다. 변경은 소스와 테스트를 합쳐 14개 파일, 추가 225줄과 삭제 29줄이며 의존성·스키마·버전·릴리스 변경은 없다.
내용을 보면 수정이 열 가지로 정리돼 있다. 컨텍스트 매니페스트(context manifest, 작업 인계에 필요한 맥락 목록)는 items와 constraints 구역 안에서 키가 겹치면 거부하고, 대상 세션 ID와 실행 ID는 둘 다 들어오거나 둘 다 없을 때만 유효하다. 영수증은 실제 인계 대상 ID에 묶여야 하며, 검색 영역과 컨트롤 평면은 하나의 엄격한 ISO 타임스탬프 스키마를 공유해 존재하지 않는 시각을 걸러낸다. 만료된 영수증으로는 다음 단계로 진행할 수 없고, 대기 중인 영수증은 읽을 때 만료만 계산해 보여준다. 런타임 전이 단계와 출처 값은 종료 처리로 넘기기 전에 검증한다. 이벤트 재생(임베디드 로그를 다시 펼쳐 상태를 복원하는 과정)에서는 첫 유효 매니페스트가 교체되지 않고, 충돌 경고도 뒤따르는 업데이트를 거쳐도 남는다. 커버리지(coverage) 집계는 일부만 확인된 항목을 전체 확인으로 바꾸지 않고, 프로토타입 이름을 키로 쓰는 사전(dict)은 물려받은 가상의 상태를 만들지 않도록 정리했다.
다만 증거는 로컬 확인까지다. 커밋에 포함된 계획 문서에는 Node 24.18.1과 macOS 환경에서 npm run check가 87개 파일·578개 테스트, npm run test:e2e가 11개 브라우저 흐름, npm run test:package이 274개 파일 검사를 통과했다고 적혀 있다. 같은 문서에는 Ubuntu·macOS·Windows 최종 헤드 CI 결과와 머지 SHA가 PR에 기록될 예정이라고만 적혀 있어 이 커밋 시점에는 세 운영체제 검증이 확인되지 않는다. 롤백도 계획만 세워 실제로 실행하지 않았다. 버전과 릴리스는 건드리지 않았고 라이선스와 별 수 등 저장소 기본 정보는 주어지지 않았으므로, 실제 배포 형태와 채택 상황까지 판단하려면 저장소 설명과 릴리스 이력을 따로 확인해야 한다.