Files
The-Ouroboros/docs/ouroboros/50_tpm_control_protocol.md
agentson 1333c65455
Some checks failed
CI / test (pull_request) Has been cancelled
docs: add PM/TPM governance artifacts for multi-agent control (#273)
2026-02-26 23:06:51 +09:00

6.1 KiB

TPM Control Protocol (PM <-> Dev <-> Verifier)

목적:

  • PM 시나리오가 구현 가능한 단위로 분해되고, 개발/검증이 동일 ID 체계(REQ-*, TASK-*, TEST-*)로 닫히도록 강제한다.
  • 각 단계는 Entry/Exit gate를 통과해야 다음 단계로 이동 가능하다.

Phase Control Gates

Phase 0: Scenario Intake and Scope Lock

Entry criteria:

  • PM 시나리오가 사용자 가치, 실패 모드, 우선순위를 포함해 제출됨
  • 영향 범위(모듈/세션/KR-US 시장)가 명시됨

Exit criteria:

  • 시나리오가 REQ-* 후보에 1:1 또는 1:N 매핑됨
  • 모호한 표현("개선", "최적화")은 측정 가능한 조건으로 치환됨
  • 비범위 항목(out-of-scope) 명시

Control checks:

  • PM/TPM 합의 완료
  • 산출물: 시나리오 카드, 초기 매핑 메모

Phase 1: Requirement Registry Gate

Entry criteria:

  • Phase 0 산출물 승인
  • 변경 대상 요구사항 문서 식별 완료

Exit criteria:

  • 01_requirements_registry.mdREQ-* 정의/수정 반영
  • REQ-*가 최소 1개 TASK-*, 1개 TEST-*와 연결 가능 상태
  • 시간/정책 수치는 원장 단일 소스로 확정(REQ-OPS-001,REQ-OPS-002)

Control checks:

  • python3 scripts/validate_ouroboros_docs.py 통과
  • 산출물: 업데이트된 요구사항 원장

Phase 2: Design and Work-Order Gate

Entry criteria:

  • 요구사항 원장 갱신 완료
  • 영향 모듈 분석 완료(상태기계, 주문정책, 백테스트, 세션)

Exit criteria:

Control checks:

  • TPM이 REQ -> TASK 누락 여부 검토
  • 산출물: 승인된 Work Order 세트

Phase 3: Implementation Gate

Entry criteria:

  • 승인된 TASK-*가 브랜치 작업 단위로 분리됨
  • 변경 범위별 테스트 계획이 PR 본문에 링크됨

Exit criteria:

  • 코드 변경이 TASK-*에 대응되어 추적 가능
  • 제약 준수(src/core/risk_manager.py 직접 수정 금지 등) 확인
  • 신규 로직마다 최소 1개 테스트 추가 또는 기존 테스트 확장

Control checks:

  • PR 템플릿 내 REQ-*/TASK-*/TEST-* 매핑 확인
  • 산출물: 리뷰 가능한 PR

Phase 4: Verification and Acceptance Gate

Entry criteria:

  • 구현 PR ready 상태
  • 테스트 케이스/픽스처 준비 완료

Exit criteria:

  • 40_acceptance_and_test_plan.md의 해당 TEST-ACC-* 전부 통과
  • 회귀 테스트 통과(pytest -q)
  • 문서 검증 통과(python3 scripts/validate_ouroboros_docs.py)

Control checks:

  • Verifier가 테스트 증적(로그/리포트/실행 커맨드) 첨부
  • 산출물: 수용 승인 레코드

Phase 5: Release and Post-Release Control

Entry criteria:

  • Phase 4 승인
  • 운영 체크리스트 준비(세션 전환, 블랙아웃, Kill Switch)

Exit criteria:

  • 배포 후 초기 관찰 윈도우에서 치명 경보 없음
  • 신규 시나리오/회귀 이슈는 다음 Cycle의 Phase 0 입력으로 환류
  • 요구사항/테스트 문서 버전 동기화 완료

Control checks:

  • PM/TPM/Dev 3자 종료 확인
  • 산출물: 릴리즈 노트 + 후속 액션 목록

Acceptance Matrix (PM Scenario -> Dev Tasks -> Verifier Checks)

PM Scenario Requirement Coverage Dev Tasks (Primary) Verifier Checks (Must Pass)
갭 급락/급등에서 청산 우선 처리 필요 REQ-V2-001,REQ-V2-002,REQ-V2-003 TASK-V2-004,TASK-CODE-001 TEST-ACC-000,TEST-ACC-001,TEST-ACC-010,TEST-CODE-001,TEST-CODE-002
하드스탑 + BE락 + ATR + 모델보조를 한 엔진으로 통합 REQ-V2-004 TASK-V2-005,TASK-V2-006,TASK-CODE-002 TEST-ACC-011
라벨 누수 없는 학습데이터 생성 REQ-V2-005 TASK-V2-007,TASK-CODE-004 TEST-ACC-012,TEST-CODE-003
검증 프레임워크를 시계열 누수 방지 구조로 강제 REQ-V2-006 TASK-V2-010,TASK-CODE-005 TEST-ACC-013,TEST-CODE-004
과낙관 백테스트 방지(비용/슬리피지/실패 강제) REQ-V2-007 TASK-V2-012,TASK-CODE-006 TEST-ACC-014
장애 시 Kill Switch 실행 순서 고정 REQ-V2-008 TASK-V2-013,TASK-V2-014,TASK-V2-015,TASK-CODE-003 TEST-ACC-002,TEST-ACC-018
세션 전환 단위 리스크/로그 추적 일관화 REQ-V3-001,REQ-V3-002 TASK-V3-001,TASK-V3-002,TASK-V3-003,TASK-CODE-007 TEST-ACC-015,TEST-ACC-016
블랙아웃 중 주문 차단 + 복구 후 재검증 실행 REQ-V3-003,REQ-V3-004 TASK-V3-004,TASK-V3-005,TASK-V3-006,TASK-CODE-008 TEST-ACC-003,TEST-ACC-017,TEST-CODE-005
저유동 세션 시장가 주문 금지 REQ-V3-005 TASK-V3-007,TASK-V3-008,TASK-CODE-009 TEST-ACC-004,TEST-CODE-006
보수적 체결 모델을 백테스트 기본으로 설정 REQ-V3-006 TASK-V3-010,TASK-V3-011,TASK-V3-012,TASK-CODE-010 TEST-ACC-005,TEST-CODE-007
전략손익/환율손익 분리 + 통화 버퍼 통제 REQ-V3-007 TASK-V3-013,TASK-V3-014,TASK-CODE-011 TEST-ACC-006,TEST-CODE-008
오버나잇 규칙과 Kill Switch 충돌 방지 REQ-V3-008 TASK-V3-015,TASK-CODE-012 TEST-ACC-018
타임존/정책변경/추적성 문서 거버넌스 REQ-OPS-001,REQ-OPS-002,REQ-OPS-003 TASK-OPS-001,TASK-OPS-002,TASK-OPS-003 TEST-ACC-007,TEST-ACC-008,TEST-ACC-009

운영 규율 (TPM Enforcement Rules)

  • 어떤 PM 시나리오도 REQ-* 없는 구현 착수 금지.
  • 어떤 REQ-*TASK-*,TEST-* 없는 승인 금지.
  • Verifier는 "코드 리뷰 통과"만으로 승인 불가, 반드시 TEST-ACC-* 증적 필요.
  • 배포 승인권자는 Phase 4 체크리스트 미충족 시 릴리즈 보류 권한을 행사해야 한다.