User Guide
User Guide — Forge Proof Layer
The Proof Layer turns "we built it" into "here is independently verifiable proof of exactly how much we built." It runs automatically as a gate before any outcome is delivered, published, granted certification, benchmarked, or committed.
For an outcome owner
- Build and verify your outcome under
delivery-package/<slug>/with a
verify command that writes verification-report.json.
- Run the Proof Layer:
``` node tools/forge-proof.mjs --outcome delivery-package/<slug> \ --verify "node verify.mjs" --report verification-report.json ``` Read the printed state, grade, and Trust Score. If it is not what you expect, fix the underlying evidence (add curated proof docs, disclose seams, remove unsupported claims) and re-run. Never edit the generated artifacts by hand.
- Gate every release action:
``` node tools/forge-gate.mjs --outcome delivery-package/<slug> --action deliver ``` Exit 0 = permitted, 1 = blocked by the decision, 2 = fail-closed (not started or integrity failure).
- Publish and rebuild the proof-aware portfolio with
node tools/forge-portfolio.mjs.
Reading the outputs
proof/EVIDENCE_GRADE.md— the grade and the exact basis for it.proof/TRUST_SCORE.json— the 0–100 score with every scoring and penalty line.proof/AUDITOR_CHALLENGE.md— hostile-auditor questions answered per claim.proof/PROOF_DECISION.json— the authoritative allow/block decision.
Declaring stronger evidence
Higher grades require real inputs. When (and only when) you have them, pass --independent-reproduction, --external-validation, and/or --production-validated. These must be backed by evidence; do not set them otherwise.