Files
llm-wiki/raw/branch-notes/feature-fenced-lock-coordination-contract.md

8.1 KiB

title, source_type, status, branch, parent_branch, related_projects, governing_docs, tags, created, target_merge, status_label, id, kind, project, work_item, inherits, refines, overrides, depends_on, imports, delegates, accepts_delegations, contract_packet
title source_type status branch parent_branch related_projects governing_docs tags created target_merge status_label id kind project work_item inherits refines overrides depends_on imports delegates accepts_delegations contract_packet
branch / feature-fenced-lock-coordination-contract branch-note raw feature-fenced-lock-coordination-contract
ca-skeleton
raw/project-notes/ca-skeleton-operational-contract
branch
ca-skeleton
lock
fencing
leader-election
coordination
2026-07-28 in-progress BR-CA-SKELETON-OPERATIONAL-CONTRACT-071 project-work-item ca-skeleton-operational-contract WI-CA-SKELETON-OPERATIONAL-CONTRACT-071
DEC-CA-SKELETON-OPERATIONAL-CONTRACT-LOCK-FENCING-001@1
DEC-CA-SKELETON-OPERATIONAL-CONTRACT-SCHEDULER-LOCK-001@1
WI-CA-SKELETON-OPERATIONAL-CONTRACT-060
1

branch: feature-fenced-lock-coordination-contract

Layer: raw/branch-notes/ — 단일 브랜치의 TODO·결정·진행 기록. 머지/종료 후 verified 결과는 /ingestwiki/projects/에 추출. 원본은 raw에 영구 보관. status_label: in-progress | review | merged | abandoned 스캐폴딩 상태 — 결정(D-row)·구현 가이드는 비어 있다. /branch-spec feature-fenced-lock-coordination-contract 로 채운다.

부모 (필수)

분해 근거: docs/superpowers/specs/2026-07-28-ca-skeleton-production-capability-feature-decomposition-design.md §4.2 — 능력 계약 (Tier C). 본 branch 는 project §8.0 WI-CA-SKELETON-OPERATIONAL-CONTRACT-071 의 실행 단위다.

형제 branch (같은 부모의 다른 자식 — 인접 영역):

브랜치 계약 패킷

project Work Item 에서 내려온 실행 계약의 snapshot. 여기에는 pinned pointer + 1줄 요약 + branch 적용점만 쓰고 상세를 복제하지 않는다.

  • 생성 시 프로젝트 개정: 1
  • 패킷 스키마: contract_packet: 1
  • 완료 조건: fencing token 단조성·high watermark 거부·lease-lost 신호 test 가 통과한다

상속한 프로젝트 결정

Decision Ref Project Summary Branch Application Source
DEC-CA-SKELETON-OPERATIONAL-CONTRACT-LOCK-FENCING-001@1 DistributedLockPort는 efficiency mutex로 고정하고 correctness가 필요한 경로는 별도 FencedLockPort와 보호 자원의 high watermark 거부로만 보장한다 /branch-spec 에서 적용 경계 작성 raw/project-notes/ca-skeleton-operational-contract
DEC-CA-SKELETON-OPERATIONAL-CONTRACT-SCHEDULER-LOCK-001@1 single-instance가 default이며 multi-instance scheduler/outbox는 DB advisory lock을 사용한다 /branch-spec 에서 적용 경계 작성 raw/project-notes/ca-skeleton-operational-contract

브랜치 지역 결정

/branch-spec 단계에서 작성한다. 근거 없이 추측해 채우지 않는다.

Decision ID Decision Relation Supporting Claims Status

선언한 예외

Override ID Overrides Reason Approval Status

가져온 프로젝트 계약

Ref Owner 요약 Branch 적용

