founder-ship-it/Slipmark · Proof record #47
The gate refused.
Where it came fromsigned by GitHub
- Repository
- founder-ship-it/Slipmark
- Commit
- 4817f184d80be28705f069251f92ee9c45194687
- Workflow
- Slipmark · push
- Run
- 40202365154
Ledger entryLedger intact · 96 entries
- Entry
- #47 of 96
- Entry hash
- 40f946bd6a4046fc1053518cc57027bc2317d7efee2f43dd7e0ccb362d444b42
- Previous hash
- efc4a2c3f69f20d83276c4df0a8e7cdbef958f39d1dd53776fc6633a2c0131dd
Each entry's hash covers this run's verdicts and the previous entry's hash. The whole chain is recomputed every time this page is built: changing any past record would break it here.
Organisation rules Not met
Rules set by the repository owner, checked against the files this change touched.
| Rule | Result | Files it covered | Missing a passing verdict |
|---|---|---|---|
| Gate code and its spec need a reviewer pass | Not met | docs/attestation.md, src/attest/attestation.ts | docs/attestation.md, src/attest/attestation.ts |
| Payments code needs a security review | Met | none changed |
Gate results
What CI found when it re-hashed each attested file at commit 4817f18. Slipmark Cloud then read GitHub's own copy of the commit, re-hashed every attested file itself and got the same answer.
| Result | File | Agent | Verdict | Detail |
|---|---|---|---|---|
| Spec changed after verdict | src/attest/attestation.ts | reviewer | pass | attested 275919d891e9… now 46f957b25e2c… |
| Spec changed after verdict | docs/attestation.md | reviewer | pass | attested 17b447598871… now 2a92156c2f5b… |
| Spec changed after verdict | docs/attestation.md | reviewer | pass | attested 17b447598871… now 2a92156c2f5b… |
| No verdict | src/attest/attestation.ts | — | — | no passing, current attestation covers src/attest/attestation.ts |
Verdicts as the agents recorded them
The attestation files in the repository at this commit.
reviewer · pass.slipmark/attestations/reviewer--docs_attestation.md.json
- Read
- docs/attestation.md 17b4475988711e06e733f28ae2a825ad45ad4cffe488fea16ed7ae2def917a62
- Note
- Docs match the code: new statuses, exit 2 when Sigstore is unreachable and signatures are required, policy signatures block, signed-verdicts section incl. pull_request ref warning and public Rekor note
- Attested
- 23 Oct 2026, 11:53 UTC
reviewer · pass.slipmark/attestations/reviewer--src_attest_attestation.ts.json
- Read
- src/attest/attestation.ts 275919d891e92cb75a4743c789aff20afea823a1c0b364a30e6417644bff41cc
- Note
- Re-reviewed for signed verdicts: signature field shape check, signatures policy validation (require needs trusted), sigCheck keyed by repo-relative file, signature_invalid always refuses, unsigned/signer_not_trusted only when required, signer only on trusted valid signatures, async checkSignatures throws on unchecked when required (exit 2), v1 path keeps signature check on raw JSON; earlier v2 behaviour unchanged
- Attested
- 23 Oct 2026, 11:53 UTC
reviewer · pass.slipmark/attestations/reviewer--src_attest_signing.ts.json
- Read
- src/attest/signing.ts aeefb8706f106dc0ddfcea6b6f3bba1dff9a49c4c572ab8a0b9113803578ae42
- Note
- Reviewed signing: canonical JSON (sorted keys, undefined dropped) covers everything but signature; DSSE payload type and bytes must match; sigstore.verify with certificateIssuer pins GitHub Actions; network/TUF errors are unchecked (exit 2 only when required), others invalid; identity from the Fulcio SAN; * globs escape everything else; --sign refuses without an identity. Real fixture and CI e2e pass.
- Attested
- 23 Oct 2026, 12:04 UTC
What this proves: these verdicts were recorded by founder-ship-it/Slipmark's own workflow at this commit, and the files above either matched or did not. It does not prove a verdict was right, only what it was about.