docs(warhacker): drone-loses-contact end-to-end scenario + tamper test#101
Closed
stephenlutar2-hash wants to merge 1 commit into
Closed
docs(warhacker): drone-loses-contact end-to-end scenario + tamper test#101stephenlutar2-hash wants to merge 1 commit into
stephenlutar2-hash wants to merge 1 commit into
Conversation
Per UDS-bundle verification: only vessels ships a real signed Zarf package +
GHCR image, and szl-receipts ships a real Pepr admission policy + receipts
server. a11oy/amaru/sentra/rosie ship SBOMs only at uds-v0.3.0 (no images),
so they are NOT live cluster pods.
Revised the scenario to the REAL moving parts:
workload (kubectl apply) -> Pepr szl-receipt-policy (admission webhook)
-> DSSE HMAC-SHA-256 receipt -> szl-receipts-server /receipts
-> kubectl annotations + cosign/HMAC verify (tamper breaks it)
- Dropped the '5 modules running in real-time' framing.
- Fixtures now match the production receipt contract exactly
(szl-receipt-on-deploy.ts): plain HMAC over payload bytes (no PAE wrapper),
_type https://szlholdings.com/receipt/v1, demo key
c3psLWRldi1kZW1vLWtleS0yMDI2LXdhcmhhY2tlcg==, keyid szl-dev-hmac-sha256-2026.
- Source talk track: szl-uds-deployment/docs/WARHACKER_DEMO.md.
Honest demo > theatrical demo. Doctrine V7 §10.
Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com>
7fb7f14 to
a9e0b64
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
At Warhacker (June 16–19, San Diego), Andrew Greene (Defense Unicorns)
explicitly asked for a "running deployment" that proves AI oversight
end-to-end — not slideware. This PR adds that scenario.
An autonomous-AI action proposal (a drone that has lost its C2 link proposing
to redirect into an unauthorized zone) flows through all five SZL substrate
modules and is denied, producing a tamper-evident DSSE receipt chain that
any reviewer in the room can verify themselves (Doctrine V7 §10 — no theater).
What's in
docs/warhacker-scenario/scenario_drone_loses_contact.sh— single bash entry point, ≤90s on a warmcache, 7 steps across all 5 modules (live cluster or offline fixture mode).
scenario_drone_loses_contact.md— narrated walkthrough.scenario_tamper_test.sh— mutate a receipt → DSSE verify fails → sentraalerts → rosie flags the chain break.
fixtures/—proposal_rejected,proposal_accepted,receipt_chain(3-receipt DSSE chain),
tampered_receipt, plusgen_fixtures.py.Signatures are real HMAC-SHA-256 over the canonical payload using the
published demo key
szl-warhacker-demo-2026.The 18 verifiable proof points (1 per ~5s)
Every line is a discrete
kubectl/curl/ DSSE-verify command:verdict · PP4 verify DSSE receipt signature.
PP7 failing axis explicit in receipt (actorIdentity 0.42 < 0.90).
INTACT · PP10 every receipt VERIFIED · PP11 σ-algebra node id recorded.
PP14 replay view URL.
map URL.
cosign verify-blob).Verification (CI-free, reproducible)
bash -npasses on both scripts.python3 -m json.toolpasses on all four fixtures.the stored signature; the tampered fixture fails verification (correct).
Scope
In-cluster scenario only. The UDS bundle / Zarf package build is owned by the
parallel Gap 1 effort (
szl-uds-deployment,uds run start); this scenariodrives the already-deployed substrate and does not rebuild it. No module repos
touched —
.github/docs/only.Real receipts, real DSSE signatures, real Lean reference (lutar-lean:
Lutar/PACBayes/CapabilityImprovementRate.lean@c4d1379568). No fake outputs.