Files
company-haness/.claude/schemas/acceptance-event.schema.json

66 lines
2.6 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "acceptance-event.schema.json",
"title": "acceptance / supersession event (P1-G #14)",
"description": "append-only 원장 <state_dir>/acceptance-events.jsonl 의 한 줄(JSON). 리포트는 불변 스냅샷이고, 리뷰 결정(수락/변경요청/차단)과 대체(supersede)는 리포트를 수정하는 대신 이 이벤트로 append 된다. acceptance_log.py 가 기록/질의한다. additionalProperties 허용(향후 확장).",
"type": "object",
"required": ["acceptance-event-id", "report-id", "decision", "effective-at"],
"properties": {
"acceptance-event-id": {
"type": "string",
"description": "이벤트 고유 id (예: ae-<UTCstamp>-<hex>)."
},
"report-id": {
"type": "string",
"description": "이 결정의 대상 report-id(불변 스냅샷)."
},
"decision": {
"type": "string",
"enum": ["accepted", "changes-requested", "blocked"],
"description": "리뷰 결정. review-output 이 emit 한다."
},
"accepted-report-id": {
"type": "string",
"description": "decision=accepted 일 때 수락된 report-id(기본 = report-id)."
},
"rejected-report-id": {
"type": "string",
"description": "decision=changes-requested|blocked 일 때 거부된 report-id(기본 = report-id)."
},
"supersedes-report-id": {
"type": "string",
"description": "이 결정이 대체하는 이전 report-id(계보). report_tags 가 이 대상들을 기본 제외한다."
},
"workflow-id": {
"type": "string",
"description": "질의 필터용(‘이 workflow 의 최신 수락 리포트?)."
},
"role-id": {
"type": "string",
"description": "질의 필터용(‘이 role 의 최신 수락 리포트?)."
},
"effective-at": {
"type": "string",
"description": "이벤트 발효 UTC 시각(예: 2026-07-10T12:00:00Z)."
},
"report-sha256": {
"type": "string",
"description": "선택. 수락 대상 report 파일의 sha256 — venture-decision human-gate 위조·재사용 방지 바인딩(P1 §9.4)."
},
"artifact-sha256": {
"type": "string",
"description": "결정 대상 immutable artifact revision의 sha256."
},
"artifact-kind": {"type": "string"},
"producer-role-id": {"type": "string"},
"reviewer": {
"type": "object",
"required": ["actor-id", "role-id"]
},
"authorization": {
"type": "object",
"required": ["expected-reviewer-capability", "producer-role-id", "self-review"]
}
}
}