Repository navigation
Conversation
페어링한 기기끼리 고른 항목을 맞추는 kc sync 의 설계 초안. Opus·codex 설계안을 따로 받아 종합했고, logi(1pass.dev) 재사용 점검과 codex 공격자 관점 리뷰 두 차례를 반영했다. 구현 전 사용자 검토용. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
sync rm 전에 보낸 늦은 제안을 받는 쪽이 세대로 걸러낸다(설계 §2.1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 수렴(6행)은 두 head 만 기록한다. 같은 값을 보낸 뚫린 기기가 다른 기기의 미래 vid 를 lineage 에 끼워 넣어 그 변경을 '낡음'으로 만드는 공격을 막는다. - 승인된 resolve 는 parents 를 lineage 에 넣는다. 승인됐지만 head 가 맞지 않는 Retire 는 충돌이 아니라 보류. - SlotBudget::set_items·prepare_hold, 피어 하나만 범위에서 빼는 Generations API. - kc-proto: Offer.lineage ≤64, Change.parents ≤65, Digest·Ack 이름 중복 거부. - Windows Hello 는 콘솔 창 핸들로 RequestVerificationForWindowAsync 를 쓴다. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Hello 전달 실패 시 다시 보낸다(상대와 영구 정지 방지) - --on-conflict overwrite 게이트 복원, sync.json 손상이 get·exec 를 막지 않게 - 로컬 확인 사유에 무슨 일이 일어나는지 적는다, sync add 는 고른 뒤 확인 - legacy 경로가 충돌 정책을 따르고 거절은 그 항목만 보류 - review 거절도 같은 한 번의 확인에 묶는다, 표시 지문을 kc get --fingerprint 와 통일 - 비활성·차단 기기의 제안 무시, 충돌 중 제안은 후보로 - Sync 본문 재전송 검사, 용량·바인딩 실패를 비치명화, 슬롯 누수 정리 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 충돌 중인 항목에 온 Offer 는 범위 안 기기·같은 등록 세대일 때만 충돌 후보로. 그 밖에는 제안으로 둔다(범위 밖 기기가 후보 슬롯을 밀어내는 것을 막음). - 일시 전달 실패는 별도 플래그(delivery_failed)로, 모든 상대에 닿으면 해제. - 축출된 제안도 거절과 같이 vid 바인딩을 정리한다. - review 확인 문구에서 빈 절을 뺀다. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
수락 중인 제안이 자기 기준점 예약으로 축출되면 그 vid 바인딩이 삭제 예약된 채 head 가 되어, 다음 sync 가 상태 손상으로 실패할 수 있었다(codex 리뷰 P1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
축출된 후보가 바로 그 슬롯을 예약 중인 수락 대상일 수 있어, unbound 표시가 사라지면 같은 vid 의 정상 변경이 위반으로 격리된다(codex 재리뷰 P1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
충돌 중에 들어온 제안·보류 변경을 review 로 받아들이면 다른 충돌 후보가 버려졌다(codex 리뷰 P1). 잠금 안에서 막고 resolve 를 안내한다. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
AI-Dico
marked this pull request as ready for review
October 13, 2026 09:38
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
설계:
docs/design/sync.md(v0.4, #10 의 설계 커밋 포함).kc sync명령 일습, 기존 명령의 sync 정책, 로컬 확인 L(Touch ID·Windows Hello·polkit)리뷰: fable-advisor 4회(Wave 1·엔진 A/B·수정 확인), codex(gpt-6-astra high) 4회.
🤖 Generated with Claude Code