From 4e22c3f004e0d65d10fd4481b497a0c96a0d2ade Mon Sep 17 00:00:00 2001 From: Aviad Date: Sat, 11 Jul 2026 00:07:08 +0300 Subject: [PATCH] docs: add animated verify demo to README Animated SVG terminal cast of a claim's full lifecycle: SUPPORTED with evidence, CONTRADICTED when the handler becomes an edition stub (both sides shown), restored to SUPPORTED, then STALE after the implementation changes without re-verification. Content mirrors real dtc 0.4.0 output captured from the demo repo. ~9.6KB, autoplays on GitHub, replaces the static example block. --- README.md | 19 +++--------- assets/devtime-verify-demo.svg | 55 ++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 15 deletions(-) create mode 100644 assets/devtime-verify-demo.svg diff --git a/README.md b/README.md index 5a870f9..59bcef2 100644 --- a/README.md +++ b/README.md @@ -260,22 +260,11 @@ pip install -e ".[dev]" ## Verify claims (experimental) DevTime is growing into a verification layer: ask whether a statement about the -repository is actually supported. +repository is actually supported. Watch a claim live through its whole life - +supported, contradicted by a stub, restored, and stale after the evidence +changes: -```bash -dtc verify billing-webhook-signature -``` - -``` -Billing Webhook Signature Verification -Claim: Incoming billing webhooks verify the payment provider's signature. -Status: CONTRADICTED - -Contradictions: - - The billing webhook endpoint cannot verify signatures because it is a disabled stub. - claimed: apps/web/pages/api/stripe/webhook.ts is named and routed as a billing webhook endpoint. - observed: The handler's only behavior is a 404/501 response. -``` +![dtc verify demo - a claim goes from SUPPORTED to CONTRADICTED to STALE](assets/devtime-verify-demo.svg) Statuses are SUPPORTED, WEAK, CONTRADICTED, or UNKNOWN; contradictions always show both sides; changed evidence marks a claim STALE. Two built-in claims ship diff --git a/assets/devtime-verify-demo.svg b/assets/devtime-verify-demo.svg new file mode 100644 index 0000000..9ac306f --- /dev/null +++ b/assets/devtime-verify-demo.svg @@ -0,0 +1,55 @@ + + + + + + + + +dtc verify - supported, contradicted, stale. all from evidence +$ dtc verify billing-webhook-signatureBilling Webhook Signature VerificationClaim: Incoming billing webhooks verify the provider's signature.Status: SUPPORTEDWhy: - Signature verification behavior evidence was found. - A test exercises signature behavior.Supporting evidence: - src/billing/stripe-webhook.ts [strong] Verifies the provider's webhook signature. - tests/stripe-signature.test.ts [moderate] Test exercises webhook signature behavior.# ...the webhook handler gets replaced by an edition stub$ dtc scan && dtc verify billing-webhook-signatureStatus: CONTRADICTEDWhy: - A billing webhook endpoint exists in name, but it is a disabled stub. - No signature verification evidence was found anywhere in the scan.Contradictions: - The billing webhook endpoint cannot verify signatures because it is a disabled stub. claimed: pages/api/stripe/webhook.ts is named and routed as a billing webhook endpoint. observed: The handler's only behavior is a 404/501 response.# restore the handler...$ dtc scan && dtc verify billing-webhook-signatureStatus: SUPPORTED# ...then change the implementation without re-verifying$ dtc scan && dtc verify --list billing-webhook-signature last status: SUPPORTED freshness: STALE changed since verification: src/billing/stripe-webhook.tsEvidence decides. Weak evidence creates uncertainty, not confidence. + +