P02-L08 · P02 · P02-M02
Reconstruct a historical transfer without assuming shared identity
Prerequisites: P02-L07
Learning objectives
- Reconstruct a historical transfer without assuming shared identity
- Reconstruct the accepted burn/message/completion pair.
- Reconcile raw and displayed units.
- Preserve acquisition and human-attribution limits.
EN source master · P02-L08 · 30 minutes estimated · needs_review
Read-only study. No wallet connection, real money, seed phrase, private key, signature or live trade. Duration is an editorial estimate; visual assets are specifications, not deployed components.
Why this matters
Cross-chain research needs a protocol-level link, not a story based on matching amounts. This historical case lets you reproduce a bounded connection while keeping the weaker Ethereum provenance visible.
Explanation
Scope the case before interpreting it
Use the already accepted dataset at commit 7010890930afb9b34c1b47f49fbd5ee1796c8550 [WHDATA]. It concerns one Wormhole Solana-to-Ethereum completion of 80000 WETH on 2 February 2022. It is not the complete incident, the original mint's authentication, total loss accounting or a current balance report.
The source is a preserved Solana native RPC response requested at finalized commitment. The protocol record is an archived VAA. The Ethereum destination is a selective Etherscan explorer rendering obtained through a search cache. It is NOT an independently captured native Ethereum receipt/header. Keep that sentence beside the reconstruction, not hidden in a generic disclaimer.
Read roles separately
The dataset identifies the source fee payer, message-account signer, token-account owner, burn account and Core emitter. The destination has a transaction sender and recipient. Some role fields may be equal within one record, but protocol correspondence does not establish a shared human across chains. Shared human identity remains INSUFFICIENT EVIDENCE.
The source action burns tokens, so a source recipient is not invented. On the destination, the selected method is completeTransfer(bytes), not the native-ETH unwrap path. The evidence supports a WETH token completion under the rendered log.
Reconcile amount and time
The source balance arithmetic is 11000010000000−3000010000000=8000000000000 raw units. With eight source decimals, this is 80000. The destination rendering gives80000000000000000000000 raw units and displays 80000 WETH; 18 decimals is an inference from that ratio, not an independently queried decimals() value.
Source time 2022-02-02T18:27:10Z is an RPC production estimate. Destination time 2022-02-02T18:28:37Z is an explorer-rendered block timestamp. Their 87-second difference is arithmetic on these representations, not independently measured end-to-end latency. Retrieval times are in 2026 and must not replace event times.
Establish the actual link
Match emitter chain/address, sequence 62741, nonce 55109 and the complete 133-byte payload. The archived and destination-consumed VAA bodies are 184 bytes and equal. Their full envelopes differ: 13 archive signatures versus 15 consumed signatures. Comparing whole envelopes would reject a valid body match for the wrong reason.
Guardian signatures were not independently cryptographically validated. SHA-256 checksums preserve local integrity; they are not the protocol's signed Keccak digest or a consensus proof. The pinned codec references explain decoding without proving deployed binary equivalence.
Produce a reproducible finding
Use the dataset's eleven claim mappings and preserved records, not a new search for the incident. The offline reproduce.py checks correlation and negative controls. Passing it supports internal consistency under the frozen providers and extraction assumptions. It does not raise the Ethereum source class, validate Guardians or identify a human.
Report OBSERVED record fields at their acquisition level, INFERRED decoding/correlation, UNKNOWN independent verification facts and INSUFFICIENT EVIDENCE for common human control or broad safety. An accurate partial reconstruction is more useful than a complete-looking unsupported account.
Key terms
- WETH: wrapped ether, a token representation of ETH; the selected completion here returns a token, not native ETH.
- VAA (Verified Action Approval): a Wormhole message combining protocol content with a signature envelope; the name does not mean this exercise independently validated its signatures.
- Guardian: a participant in Wormhole's message-attestation network; no human identity is inferred from a signature.
- VAA body: protocol message content apart from envelope signatures.
- Emitter tuple: chain/address/sequence identity.
- Normalization: conversion between raw unit scales.
- Integrity checksum: local change detection, not authenticity proof.
Historical example
HISTORICAL — accepted dataset, unchanged. Read dataset, provenance and its frozen records. Source signature: j3jUDG43di8Dsg7Q3jQhstamtBovu1GLqnDJ7yNvM3r4pnK9e7uqgt9uBobCjT5S1BKhZZFQNQwDxypEYqLknec, slot119027698. Destination transaction: 0x24c7d855a0a931561e412d809e2596c3fd861cc7385566fd1cb528f9e93e5f14, rendered block14128237. Message: 1/ec7372995d5cc8732397fb0ad35c0121e0eaa90d26f828a534cab54391b3a4f5/62741. These are read-only historical locators. No interaction is required.
Visual specifications
Historical transaction timeline with source RPC 18:27:10Z, message 62741 and rendered Ethereum 18:28:37Z in separate provenance lanes. Show body equality with envelope13/15 difference. No common-owner edge. Alt: one 80000 WETH correspondence has native-source and explorer-destination evidence; human identity and independent Guardian checks remain unresolved.
What the evidence proves
One bounded historical burn/message/WETH completion correspondence under the accepted RPC/archive/explorer representations.
What the evidence does not prove
Independent native Ethereum receipt/header validation, Guardian cryptographic validation, human common control, bridge backing, full incident reconstruction or token safety.
Common mistakes
- Upgrading Etherscan rendering to native receipt.
- Treating SHA-256 as signature validation.
- Demanding whole-envelope equality instead of body equality.
- Calling the selected WETH completion native ETH unwrap.
Practical exercise
Using dataset claims C01–C11, build source/message/destination rows with acquisition class, time basis, role and amount. Reproduce the amount calculations. Explain the envelope difference and list three conclusions the records cannot support. Optional offline verification: python content/academy-2/datasets/p02-l08/reproduce.py from repository root; never submit calldata or connect a wallet.
Submit a short evidence table and reasoning, using only the provided material. Suggested allocation: study 12 min, inspection/calculation 8 min, correction/quiz 10 min.
Show worked correction
Source raw burn 8e12/1e8=80000. Rendered destination 8e22/1e18=80000, with 18-decimal interpretation explicitly inferred. Tuple, nonce and payload/body equality link the records under provider assumptions, not amount/time alone. Envelopes 13/15 differ while bodies match. Native Ethereum receipt/header verification and Guardian validation remain unavailable; common human identity is INSUFFICIENT EVIDENCE. Do not infer backing, full incident losses or native ETH unwrap.
Review rubric: 1 point each for exact scope, source/fixture provenance, correct reasoning, explicit limitations and safe offline handling (5 total). An invented observation or unsupported human attribution requires correction regardless of score. This is formative feedback, not certification.
Checklist
- Accepted dataset version.
- Source versus destination provenance.
- Tuple and complete payload/body.
- Decimals basis.
- Event versus retrieval time.
- Human identity boundary.
Summary
Cross-chain research needs a protocol-level link, not a story based on matching amounts. This historical case lets you reproduce a bounded connection while keeping the weaker Ethereum provenance visible. The supplied material supports one bounded historical burn/message/WETH completion correspondence under the accepted RPC/archive/explorer representations. It does not establish independent native Ethereum receipt/header validation, Guardian cryptographic validation, human common control, bridge backing, full incident reconstruction or token safety.
Summary
- Reconstruct the accepted burn/message/completion pair.
- Reconcile raw and displayed units.
- Preserve acquisition and human-attribution limits.
Next lesson
P03-L01 after reviewing this exercise and its prerequisites.
Tools
NONE. The authoritative catalog requires no product access for this lesson. Use the frozen/offline material.
Sources & claim boundaries
- [WHDATA] Accepted P02-L08 historical dataset — Frozen source RPC, archived VAA, Ethereum explorer extraction and 11 claim mappings; Owner-accepted provenance limits retained. Checked 2026-10-01.
Synthetic values are author-created exercise inputs. Historical values, if any, must use the linked dataset and its narrower provenance. Source inspection is not independent editorial acceptance.
Visual specifications
P02-L08-V01
Reconstruct a historical transfer without assuming shared identity
Historical evidence, with acquisition and attribution limits
Historical transaction timeline with source RPC 18:27:10Z, message 62741 and rendered Ethereum 18:28:37Z in separate provenance lanes. Show body equality with envelope13/15 difference. No common-owner edge. Alt: one 80000 WETH correspondence has native-source and explorer-destination evidence; human identity and independent Guardian checks remain unresolved.
one 80000 WETH correspondence has native-source and explorer-destination evidence; human identity and independent Guardian checks remain unresolved.
390px stacked rows with complete text equivalent; 768px/desktop render acceptance pending
RTL prose; identifiers and number units remain LTR; preserve factual arrow directions
P02-L08-WH-SOL-ETH-20220202-62741-v1
Sources & claim boundaries
WHDATA · ACCEPTED_FROZEN_DATASET
Accepted P02-L08 historical dataset
- Supported claim
- Frozen source RPC, archived VAA, Ethereum explorer extraction and 11 claim mappings; Owner-accepted provenance limits retained.
- Verification boundary
- Accepted records reused unchanged and inspected locally; prior acquisition times and 11 record-level mappings remain in dataset/provenance.json.
- Checked at
- 2026-10-01
https://github.com/Samizghal/zecoin/blob/7010890930afb9b34c1b47f49fbd5ee1796c8550/content/academy-2/datasets/p02-l08/dataset.json
Dataset provenance
id: P02-L08-WH-SOL-ETH-20220202-62741-v1
dataStatus: HISTORICAL
source: content/academy-2/datasets/p02-l08/dataset.json
observedAt: 2026-10-01T15:07:40.657038Z
timeBasis: Event, report and retrieval times are separately recorded in dataset provenance
scope: Bounded attributed historical records; see dataset limitations
observedAtMeaning: Inherited dataset capture context, not event time or new live observation