콘텐츠로 이동

리뷰 인계 검증 영수증

지정된 수신자가 전달받은 handoff 원본을 실제로 파싱하고 다시 검증했다는 근거가 필요할 때 검증 영수증을 사용합니다. 영수증은 원본 handoff를 수정하지 않는 별도의 결정적 계약입니다.

CLI

design-ai review-handoff-verify review-handoff.json \
  --consumer implementation-agent \
  --json > review-handoff-receipt.json

consumer는 review-handoff.jsonrecipient.name과 정확히 같아야 합니다. 다른 이름, 변경된 원본 바이트, 해시 불일치, 유효하지 않은 내부 근거, 바뀐 승인 조건은 모두 거부합니다. 명령은 지정한 JSON 파일 하나만 읽고 아무 파일도 쓰지 않습니다. 출력 파일은 shell redirection이 만듭니다.

계약

design-ai-review-handoff-receipt v1은 다음 내용을 기록합니다.

필드 의미
consumer handoff 수신자와 일치하는 자기 선언 consumer, 통과한 계약 검증, 수락하지 않았다는 경계
handoff 원본 문자열, 참조, 바이트 수, SHA-256 해시, 파싱된 handoff 값
evidence 검증된 handoff에서 가져온 품질 finding 수와 브라우저 상태
remainingApprovals handoff에 남아 있던 승인 조건을 그대로 보존한 목록
nextAction 대상 저장소 확인 대기와 아직 허가되지 않은 구현
boundary 로컬 쓰기, 대상 수정, 외부 쓰기, 신원 증명, 수락, 구현이 없는 경계

status: contract-validated는 전달한 계약이 내부적으로 유효하고 지정 수신자와 이름이 맞는다는 사실만 증명합니다. 누가 명령을 실행했는지, 파일이 어떻게 전달됐는지, 수신자가 작업을 수락했는지, 대상 저장소를 확인했는지는 증명하지 않습니다.

SDK

import { readFileSync } from "node:fs";
import { verifyReviewHandoff } from "@design-ai/cli/sdk";

const handoffSource = readFileSync("review-handoff.json", "utf8");
const receipt = verifyReviewHandoff(handoffSource, {
  handoffRef: "review-handoff.json",
  consumer: "implementation-agent",
});

MCP

design_ai_verify_review_handoffhandoffSource, handoffRef, consumer를 전달합니다. Claude, Codex와 다른 MCP client도 CLI와 SDK가 사용하는 같은 in-process validator를 사용합니다. CLI를 실행하거나 외부 서비스에 연결하지 않습니다.

Website Console

review-handoff-receipt.json을 가져오면 Console이 영수증을 먼저 검증하고 내부 handoff, workflow, 근거를 복원합니다. receipt와 handoff 원본 바이트를 모두 보존하며, 다시 내보낼 때 receipt를 재포맷하지 않습니다. 영수증을 지우면 원본 handoff 화면으로 돌아갑니다.

안전하게 이어가기

검증 뒤에는 영수증에 선언된 정확한 경로를 대상으로 design-ai review-intake를 실행하세요. 대상 저장소 사전 점검을 참고하세요. 이후 코드 변경, 테스트, 커밋, 푸시, 배포 증빙은 승인된 구현 workflow가 담당합니다.