본문으로 건너뛰기
cccskills
무료GitHub에 공개

validate

Freshly judge exact subject content against bead or caller acceptance, optionally persist verdict.v2 for a declared consumer, and stop. Triggers: "validate", "independently validate", "vibe".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(6)

  • SKILL.md6.9 KB
  • references/validate.feature1.9 KB
  • scripts/check_contract_corpus.py5.4 KB
  • scripts/test_validate.py13.1 KB
  • scripts/validate.py26.0 KB
  • scripts/validate.sh1.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Validate

Independently judge one exact subject against the acceptance in its existing bead or caller source, return one semantic result, and stop. Validate is the sole verdict.v2 writer when persistence is requested. It never asks the model to reconstruct Plan or Candidate packets.

Preconditions

  • The subject is a nonempty implementation candidate: the manifest lists at least one entry, and store-verdict refuses an empty one. Plans, audits, reviews, and other control artifacts are not completion subjects unless the caller explicitly requested document review.
  • The intent source is available as a caller-owned artifact or runtime-owned content-addressed snapshot; its acceptance digest is derived automatically.
  • The subject manifest still matches the subject.
  • Author and validator context IDs are explicit.
  • Freshness is explicitly attested with source: runtime | caller and an attester identity.

Missing, colliding, or unattested identities produce NOT_PROVEN. This is a declared trust fact, not cryptographic proof that contexts were isolated.

Cross-model fresh validator (caller-elected)

A caller may request that the fresh validator run on a different model than the author. Dispatch via the controller-session recipe in the agent-native model-dispatch recipe (codex-exec and/or NTM panes, probed at runtime). Record author and validator model_identity in evidence refs and freshness attestation notes — do not change verdict.v2 schema. If the requested validator model has no live adapter, disclose the unsatisfied diversity request and proceed same-model. Single fresh validator remains the default shape.

Mutating-check quarantine

Before running any acceptance-listed command, classify it as read-only or subject-mutating. Regen scripts, sync scripts, formatters, and anything with --force are subject-mutating until proven otherwise. Never run a subject-mutating check against an uncommitted subject: on 2026-07-15, scripts/test-ci-deterministic-gates.sh regenerated skills-codex/ from HEAD mid-validation and destroyed the uncommitted subject, forcing NOT_PROVEN (verdict b6e759dd...cb6a); only restoring the subject and revalidating in a fresh context produced the PASS (e9b6cdb8...37b9). If a mutating check is genuinely required by acceptance, run it against a disposable copy or a committed subject, never the judged working tree.

Workflow

  1. Recompute and compare subject-manifest.v1 using python3 skills/validate/scripts/validate.py manifest. The helper uses only filesystem content; Git commit/tree IDs are optional metadata. Derive the manifest at the start of validation and re-derive it at the end; any mismatch between the two is subject mutation and returns NOT_PROVEN.
  2. Confirm the intent-source digest has not changed since implementation. If the subject changed or complete changed-path coverage cannot be derived, return NOT_PROVEN.
  3. Adjudicate the actual diff, not a declared path list: compare runtime-derived actual changed paths against the intent's scope classes. A proven out-of-scope path returns FAIL; incomplete scope evidence returns NOT_PROVEN.
  4. Inspect the exact subject and factual evidence. Reported exit codes are claims, not evidence: re-execute the claimed proofs that bear on acceptance (see the freshness rules below for when a digest-bound receipt suffices). Judge every acceptance criterion and record criterion-level results, findings, evidence references, checked, and not_checked.
  5. Choose exactly one semantic result: PASS, FAIL, or NOT_PROVEN. Return it with criterion results, findings, evidence references, checked, not_checked, the acceptance and subject identities, distinct author and validator context IDs, and the freshness attestation. PASS requires distinct identities, explicit freshness, nonempty checked scope, top-level evidence, and evidence for every criterion.
  6. Only when the caller requests machine-readable evidence or a declared downstream consumer requires it, persist canonical verdict.v2 with store-verdict --draft <draft.json> --intent-source <resolved-intent> --subject-manifest <manifest.json> --author-context-id <id> --validator-context-id <id> --freshness-source <runtime|caller> --freshness-attester-id <id> --scope-result <PASS|FAIL|NOT_PROVEN>. The helper snapshots the exact resolved intent under <workspace>/.agents/ao/intents/sha256/<digest>.intent, then computes and injects intent and subject digests plus author, validator, and freshness facts. Identity and changed-path facts come from runtime-derived inputs and receipts, not model transcription. Storage defaults to <workspace>/.agents/ao/verdicts/sha256/<digest>.json; callers may provide verdict_dir.
  7. Return the semantic result and, when persisted, the artifact path and digest. Stop.

The digest is SHA-256 over canonical JSON with artifact_digest omitted. Writes use a same-directory temporary file, flush, fsync, and atomic rename. Identical existing content is idempotent success; conflicting content is an integrity failure represented by NOT_PROVEN.

Freshness without duplication

Fresh validation means independent judgment over the exact subject. It does not require mechanically replaying every author command. Verify intent identity, scope, evidence digests, and every acceptance criterion; independently rerun the risk-critical, uncertain, or insufficiently evidenced checks. A digest-bound deterministic receipt may prove routine facts. Replay an expensive full suite only when acceptance requires that result or the supplied receipt cannot establish it.

Boundary

Validate emits no WARN, confidence, disposition, briefing learning, owner, next action, repair, retry, replan, helper, escalation, tracker, Git, release, closure, or delivery state. Generic provenance may record a verdict later, but ledger availability cannot change its validity.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Dispatch independent tasks to parallel workers or subagents without write collisions. Use when: running or planning agents in parallel, even two; check scopes before any launch.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

Run a supplied task in headless AGY (Antigravity, Gemini) and collect its result. Use when: AGY, Antigravity or Gemini is requested by name; never a fallback.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

Run one prompt through headless Claude with scoped permissions and a time bound. Use when: scripting or automating a `claude -p` call, even a simple one.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

Run one prompt through headless Codex and capture the result. Use when: wanting a one-shot `codex exec` run or CI step. Not for batches or retries.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

council

무료

Compare independent opinions from several models or contexts without inflating agreement. Use when: wanting a second opinion or debate, or summarizing several reviewers' results.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

Draft or lint a bounded long-running goal prompt with a finish line and hard limits. Use when: selected by name; one change goes to Plan.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

boshu2/agentops4502026년 10월 19일 업데이트

boshu2의 스킬 모두 보기

이 스킬의 문제 신고