Child of #460. Wave 4 (#457) shipped the DYADT declaration layer in standards: the normative spec, a reference verifier, conformance vectors, and a dogfood. The production actuator is the parallel work.
Scope (in hyperpolymath/did-you-actually-do-that)
Implement the continuous, network-capable verifier that:
- passes the conformance suite in
did-you-actually-do-that/spec/conformance/ (the shared ground truth — 9 vectors today);
- implements the network verifiers the reference returns
unverifiable for: ci-run (Actions API → real conclusion), issue-state / pr-state (forge API → real state);
- sandboxes
command-transcript execution for untrusted claims (the reference impl is trusted-input only — see VERIFICATION-PROTOCOL "Command execution & sandboxing");
- writes the consequence ledger (
spec/CONSEQUENCE-LEDGER.adoc): append-only, dual-signed, per-actor confirmation rate;
- wires into hypatia / gitbot-fleet so a
refuted claim has a consequence.
Contract (do not diverge)
The spec in standards/did-you-actually-do-that/ is authoritative. The verifier MUST NOT relax the confirmed/refuted/unverifiable semantics or the fail-safe rules. Verdicts MUST be re-derived from primary evidence, never read back from the agent's evidence field. Licence/SPDX claims stay manual-only.
Acceptance
run-conformance.sh (pointed at the production verifier via DYADT_VERIFIER) is green; the network verifiers are covered by live-API integration tests; the ledger computes a per-actor confirmation rate.
Depends on: #461 (residual reference-verifier fixes land in the shared vectors first).
Child of #460. Wave 4 (#457) shipped the DYADT declaration layer in
standards: the normative spec, a reference verifier, conformance vectors, and a dogfood. The production actuator is the parallel work.Scope (in
hyperpolymath/did-you-actually-do-that)Implement the continuous, network-capable verifier that:
did-you-actually-do-that/spec/conformance/(the shared ground truth — 9 vectors today);unverifiablefor:ci-run(Actions API → realconclusion),issue-state/pr-state(forge API → real state);command-transcriptexecution for untrusted claims (the reference impl is trusted-input only — see VERIFICATION-PROTOCOL "Command execution & sandboxing");spec/CONSEQUENCE-LEDGER.adoc): append-only, dual-signed, per-actor confirmation rate;refutedclaim has a consequence.Contract (do not diverge)
The spec in
standards/did-you-actually-do-that/is authoritative. The verifier MUST NOT relax theconfirmed/refuted/unverifiablesemantics or the fail-safe rules. Verdicts MUST be re-derived from primary evidence, never read back from the agent'sevidencefield. Licence/SPDX claims staymanual-only.Acceptance
run-conformance.sh(pointed at the production verifier viaDYADT_VERIFIER) is green; the network verifiers are covered by live-API integration tests; the ledger computes a per-actor confirmation rate.Depends on: #461 (residual reference-verifier fixes land in the shared vectors first).