Generated reports

Generated report detail

Nockchain<->Base Federated Bridge (withdrawal)

Fixture xchain-federated-bridge-v0 generated pass at 2026-06-10T22:58:55.217Z.

JSON
Status
pass
Steps
2/2
Invariants
5/5
Snapshots
3

Environment

Mode

mock-fakenet

gRPC Endpoint

n/a

Fakenet Command

model

Models the REAL Nockchain<->Base bridge: a 3-of-5 federated mint-and-burn withdrawal (nockchain/crates/bridge: Nock.sol burn -> MessageInbox.sol mint).

NOCK is burned on Nockchain, 3-of-5 authorized bridge nodes attest, then wrapped-NOCK is minted on Base once >= requiredConfirmations.

Honest limit: a single-process MODEL of two chains (model-attested), not a live two-chain execution. See docs/xchain-security-model.md.

Next Actions

  1. Replace mock poke and peek execution with local fakenet adapter calls.
  2. Replace command-backed fakenet metadata probes with stable gRPC-native probes once node surfaces are available.
  3. Persist generated reports under a project workspace.
  4. Add app-specific invariant packs as the NockApp interface stabilizes.

Invariant Packs

No invariant packs referenced.

Run Steps

3-of-5 attestation -> mint on Base after finality

bridge

pass

1000

Withdrawal settled on both chains

bridge

pass

claimed

Invariant Results

No wrapped value minted on Base beyond what was burned on Nockchain

critical

pass

Observed minted 1000 <= burned 1000; all 1 mint(s) backed by a burn; expected minted <= burned and every mint backed by a recorded burn under xchain.

Every mint carries >= 3-of-5 distinct authorized attestations

critical

pass

Observed all 1 mint(s) have >= 3 distinct authorized attestations; expected each mint attested by >= threshold distinct authorized signers under xchain.

Each withdrawal id is minted at most once

critical

pass

Observed all 1 message id(s) unique; expected no cross-chain message id processed more than once under xchain.mints.

Mints only after >= requiredConfirmations on the source event

high

pass

Observed all 1 settle(s) >= 12 confirmations; expected every settle references a source event with >= 12 confirmations under xchain.

Terminal settlement is all-claimed or all-refunded (never one-sided)

critical

pass

Observed atomic: all 1 leg(s) claimed; expected terminal settlement is all-claimed or all-refunded (no mix, no stuck-locked) under xchain.settlement.

Alerts

No alert policies configured.

Adapter Observations

No adapter observations captured.

State Diffs

PathBeforeAfter
xchain.minted01000
xchain.mints[][{"id":"wd-001","amount":1000,"attestedBy":["node-1","node-2","node-3"],"confirmations":12}]
xchain.settlement["locked"]["claimed"]

Snapshot Timeline

Initial state

initial

22b0e4d600a479f6

After attest-and-mint

attest-and-mint

5275697a1b8cc12c

After settle

settle

b8543bce2c13dbdd

Artifacts

Report ID

lab_xchain-federated-bridge-v0_20260610225855217

Report Hash

sha256:035414ed3867ca0b9bb2567a24042e228ff263c35389ed0a34704667b528bd4b

Snapshot Root

b8543bce2c13dbdd

JSON Path

/bundle/server-functions/default/.nocklab/xchain-federated-bridge.report.json

Markdown Path

/bundle/server-functions/default/.nocklab/xchain-federated-bridge.report.md

Markdown Bytes

2044

Changed Paths

xchain.minted, xchain.mints, xchain.settlement

Markdown Preview

# ✅ Nockchain<->Base Federated Bridge (withdrawal) Lab Report

Alert Summary

0 triggered, 0 clear

Verification Candidate

Candidate

Nockchain<->Base Federated Bridge (withdrawal) Verification Candidate

Status

ready

Signature

unsigned

Invariant Packs

none

Report Hash

sha256:035414ed3867ca0b9bb2567a24042e228ff263c35389ed0a34704667b528bd4b

Snapshot Root

b8543bce2c13dbdd