Help us improve
Share bugs, ideas, or general feedback.
From forge-dev
Forge Dev Check 8.9 하네스 무결성 감사. 파이프라인 내 agent drift 3종 검사 — (1) 삭제 Agent 호출 감지(subagent_type 참조 vs agents/*.md 실재 비교), (2) 중간 산출물 잔존(FR 결과 handover/docs 미기록 탐지), (3) 외부발송 전 Human 게이트(Telegram/PR/이메일 발송 코드에 [STOP] 승인 지점 여부). Check 8.5와 병렬 실행 가능. read-only grep 기반 subagent 격리. CRITICAL/HIGH → [STOP], MEDIUM → WARN. pipeline.md Check 8.9 자동 배선. 수동 호출 /agent-drift-auditor
npx claudepluginhub moongci38-oss/forge-plugins --plugin forge-devHow this skill is triggered — by the user, by Claude, or both
Slash command
/forge-dev:agent-drift-auditorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Forge Check 8.9 — 하네스 무결성 감사. 3검사 실행 → `agent_drift` JSON 반환.
Provides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.
Share bugs, ideas, or general feedback.
Forge Check 8.9 — 하네스 무결성 감사. 3검사 실행 → agent_drift JSON 반환.
scan: .specify/specs/*.md, pipeline.md, ~/.claude/skills/*/SKILL.md 내 subagent_type 참조
compare: ~/forge/.claude/agents/*.md 실재 파일 목록
mismatch → drift_issues severity=HIGH
방법:
grep -r "subagent_type" .specify/ pipeline.md ~/.claude/skills/ → 호출 목록 추출ls ~/forge/.claude/agents/ → 실재 에이전트 목록scan: Spec FR 목록 vs handover/*.md + docs/reviews/ 경로 기록 대조
FR 결과가 파일 미저장(대화에만 존재) → orphan_outputs
방법:
.specify/specs/*.md 또는 --spec 인자에서 FR 목록 추출grep -r "FR-[0-9]\+" .claude/handover/ docs/reviews/ forge-outputs/.claude/handover/ → 기록된 FR 목록scan: 구현 파일 내 외부발송 패턴
require: 동일 파일(또는 직접 호출 파일) 내 [STOP] / Human 승인 패턴
미존재 → external_send_ungated severity=CRITICAL
방법:
grep -rn "mcp__plugin_telegram\|gh pr create\|send.*mail\|post.*slack\|mcp__.*reply\|mcp__.*send" src/ .claude/skills/ → 발송 코드 목록grep -n "\[STOP\]\|Human 승인\|human.*gate\|stop.*gate" 확인{
"checkId": "check-8.9",
"status": "PASS|WARN|FAIL",
"agent_drift": {
"missing_agents": ["subagent_type명"],
"orphan_outputs": ["FR-ID"],
"external_send_ungated": ["파일경로:라인"],
"drift_issues": [
{
"severity": "CRITICAL|HIGH|MEDIUM",
"check": "1|2|3",
"finding": "설명",
"evidence": "파일경로:라인"
}
]
},
"summary": "CRITICAL N / HIGH N / MEDIUM N"
}
| 판정 | 조건 | 행동 |
|---|---|---|
| FAIL | CRITICAL 1개+ 또는 HIGH 1개+ | Lead에게 [STOP] 에스컬레이션 |
| WARN | MEDIUM 1개+ (CRITICAL·HIGH 없음) | Lead에게 보고, 자동 진행 가능 |
| PASS | 이슈 0 | 통과 |
.specify/ 양쪽"matrixSource": "spec-unavailable" 플래그 후 Check 2 SKIP본 스킬 결과 산출 후 자동으로 eval-rubric 호출 → 4축 Rubric 채점 → eval_cases.jsonl 누적.
/eval-rubric --target {agent_drift_result_path}~/.claude/scripts/eval-cases-append.py)
EVAL_RUBRIC_AUTO=offeval_cases: off실패 시 [[pev-self-correction]] 적용
독립 Evaluator subagent가 산출물 품질을 검증합니다.
Evaluator 역할: 산출물 독립 검증
모델: claude-haiku-4-5 (경량, 편향 최소화)
격리: 메인 컨텍스트 오염 방지
판정 기준:
eval_cases.jsonl에 결과 자동 누적.