검증과 게이트Review gates

stale-verdict-guard

판정을 검토한 소스의 지문에 묶어서, 검토 뒤에 소스가 바뀌면 그 판정이 낡았다고 알려 주는 도구입니다.

GitHub에서 보기View on GitHub

어떤 문제를 푸나The problem

소스와 묶이지 않은 판정 파일은 증거가 아니라 주장입니다. 검토를 마친 뒤 코드가 한 줄이라도 바뀌었다면 그 판정은 더 이상 지금의 코드에 대한 것이 아닙니다.

판정 JSON에 소스 트리의 내용 지문과 파이프라인 버전을 도장처럼 찍어 두고, 이후 확인 때 다시 계산해 일치하는지 봅니다. 일치하면 fresh, 다르면 STALE, 도장이 없으면 UNSTAMPED입니다.

이런 분께 맞습니다Who it is for

AI 리뷰나 승인 결과를 파일로 남기고 그 뒤 코드 변경을 놓치지 않고 싶은 파이프라인 운영자.

무엇을 하나What it does

  • stamp 명령은 지문, 파일 수, 시각, 파이프라인 버전을 판정 파일에 기록합니다.
  • check 명령은 지문을 다시 계산해 fresh, STALE, UNSTAMPED 중 하나로 답합니다.
  • node_modules, dist, build 같은 산출 폴더는 기본으로 제외하고, 편집을 되돌리면 다시 fresh가 됩니다.
  • 판정 파일이 검사 대상 폴더 안에 있어도 자기 자신은 지문에서 뺍니다.
  • 읽을 수 없는 파일은 조용히 건너뛰지 않고 종료 코드 2로 멈춥니다.

직접 돌려 본 출력Real output

저장소의 examples 폴더를 실행한 결과입니다.

$ bash examples/demo.sh
# A bare verdict file is not evidence
$ python3 scripts/stamp.py check .demo-tmp/verdict.json --root .demo-tmp/src
UNSTAMPED: a verdict that is not bound to a source fingerprint is a claim, not evidence
[exit 1]

# Stamp it against the source it judged
$ python3 scripts/stamp.py stamp .demo-tmp/verdict.json --root .demo-tmp/src --pipeline-version 3
stamped 1 files
[exit 0]

$ python3 scripts/stamp.py check .demo-tmp/verdict.json --root .demo-tmp/src --pipeline-version 3
fresh
[exit 0]

# The source changes after the verdict: the pass is void
$ python3 scripts/stamp.py check .demo-tmp/verdict.json --root .demo-tmp/src --pipeline-version 3
STALE: source changed after this verdict - the judgement no longer applies
[exit 1]

알아둘 한계Limits

  • 로컬 지문일 뿐 암호학적 서명이 아닙니다. 판정 파일을 고칠 수 있는 사람은 다시 도장을 찍을 수도 있습니다.
  • 파이프라인 버전은 check에 같이 넘겼을 때만 비교합니다.

받아서 쓰기Get it

# 저장소를 받습니다
git clone https://github.com/Kein-chronicle/stale-verdict-guard.git

# Claude Code 스킬로 쓰려면 이 폴더 이름으로 받습니다
git clone https://github.com/Kein-chronicle/stale-verdict-guard.git ~/.claude/skills/verdict-stamp

정보Info

분류Category
검증과 게이트Review gates
형태Type
명령줄 도구Command-line tool
라이선스License
MIT
필요한 것Requires
Python 3.10 이상
저장소Repository
stale-verdict-guard
토픽Topics
quality-gates ci attestation claude-code claude-skills agent-skills provenance

2026-10-18 기준: 저장소의 테스트를 로컬에서 실행해 통과했고, 예제 출력은 저장소의 examples 폴더를 실제로 실행한 결과입니다.

공유하기Share

문자Message 네이버 블로그Naver Blog X Facebook