Goal Anchor
- Outcome: 최근 구현과 테스트로 확인된 공통 프로토콜 및 책임 경계를 정본 계약으로 명시하여, 후속 변경에서 유지할 의미와 아직 열려 있는 정책을 구별할 수 있게 한다.
- Done: JSONDocument의 기존 Stable 계약을 참조하고, Editing의 상태·관찰·실패 복구·History 소유권과 기존 플랫폼/도메인 책임 경계를 규범 문서 및 실제 검증 증거에 연결한다. 확정 범위와 변경 시 지켜야 할 호환성 기준이 발견 가능하며 관련 검사와 테스트가 통과한다.
- Don't: runtime 동작, public API, wire 형식, package 배치를 변경하지 않는다. Hands별 Copy/Paste·전체 선택·단축키·지원 기능 정책, 전체 Hands의 Stable admission이나 외부 상호운용성을 확정하지 않는다. 새 범용 editor·command bus·registry를 도입하지 않는다.
위임 범위와 근거
사용자는 공통 문서 접점, 문서/선택/History의 구분, 일관된 편집 결과, 구현 교체 경계, 플랫폼 입력 및 도메인 의미의 소유권에 대한 설명 뒤 **“굳힐수 있는걸 굳히자”**라고 실행을 위임했다. 이번에는 이미 제공되는 공통 의미의 확정과 검증에 한정한다.
- JSONDocument v3의 여섯 member와 기존 Stable profile은 유지한다.
- EditingSession의 값 동등성, snapshot 소유권, 재진입 알림 순서, 외부 selection mapping/reconciliation 및 오류 복구를 기존 구현·회귀 테스트와 연결한다.
- local inverse History와 명시적으로 주입하는 EditingHistory를 구별하며, 작업 결과의 귀속과 복원 실패 시 재시도 경계를 명시한다.
- 기존 DOM lifecycle 및 책임 배치 정본을 참조하여 플랫폼 입력, 도메인 연산, Host 조립의 소유권을 유지한다. 책임 지도와 필수 호출 계층을 혼동하지 않는다.
- 각 규범은 적용 범위와 owner, 검증 증거를 갖는다. 구현 세부사항이나 아직 미검증인 profile 선택은 동결하지 않는다.
기존 작업과의 관계
#725 / #726은 Hands별 편집 문법을 도출하는 설계 초안이다. 그 이슈와 문서는 인계받거나 수정하지 않는다. #729 / #730, #731 / #732, #733 / #734의 진행 중인 동작 수정이나 API 확장을 이번 확정의 완료 증거로 포함하지 않는다.
현재 사용자 체크아웃에는 미커밋 문서 작업이 있다. 해당 상태를 보존하고 별도 clean checkout의 최신 origin/main을 기준으로 작업한다.
검증
- 각 규범과 현행 public API, owner 및 행동 테스트를 대조한다.
- 관련 Core conformance, Editing 및 History/lifecycle 검증을 실행한다.
- 공개 문서 검사, 링크/증거 연결 검사, 전체 diff의 범위와 모순을 확인한다.
- 문서와 검증 연결만 변경하는 PR로 제공한다. merge는 포함하지 않는다.
Goal Anchor
위임 범위와 근거
사용자는 공통 문서 접점, 문서/선택/History의 구분, 일관된 편집 결과, 구현 교체 경계, 플랫폼 입력 및 도메인 의미의 소유권에 대한 설명 뒤 **“굳힐수 있는걸 굳히자”**라고 실행을 위임했다. 이번에는 이미 제공되는 공통 의미의 확정과 검증에 한정한다.
기존 작업과의 관계
#725 / #726은 Hands별 편집 문법을 도출하는 설계 초안이다. 그 이슈와 문서는 인계받거나 수정하지 않는다. #729 / #730, #731 / #732, #733 / #734의 진행 중인 동작 수정이나 API 확장을 이번 확정의 완료 증거로 포함하지 않는다.
현재 사용자 체크아웃에는 미커밋 문서 작업이 있다. 해당 상태를 보존하고 별도 clean checkout의 최신 origin/main을 기준으로 작업한다.
검증