다섯 레인 역할을 단일 분류기로 갈라 공급자 중립 신호로만 판정

문제 (Context)

GRP-01(열림)은 PM 통제, 워커 계약, 워커가 띄운 하위워커, 리뷰어, 전송 레인을 따로따로 분류하길 요구한다.

시도한 해결 (Decision)

lane_role 분류 체계(pm_control | worker_contract | subworker_contract | reviewer_contract | artifact_transport)는 cli_board/exchange_bundle/pm_thread_lease에 흩어져 있었을 뿐, 기준이 되는 분류기가 없었다. kanban_group_layoutowner_role(pm | worker:<id>)만 알고 있었다.

그래서 card_lane_role()을 추가했다. 공급자 중립 신호만으로 다섯 중 정확히 하나를 도출한다. 명시된 합법 lane_role이 먼저 이기고, 다음으로 전송/리뷰어 역할 힌트, 마지막으로 소유 레인을 본다(PM이면 pm_control, 부모 레인 자체가 워커인 워커면 subworker_contract, 그 밖은 worker_contract). 불법 lane_role(예: agy 같은 공급자 신원)은 도출된 합법 역할로 떨어뜨리고 절대 그대로 돌려주지 않는다. 8회차 owner_role과 동일한 누수 방지 결을 따른다. classify_lanes()는 역할별로 카드 id를 묶어 다섯 레인이 눈에 보이게 갈라지도록 한다. card_owner_role을 조합해 쓴다.

근거·결과 (Consequences)

테스트 6건을 새로 추가했고, 67건이 통과했다.

노드 계약 (contract)

필드
type결정(decision)
Statusaccepted
source_count1
confidence미설정 — 구 엔진 격차
confidence_reason_codes미설정 — 구 엔진 격차
stalefresh
이슈(feature)권한·레인 게이트

상호참조


이슈 권한·레인 게이트 · Status accepted · 2026-06-25