بنقرة واحدة
speckit-evidence-audit
Merge-gate audit: synthetic propagation + diff-scan. Hard-blocks on either.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Merge-gate audit: synthetic propagation + diff-scan. Hard-blocks on either.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Create or update project governing principles and development guidelines.
Validate and render the task DAG; compute synthetic propagation.
Execute all tasks from the task breakdown to build the feature.
Break down implementation plans into actionable task lists.
| name | speckit-evidence-audit |
| description | Merge-gate audit: synthetic propagation + diff-scan. Hard-blocks on either. |
| compatibility | Requires spec-kit project structure with .specify/ directory |
| metadata | {"author":"github-spec-kit","source":"evidence:commands/speckit.evidence.audit.md"} |
Produce a merge-readiness verdict for the current feature. Combines two signals:
speckit.graph.compute). Any [S] or [S*] task
counts against merge-readiness.git diff <base>...HEAD against the default
pattern library in audit-patterns.yml. Block-severity hits count
against merge-readiness. Advisory-severity hits print but do not block..specify/extensions/evidence/scripts/bash/run-audit.sh specs/<FEATURE_ID>
Optional flags:
--base <ref> — override the feature-base ref (default: auto-detect
main or master).--patterns <path> — override the default audit-patterns.yml.--accept-synthetic "justification" — record an explicit human override
for remaining synthetic/blocking hits. Does NOT change the exit code.
The audit still reports failure; the override is logged to
readiness/synthetic-evidence.json so reviewers can see the decision.after_implement hook declared in the evidence
extension's extension.yml.0 — PASS. No synthetic tasks, no blocking diff-scan hits.2 — NEEDS-EVIDENCE. At least one blocking signal. (Still the exit code
when --accept-synthetic is used.)3 — graph compute failed (cycles, dangling refs). Fix the graph first.4 — usage error.The audit is configured block on both: any remaining [S] or [S*]
AND any block-severity diff-scan hit are hard gates. The
--accept-synthetic flag is the only way past; it requires written
justification and is logged. Advisory-severity diff-scan hits are
informational only (the synthetic-banner pattern is intentionally
advisory — seeing SYNTHETIC: comments is proof that Principle IV
disclosure is happening).
Walk the report top to bottom:
[S] tasks — can any be upgraded to [X] by swapping in
real evidence? If yes, update the task, fix the code, re-run. If no,
confirm the Synthetic-Evidence Inventory row is current.[S*] tasks — these clear automatically once their
root-cause [S] upstreams clear. Check the root-cause list in
readiness/task-graph.md.audit-patterns.yml with a targeted
file_glob or line_regex.--accept-synthetic "written reason". This is the
documented escape hatch, not a bypass. The justification lives in
readiness/synthetic-evidence.json and SHOULD be mirrored into the PR
description.specs/<FEATURE_ID>/readiness/task-graph.{json,md} — refreshed by the
graph compute step.specs/<FEATURE_ID>/readiness/diff-scan-hits.json — structured diff
findings (blocking + advisory).specs/<FEATURE_ID>/readiness/synthetic-evidence.json — written only
when --accept-synthetic is used.