본문으로 건너뛰기

MAO Prompt Ops 상태 머신 & 권한 매핑

1. Template 상태 머신

Draft ── requestReview ──> Review ── approve ──> Approved ── deploy ──> Active
^ │ │ │
│ └─ reject ─────┘ └─ deprecate ──> Deprecated
상태설명허용 액션
Draft작성 중. Prompt Architect onlyEdit, Duplicate, Request Review
ReviewReviewer 검토 중Comment, Approve, Reject
Approved배포 준비 완료Deploy Canary/Prod, Deprecate
Active라이브 버전Rollback (to previous), View
Deprecated사용 중단View history only

상태 전이는 API 응답에 포함된 allowedActions를 사용해 UI에서 버튼 노출 여부를 결정한다.

2. Deployment 상태

INITIATED → IN_PROGRESS → { COMPLETED | ROLLED_BACK | FAILED }

PAUSED
  • IN_PROGRESS 상태에서 Guardrail 위반 시 PAUSED로 전환 후 Ops가 ROLLBACK 또는 RESUME을 선택.

3. 권한 스코프 매핑

권한 Scope설명허용 기능
prompt.read템플릿 보기Prompt Library/Detail 조회
prompt.writeDraft 편집신규 생성, 편집, Duplicate
prompt.review리뷰/승인Request Review 처리, 코멘트
prompt.deploy배포 조작Deploy/Promote/Rollback
prompt.experiment실험 관리Experiments CRUD
prompt.modelLLM Provider/Model Profile 관리Model Profile CRUD, Agent/Environment 바인딩
observability.readKPI/Guardrail 조회Observability 화면

권한은 Role에 조합으로 부여:

  • Prompt Architect: read + write + deploy + experiment + model
  • Prompt Reviewer: read + review
  • Ops Engineer: read + deploy + observability + model (Provider 제한 해제 권한 보유 시)
  • Compliance Reviewer (선택): read + model (가용성/데이터 지역성 감사용)

4. Guardrail 연동

  • Guardrail Engine은 policyId, severity, promptVersion을 전달하며, severity ≥ metricsGate.guardrailSeverityLimit이면 Deployment 상태를 PAUSED로 변경.
  • UI는 prompt.deploy 권한이 있는 사용자에게만 Resume/Rollback 버튼을 노출한다.

5. 감사 정책

  • 상태 전이/권한 관련 모든 행위는 Audit Log에 기록: actor, action, resourceId, prevState, nextState, scope.
  • Reviewer가 Reject 시 반드시 comment 필드를 채우도록 UI에서 Validation.
  • Model Profile 수정/바인딩은 Audit 카테고리 LLM_MODEL_CHANGE로 기록하며, Provider/Fallback 변경 diff 포함.

상태/권한 정의는 MAO Prompt Ops 0.1 기준이며, 새로운 상태 또는 Role이 추가되면 본 문서를 우선 갱신한다.