From endless rechecks to deterministic finality.
This milestone completes SourceSeal's case lifecycle. It adds a deterministic seven-day challenge window, independent challengers, bounded revision history, strict evidence ingress rules, public deadline reads, and permissionless finalization.
| Area | Previous milestone | Finality milestone v3 |
|---|---|---|
| Lifecycle | Challengeable record with no closing state | Fixed seven-day window plus deterministic finalization |
| Participants | Submitter could also recheck | Original submitter cannot challenge their own claim |
| Evidence ingress | Public HTTPS URLs | Strict host, port, credential, fragment, size, and duplicate checks |
| Challenge bounds | Unbounded linked rechecks | Maximum ten append-only revisions per case |
| Policy provenance | Stored authority assessment | Versioned source-policy hash bound to the exact URL set |
| Public access | Wallet-oriented interface | Walletless record and deadline inspection |
| Delivery safety | Manual verification | CI for types, lint, production build, UI tests, and Python syntax |
| Contract API | Seven public methods | Eleven methods including status and finalization |
A different wallet can challenge during the fixed window; validators compare original and counter-evidence without favoring either submitter.
The accepted URL set and authority rule receive an immutable policy version and SHA-256 fingerprint.
The initial record remains queryable and each case can add at most ten separately addressable revisions.
After seven days, any wallet can seal the canonical verdict; early finalization and late challenges are rejected.
Official GenLayer transaction-context documentation passed the primary-source gate. Policy hash: 1587c6046cefd339333d9ac94353adce166c1dc6fef8b0c1b71e9eb8f1dee8a9
59fc391d06c73439e97ebd4f56dfae9edc9b2669b21fdc613a82750e0adec7acStored with the evidence URL and 273,516-byte response length; the independent recheck detected later dynamic-page drift.
2609b08f8ea729d1c797d832f0a4a49843e467c3d17347e2e202d9fb9d7e49f9. Challenge fingerprint: 511253fbc6b639c3fd34d3e0e42882e1b8e950ae7d03d040a8279f1d2aa734e9.0xC9425eC2f9899473a3A403550C6241CBC3d5224e0x3ce1bd5ba7CEDAabd60CB1f7276f4B0a6e89c70e0x94dc4ecE268F2791cbDDa7ad339DAe67443193a6