Skip to content

feat(verified): evidence chain -- change, run and evidence identities - #6693

Merged
gHashTag merged 1 commit into
masterfrom
claude/verified-evidence-chain-6655
Oct 6, 2026
Merged

gHashTag merged 1 commit into
masterfrom
claude/verified-evidence-chain-6655

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 6, 2026

Copy link
Copy Markdown
Owner

Closes #6692
Refs #6655 (Phase D: change identity, run identity, evidence record)

Adds specs/verified/evidence_chain.t27. chain(change, run_change, run, ev_run, has_outputs, has_tests, has_logs, seal) checks the links in order and returns LINKED or the first broken one:

  • the change has an id;
  • the run is bound to this change;
  • the evidence is bound to this run;
  • the evidence references outputs, tests and logs;
  • the seal matched.

A record that points at another change or run is a different chain, so it proves nothing about this one. Missing is never linked. Ids are 64-bit prefixes of existing hashes and numbers, so no hash is computed and no new store is added.

Evidence (Railway lab, master t27c, zig 0.16.0):

  • 9/9 tests passed
  • 10/10 mutants killed
  • gen-verilog (145 lines) and gen-c (155 lines) OK
  • t27c seal --verify: all hashes MATCH (spec_hash sha256:661844eb...)
  • gitleaks: no leaks; own-language hook passed

🤖 Generated with Claude Code

specs/verified/evidence_chain.t27: chain() checks that a run names its
change, the evidence names its run, outputs/tests/logs are referenced and
the seal matched, and returns the first broken link. Ids are prefixes of
existing hashes and numbers (0 = not recorded); no hash is computed here.
9 tests, 10/10 mutants killed, sealed.

Closes #6692
Refs #6655

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-06 07:07:18 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 39
PRs with All Checks Green 11
READY 10
FAILING 39
PENDING 0
NO CHECKS YET 0

These columns do not partition: 10 + 39 + 0 + 0 = 49, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=3c78f3c7ffb7 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

verified: evidence chain -- change, run and evidence identities, first broken link (#6655 Phase D)

1 participant