# ShredPrism benchmarks, 8 October 2026: methodology

Three separate measurement categories. They are never combined into one latency or coverage claim.

## 1. Public endpoint / client-side (customer path)

- **Client:** one Windows workstation on a residential ISP in the Netherlands, connecting to `madeonsol.com` through Cloudflare. Node v24.12.0, `ws` 8.21.3.
- **Early stream:** `wss://madeonsol.com/ws/v1/early`, one subscription to all six channels, using a stream token from `POST /api/v1/stream/token` for a temporary ULTRA test key that was removed after the run.
- **Reference (confirmed):** `wss://madeonsol.com/ws/v1/dex-stream`, the MadeOnSol DEX firehose. It is fed by Kaldera Yellowstone gRPC at confirmed commitment and carries successful transactions only. The client used three subscriptions: `dex: pumpfun`, `dex: pumpswap` and `dex: launchlab`.
- **Reference (processed):** not measured on the customer path. Our processed-commitment feed is only reachable inside our production network, so any measurement there would be internal. Public RPC endpoints are never used as references.
- **Clock:** both WebSockets were read by the same process using one monotonic clock (`performance.now()`). The clock is read as the first statement of each message handler, before JSON parsing. No timestamps from different hosts are subtracted from each other. SNTP was used only to label the windows in UTC.
- **Sign convention:** `lead_ms = reference_receive_ms - early_receive_ms`. A positive value means the early observation reached the client first. "Equal" means |lead_ms| < 1 ms.
- **Matching:**
  - A match needs the same transaction signature and the same slot (the early `observed_slot` against the reference `slot`).
  - Each transaction counts once, using the first frame on each side.
  - Only early `observed` frames are compared. `outcome` frames are used only for the execution status of unmatched observations.
- **Windows:** three windows that do not overlap. Each has a 30 s warm-up that is excluded, 600 s of admission, and a 60 s tail in which late reference frames can still match but no new early events are admitted.
- **Families:**
  - Launches (`early:deploys`) are compared in full.
  - Trades (`early:trades`) are compared on a deterministic 1-in-10 sample of transactions (FNV-1a of the signature).
  - Locks, liquidity, migrations and token changes have no valid reference, so only their delivery is counted.
- **Percentiles:** nearest-rank, computed on the pooled samples. The combined figures are never an average of the windows. A p99 that rests on only a few samples is marked as uncertain.

## 2. Core production probe (internal, not customer data)

- **Setup:** a probe ran on the production host, consuming the early stream and the DEX firehose over local ports with one process and one wall clock. Matching is on signature + slot.
- **What it shows:** the relative arrival of two production feeds on the host. It has no Cloudflare, no WAN and no customer network.
- **Data:** per-transaction samples were not kept for these release checks, so the published file holds only the summary distributions.

## 3. Local development (7 October 2026, historical)

The decoder and loopback checkpoints were measured before release on a development machine with synthetic input. Their files are kept byte-for-byte. They measure decoder and delivery work, not the time a customer receives a signal.

## Limitations

- An early observation is provisional instruction intent, not proven execution or a realized fill. The reference contains only successful, confirmed trades, so this compares an early observation with a reference of different finality. It is not a guarantee that both describe the same execution.
- Launches without a developer buy in the create transaction produce no trade frame in the reference, so they stay unmatched. Unmatched counts are reported on both sides, with known explanations.
- 100 % earlier within the matches does not mean 100 % detection. 0 gap frames does not mean 100 % market coverage.
- One client, one ISP, one region and three short windows: these results were observed in this benchmark and are not guaranteed for every customer. A short test without incidents is not an uptime or latency SLA.
- The trade figures cover matched pairs only. Many early trades and many reference trades stayed unmatched, and the reason is not fully established: venue tagging in the firehose and the outer-instruction scope of the early decoder are the hypotheses. Do not read them as coverage figures.

## Files (SHA-256)

The hashes of the published files are listed on the benchmark page and in each summary file's `provenance` block.