목표

  • WI-CA-SKELETON-OPERATIONAL-CONTRACT-071 의 완료 조건을 구현한다: fencing token 단조성·high watermark 거부·lease-lost 신호 test 가 통과한다
  • 주도권 이전 수신 — H5 (raw/branch-notes/feature-distributed-lock-contract D6). 이전 절차는 docs/superpowers/specs/2026-07-28-ca-skeleton-production-capability-feature-decomposition-design.md §5.2 6단계를 따른다. 기존 branch 의 D-row 는 /branch-spec 으로 본 branch 결정이 확정된 뒤 포인터로 치환한다.
  • 이슈:
  • PR:

범위

포함 범위

  • FencedLockPort 와 leader election·semaphore·work claim 의 분리
  • fencing counter 와 만료 lease 의 분리 (counter 는 만료·초기화 없음)
  • 보호 자원의 high watermark 거부 규칙과 동일 owner 예외
  • lease-lost 신호와 보호 작업 중단 의무
  • blind DEL·무한 watchdog 금지, 멱등 release
  • provider 별 보증 — local / JDBC / Redis 의 명시적 한계

제외 범위

의도적으로 제외한 것. 면접 등에서 "이건 범위에 없었습니다"라고 답할 근거.

  • efficiency mutex — feature-distributed-lock-contract 유지
  • Redis 연결·스크립트 기반 — #061·#062 소유
  • 심층 명세 — 본 노트는 스캐폴딩. D-row 와 §구현 가이드는 /branch-spec 이 채운다.
  • project decision registry 변경 — owner 는 project-note

근거 (필수, 최소 1개+)

외부 근거 미등록. /branch-spec feature-fenced-lock-coordination-contract 단계에서 verbatim 인용과 함께 raw/official-docs/ 로 수집한 뒤 여기서 링크한다.

Source 정당화하는 결정
(미등록) 1차 수집 대상: Redis 공식 — distributed locks patterns · ca-tmpl platform 설계 §10 (기존 raw 재사용: cache-redisson-rlock-vs-setnx)

프로젝트 내부 설계 참조 (등급 internal-design-doc — 공식 문서 아님, best practice 로 격상 금지):

  • ca-tmpl docs/superpowers/specs/2026-07-26-production-capability-platform-design.md
  • llm-wiki docs/superpowers/specs/2026-07-28-ca-skeleton-production-capability-feature-decomposition-design.md

TODO

각 항목 옆에 증거 등급 표기: actually-implemented | locally-verified | prod-verified | documented-only | planned | needs-confirmation

  • /branch-spec feature-fenced-lock-coordination-contract 로 D-row·§구현 가이드 작성 — 등급: planned
  • fencing token 단조성·high watermark 거부·lease-lost 신호 test 가 통과한다 — 등급: planned

진행 중 메모

아직 없음.

결정 사항

project 결정 외 branch-local 결정은 아직 없음. /branch-spec 단계에서 기록한다.

결정-근거 매핑

/branch-spec 단계에서 작성한다.

Decision ID Decision 선택 조건 (언제 이 결정 / 언제 대안) Supporting Claims Evidence Strength Open Risk

구현 가이드

/branch-spec 단계에서 source claim 기반으로 작성한다. 3-rule meta principle(R1 Reference 필수 / R2 UNSUPPORTED_IMPL_DECISION 명시 / R3 OUT_OF_BRANCH_SCOPE 정제) 적용.

엣지·실패·의존

검증해야 할 주장

Claim Why uncertain How to verify Status
본 branch 가 소유할 관심사가 sibling branch 결정과 겹치지 않는다 스캐폴딩 시점에는 D-row 가 없어 경계가 문장으로만 존재 /branch-spec/sync 실행 — owner 중복 검출 needs-confirmation

관심사 커버리지 (coverage-auditor 자동 생성 — 있을 때)

/coverage 실행 전.

마주친 문제

아직 없음.

묶음 (이 branch에서 파생된 자료)

관련 일일 노트

해당 없음.

완료 후 정리

  • PR 링크:
  • 리뷰 메모:
  • 머지 결과 / 배포 환경:
  • wiki 추출 대상 (verified만, wiki/projects/로만 추출):
  • 추출하지 않을 항목 (planned / documented-only / abandoned):