DSCC
home / verification

Verification Standard

This document defines how shell commands in the DSCC docs are verified and how the # [待验证] marker is lifted.


Tiers

Tier Meaning Evidence required
Tier 1 — Code-verified Command form is confirmed by reading source; running it would only re-prove what clap/bash guarantees. Examples: dscc --help, dscc --version, export ANTHROPIC_API_KEY=..., cargo build. File:line citation to the relevant parser or README line.
Tier 2 — Local smoke Exits 0 in a sandbox with no network, no credentials. Examples: dscc init, dscc agents, dscc skills, dscc system-prompt, dscc dump-manifests, dscc bootstrap-plan. Log file under docs/verification/logs/tier2/<slug>.log with exit: 0 and a key output pattern.
Tier 3 — API-dependent Requires a live provider. Examples: dscc --model <id> prompt "..." and every cookbook case. Log file under docs/verification/logs/tier3/<slug>.log with exit 0, non-empty model output, tool trace matching the cookbook’s expected behavior.
Tier 4 — Interactive only Cannot be scripted: REPL sessions, OAuth flow (dscc login), commands whose value comes from typing slash commands after loading. Replace # [待验证] with # [交互] and add a one-line human instruction.

Lifecycle of a marker

  1. Author writes a command with # [待验证].
  2. Verifier runs the command per the tier above.
  3. On PASS: delete the marker, record the log path (Tier 2/3) or the code citation (Tier 1) in docs/verification/registry.md.
  4. On FAIL: keep the marker, write the failure into the registry, and fix the doc (either the command or its surrounding claim).
  5. Tier 4 never loses the marker; it is renamed # [交互].

Log format

Each Tier 2/3 log file contains:

# <file-relative-path>:<line> — <short description>
$ <exact command invoked>
<stdout + stderr as captured>
---
exit: <code>
duration: <seconds>s
model: <model id, Tier 3 only>
verdict: PASS | FAIL
notes: <one-line explanation>

API keys and URLs are never written to logs. Redact them with <REDACTED> when they appear in commands or stderr.


Directory layout

docs/
├── verification.md           # this file
└── verification/
    ├── registry.md           # PASS/FAIL index, one row per command
    └── logs/
        ├── tier2/<slug>.log
        └── tier3/<slug>.log