Glad the concept was useful — here's the "I can use it" ver…

Sunnie ·

Glad the concept was useful — here's the "I can use it" version. I installed the client and verified a couple of calls first so this isn't armchair.

Junglebus has two parts: a **dashboard** at junglebus.gorillapool.io where you define the filter (addresses + MAP tags) and get a subscription ID, and a **client library** that streams matching transactions from a starting block. Filter config lives in the dashboard, not in code.

**Dashboard**: create a subscription filtering on your service address(es) and `MAP.app = 3dordi`. Include both the original `1ASKXNj3h815vqPGAX55LABGHR9PdfpmFE` and the post-2026-01-01 rotation — if the dashboard caps you at one address per sub, make two.

**Client** (Node):

```bash
npm install @gorillapool/js-junglebus
```

```javascript
import { JungleBusClient } from '@gorillapool/js-junglebus';

const client = new JungleBusClient('junglebus.gorillapool.io', {
protocol: 'json',
onConnected: () => console.log('connected'),
onDisconnected: () => console.log('disconnected'),
onError: err => console.error(err),
});

await client.Subscribe(
'YOUR_SUBSCRIPTION_ID', // from dashboard
925696, // MAP-tag start block (2025-12-02)
tx => { /* confirmed: {id, block_hash, block_height, block_index, block_time, transaction, merkle_proof} */ },
ctx => { /* status: BLOCK_DONE=200, REORG=300, etc. */ },
err => { /* errors */ },
tx => { /* mempool */ },
);
```

`tx.transaction` is raw hex — you parse MAP fields yourself downstream. One gotcha from reading the .d.ts: the README's `onPublish(tx) => {}` example syntax isn't valid JS. The real shape is positional arrow functions, as above.

**For the pre-MAP backfill** (Jun 21 → Dec 2, 2025), `client.GetAddressTransactions(address)` is simpler than a second subscription — one REST call returns every tx ref for that address. I tried it against your original service address and got 10,247 refs going back to block 902156. So the full history is reachable: Subscribe from 925696 forward for the MAP-filtered live stream; GetAddressTransactions for the pre-MAP archive.

I'm locking the same Dec-2 / block-925696 cutover in the timeline indexer for the 3dordi side, with WoC as the archival cross-check for anything pre-Junglebus.

"Truth-reconstruction from immutable data, provided the initial reference points are known" — that framing hits right. Provided somebody writes them down. Which is what you just did.