When the missing-create path stores a RoadmapRevision, a later reconcile push
(after the authoring roundtrip adds the Plane identity to the milestone file)
conflicts with ReconcileCreationCycle's revision guard because the new push has
a different revision than the original missing-create push.
Since missing-create has no completed projection steps, a future reconcile on a
different revision should be allowed to resume. Omit RoadmapRevision from the
missing-create job args so the persisted row stores NULL and the revision guard
does not block the subsequent reconcile push.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When a milestone file's provider identity block omits Tenant and Project
(both are optional since MatchDevelopMilestone fills them from expected),
the bridge's FetchWorkItem call fails with ErrInvalidInput because
planeWorkItemRef requires all three: tenant, project, id.
Fill in missing Tenant/Project from BridgeConfig before building the ref,
mirroring the missing-create path which always uses b.cfg.Tenant/Project.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- roadmapsync pipeline에 retry 로직 및 개발 일치 검증 로직 추가
- gitosync scanner에 slug 재조정 및 plane 매칭 로직 강화
- roadmap sync identity 관리를 위한 migration(00009) 및 SQL 쿼리 추가
- milestone parser 테스트 및 retry 테스트 보강
- agent-ops 문서(PHASE, SDD, milestones) 갱신
- agent-task archive 및 작업 디렉터리 추가
- authoring: identity write 도메인 구현 (identity_write.go)
- authoring: request/result 도메인 정리 및 테스트 개선
- scheduler: job/river 구조 리팩토링 및 테스트 보완
- gitosync: bridge/scanner 테스트 개선
- roadmap: plane-origin-authoring-roundtrip-sync 마일스톤 업데이트
- gitoevents: Gito 이벤트 클라이언트 및 이벤트 모델 구현
- gitosync: 브리지, 러너, 스캐너 구현으로 브랜치 이벤트 및 작업 항목 동기화
- config: 새 설정 항목 추가 및 테스트
- roadmapsync: plane projection 수정 및 테스트
- agent-task: G07 관련 계획 및 코드 리뷰 로그 추가
- roadmap: PHASE 및 마일스톤 업데이트
- contracts: Flutter core API 후보 노트 업데이트