@artblocks/abx-token-api 0.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/abxjs.d.ts +13 -0
- package/dist/abxjs.d.ts.map +1 -0
- package/dist/abxjs.js +49 -0
- package/dist/abxjs.js.map +1 -0
- package/dist/art.d.ts +26 -0
- package/dist/art.d.ts.map +1 -0
- package/dist/art.js +85 -0
- package/dist/art.js.map +1 -0
- package/dist/code.d.ts +73 -0
- package/dist/code.d.ts.map +1 -0
- package/dist/code.js +216 -0
- package/dist/code.js.map +1 -0
- package/dist/dashboard.d.ts +12 -0
- package/dist/dashboard.d.ts.map +1 -0
- package/dist/dashboard.js +231 -0
- package/dist/dashboard.js.map +1 -0
- package/dist/deps.d.ts +146 -0
- package/dist/deps.d.ts.map +1 -0
- package/dist/deps.js +297 -0
- package/dist/deps.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/inline.d.ts +19 -0
- package/dist/inline.d.ts.map +1 -0
- package/dist/inline.js +23 -0
- package/dist/inline.js.map +1 -0
- package/dist/metadata.d.ts +89 -0
- package/dist/metadata.d.ts.map +1 -0
- package/dist/metadata.js +673 -0
- package/dist/metadata.js.map +1 -0
- package/dist/resolve.d.ts +74 -0
- package/dist/resolve.d.ts.map +1 -0
- package/dist/resolve.js +107 -0
- package/dist/resolve.js.map +1 -0
- package/dist/server.d.ts +91 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +940 -0
- package/dist/server.js.map +1 -0
- package/dist/watcher.d.ts +56 -0
- package/dist/watcher.d.ts.map +1 -0
- package/dist/watcher.js +179 -0
- package/dist/watcher.js.map +1 -0
- package/package.json +50 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { SelfHostIndexer } from '@artblocks/abx-indexer';
|
|
2
|
+
/**
|
|
3
|
+
* The chain watcher — the resolver's one live subscription to the chain, and the trigger
|
|
4
|
+
* source for the whole effects layer (`specs/protocol/effects.md`).
|
|
5
|
+
*
|
|
6
|
+
* Architecture (deliberate):
|
|
7
|
+
* - **The resolver is the ONLY chain consumer.** One incremental `eth_getLogs` poll covers
|
|
8
|
+
* every registered project (a single multi-address call per tick); effects never watch the
|
|
9
|
+
* chain themselves — they are notified. No websockets: polling reuses the deterministic
|
|
10
|
+
* reconstruction machinery, works on any RPC, and a marketplace thumbnail doesn't need
|
|
11
|
+
* sub-second latency. (A WSS tip-watcher would be a future latency opt-in that calls the
|
|
12
|
+
* same incremental reindex — never a second code path.)
|
|
13
|
+
* - **Notifications are coarse and effect-agnostic**: "project X changed (these tokens, or
|
|
14
|
+
* all)" — never "re-render". Each registered effect reacts asynchronously and dedups by its
|
|
15
|
+
* content address (settled inputsHash), so over-notification is harmless by construction;
|
|
16
|
+
* the token-id hint is an optimization, not a contract.
|
|
17
|
+
* - **The watermark is notification bookkeeping, not indexing truth.** Indexing truth stays
|
|
18
|
+
* per-project (`toBlock` + the deterministic replay). Losing the watermark merely re-notifies
|
|
19
|
+
* once; idempotency absorbs it. It advances only when a tick fully succeeds, so a failed
|
|
20
|
+
* reindex retries the same window next tick instead of silently skipping a delta.
|
|
21
|
+
* - **No reorg machinery** (owner call): post-PoS reorgs are rare; the repair is the existing
|
|
22
|
+
* deterministic full replay (`abx index <addr> --full`).
|
|
23
|
+
*/
|
|
24
|
+
export interface WatcherStatus {
|
|
25
|
+
running: boolean;
|
|
26
|
+
intervalMs: number;
|
|
27
|
+
/** Per chainKey: the last head seen and the notified-through watermark. */
|
|
28
|
+
chains: Record<string, {
|
|
29
|
+
head: string | null;
|
|
30
|
+
watermark: string | null;
|
|
31
|
+
}>;
|
|
32
|
+
lastDeltaAt: string | null;
|
|
33
|
+
lastError: string | null;
|
|
34
|
+
}
|
|
35
|
+
export interface WatcherOptions {
|
|
36
|
+
indexer: SelfHostIndexer;
|
|
37
|
+
/** Poll cadence. Default ABX_WATCH_INTERVAL_MS → 12s. `0` disables (caller should not start). */
|
|
38
|
+
intervalMs?: number;
|
|
39
|
+
/** Notification sink — defaults to {@link notifyEffects} (the runner's `POST /notify`). */
|
|
40
|
+
notify?: (address: string, tokenIds?: string[]) => void;
|
|
41
|
+
log?: (line: string) => void;
|
|
42
|
+
}
|
|
43
|
+
export declare const DEFAULT_WATCH_INTERVAL_MS = 12000;
|
|
44
|
+
export declare function watchIntervalMs(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Fire-and-forget generalized effects notification — `POST /notify {address, tokenIds?}` on the
|
|
47
|
+
* runner at ABX_EFFECTS_URL (bearer ABX_EFFECTS_TOKEN when the runner is public). Deliberately
|
|
48
|
+
* dumb: it says "something changed here", never what to do about it. A missing/down runner costs
|
|
49
|
+
* nothing — its own periodic sweep is the eventual floor.
|
|
50
|
+
*/
|
|
51
|
+
export declare function notifyEffects(address: string, tokenIds?: string[]): void;
|
|
52
|
+
export declare function startChainWatcher(opts: WatcherOptions): {
|
|
53
|
+
stop(): void;
|
|
54
|
+
status(): WatcherStatus;
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=watcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAC,CAAC,CAAC;IACxE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,eAAe,CAAC;IACzB,iGAAiG;IACjG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2FAA2F;IAC3F,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACxD,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAWD,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD,wBAAgB,eAAe,IAAI,MAAM,CAKxC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAWxE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG;IAAC,IAAI,IAAI,IAAI,CAAC;IAAC,MAAM,IAAI,aAAa,CAAA;CAAC,CAiJ/F"}
|
package/dist/watcher.js
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { parseEventLogs } from 'viem';
|
|
2
|
+
import { spineEventAbi } from '@artblocks/abx-sdk';
|
|
3
|
+
/** Largest block window one tick will scan; a longer gap (resolver was down) continues next tick. */
|
|
4
|
+
const MAX_BLOCKS_PER_TICK = 5000n;
|
|
5
|
+
/** Consecutive-failure backoff cap (multiplier on the base interval). */
|
|
6
|
+
const MAX_BACKOFF = 8;
|
|
7
|
+
/** Steady-state proof-of-life cadence: on a quiet stretch (nothing else logged) the watcher emits
|
|
8
|
+
* ONE "alive" line at most this often, so `tail`ing a resolver shows it's watching, not hung —
|
|
9
|
+
* without per-tick spam. Deltas and first-run lines reset the clock (they're proof enough). */
|
|
10
|
+
const HEARTBEAT_MS = 120_000;
|
|
11
|
+
export const DEFAULT_WATCH_INTERVAL_MS = 12_000;
|
|
12
|
+
export function watchIntervalMs() {
|
|
13
|
+
const raw = process.env.ABX_WATCH_INTERVAL_MS;
|
|
14
|
+
if (raw === undefined || raw === '')
|
|
15
|
+
return DEFAULT_WATCH_INTERVAL_MS;
|
|
16
|
+
const n = Number(raw);
|
|
17
|
+
return Number.isFinite(n) && n >= 0 ? n : DEFAULT_WATCH_INTERVAL_MS;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Fire-and-forget generalized effects notification — `POST /notify {address, tokenIds?}` on the
|
|
21
|
+
* runner at ABX_EFFECTS_URL (bearer ABX_EFFECTS_TOKEN when the runner is public). Deliberately
|
|
22
|
+
* dumb: it says "something changed here", never what to do about it. A missing/down runner costs
|
|
23
|
+
* nothing — its own periodic sweep is the eventual floor.
|
|
24
|
+
*/
|
|
25
|
+
export function notifyEffects(address, tokenIds) {
|
|
26
|
+
const base = process.env.ABX_EFFECTS_URL;
|
|
27
|
+
if (!base)
|
|
28
|
+
return;
|
|
29
|
+
const headers = { 'content-type': 'application/json' };
|
|
30
|
+
const token = process.env.ABX_EFFECTS_TOKEN;
|
|
31
|
+
if (token)
|
|
32
|
+
headers.authorization = `Bearer ${token}`;
|
|
33
|
+
fetch(`${base.replace(/\/$/, '')}/notify`, {
|
|
34
|
+
method: 'POST',
|
|
35
|
+
headers,
|
|
36
|
+
body: JSON.stringify(tokenIds?.length ? { address, tokenIds } : { address }),
|
|
37
|
+
}).catch(() => undefined);
|
|
38
|
+
}
|
|
39
|
+
export function startChainWatcher(opts) {
|
|
40
|
+
const { indexer } = opts;
|
|
41
|
+
const intervalMs = opts.intervalMs ?? watchIntervalMs();
|
|
42
|
+
const notify = opts.notify ?? notifyEffects;
|
|
43
|
+
const rawLog = opts.log ?? ((line) => console.log(`[watch] ${line}`));
|
|
44
|
+
// Any real log line (first-run, delta, failure, heartbeat) stamps this — the heartbeat only fires
|
|
45
|
+
// after HEARTBEAT_MS of silence, so an active watcher never double-logs.
|
|
46
|
+
let lastLogAt = 0;
|
|
47
|
+
const log = (line) => {
|
|
48
|
+
lastLogAt = Date.now();
|
|
49
|
+
rawLog(line);
|
|
50
|
+
};
|
|
51
|
+
const status = { running: true, intervalMs, chains: {}, lastDeltaAt: null, lastError: null };
|
|
52
|
+
let stopped = false;
|
|
53
|
+
let timer = null;
|
|
54
|
+
let failures = 0;
|
|
55
|
+
async function tick() {
|
|
56
|
+
const regs = indexer.store.listRegistrations();
|
|
57
|
+
if (regs.length === 0)
|
|
58
|
+
return; // nothing registered — idle (re-checked every tick)
|
|
59
|
+
// Group by chain — one poll per chain covers all its projects in a single getLogs.
|
|
60
|
+
const byChain = new Map();
|
|
61
|
+
for (const r of regs) {
|
|
62
|
+
const list = byChain.get(r.chainKey) ?? [];
|
|
63
|
+
list.push(r.address);
|
|
64
|
+
byChain.set(r.chainKey, list);
|
|
65
|
+
}
|
|
66
|
+
for (const [chainKey, addresses] of byChain) {
|
|
67
|
+
const client = indexer.publicClient(chainKey);
|
|
68
|
+
const head = await client.getBlockNumber();
|
|
69
|
+
const metaKey = `watch:${chainKey}`;
|
|
70
|
+
const stored = indexer.store.getMeta(metaKey);
|
|
71
|
+
status.chains[chainKey] = { head: head.toString(), watermark: stored };
|
|
72
|
+
// Persist the head so the resolver's `GET /api/watch` (and `abx verify --remote`) can show
|
|
73
|
+
// liveness for a HOSTED node where you can't tail the log. Cheap k/v, same table as the watermark.
|
|
74
|
+
indexer.store.putMeta(`watch:${chainKey}:head`, head.toString());
|
|
75
|
+
// First run: start at head. Projects were fully indexed when added — the watcher only
|
|
76
|
+
// tracks NEW deltas; backfill is `add`/`index`'s job, never a genesis surprise here.
|
|
77
|
+
if (stored === null) {
|
|
78
|
+
indexer.store.putMeta(metaKey, head.toString());
|
|
79
|
+
status.chains[chainKey].watermark = head.toString();
|
|
80
|
+
log(`${chainKey}: watching ${addresses.length} project(s) from block ${head}`);
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
const watermark = BigInt(stored);
|
|
84
|
+
if (head <= watermark)
|
|
85
|
+
continue; // no new blocks
|
|
86
|
+
const from = watermark + 1n;
|
|
87
|
+
const to = head - from + 1n > MAX_BLOCKS_PER_TICK ? from + MAX_BLOCKS_PER_TICK - 1n : head;
|
|
88
|
+
const logs = (await client.getLogs({
|
|
89
|
+
address: addresses,
|
|
90
|
+
fromBlock: from,
|
|
91
|
+
toBlock: to,
|
|
92
|
+
}));
|
|
93
|
+
if (logs.length > 0) {
|
|
94
|
+
// Group the delta by project, reindex each touched projection (the same deterministic
|
|
95
|
+
// incremental fold every other trigger uses), and coalesce to ONE notification per
|
|
96
|
+
// project on its FINAL state — a backfill of N events never fans out N notifications.
|
|
97
|
+
const touched = new Map();
|
|
98
|
+
for (const l of logs) {
|
|
99
|
+
const key = l.address.toLowerCase();
|
|
100
|
+
const list = touched.get(key) ?? [];
|
|
101
|
+
list.push(l);
|
|
102
|
+
touched.set(key, list);
|
|
103
|
+
}
|
|
104
|
+
for (const [addr, projectLogs] of touched) {
|
|
105
|
+
await indexer.reindex(addr); // throws ⇒ watermark holds; same window retries next tick
|
|
106
|
+
const hint = tokenHint(projectLogs);
|
|
107
|
+
notify(addr, hint);
|
|
108
|
+
log(`${chainKey}: ${addr} changed (${projectLogs.length} log(s), blocks ${from}–${to}) → notified effects${hint ? ` [tokens ${hint.join(',')}]` : ' [all]'}`);
|
|
109
|
+
}
|
|
110
|
+
status.lastDeltaAt = new Date().toISOString();
|
|
111
|
+
indexer.store.putMeta('watch:lastDeltaAt', status.lastDeltaAt);
|
|
112
|
+
}
|
|
113
|
+
indexer.store.putMeta(metaKey, to.toString());
|
|
114
|
+
status.chains[chainKey].watermark = to.toString();
|
|
115
|
+
}
|
|
116
|
+
// Tick completed. Record it (proof-of-life for the API) and, if we've been quiet a while, emit
|
|
117
|
+
// one heartbeat so a human tailing the resolver sees the watcher is alive between changes.
|
|
118
|
+
indexer.store.putMeta('watch:pollAt', new Date().toISOString());
|
|
119
|
+
if (Date.now() - lastLogAt >= HEARTBEAT_MS) {
|
|
120
|
+
const summary = Object.entries(status.chains)
|
|
121
|
+
.map(([ck, s]) => `${ck} @ block ${s.head}`)
|
|
122
|
+
.join(', ');
|
|
123
|
+
log(`alive — watching ${summary || 'no registered projects'}${status.lastDeltaAt ? ` · last change ${status.lastDeltaAt}` : ' · no changes seen yet'}`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* The changed-token hint for one project's delta: token ids when EVERY decoded event is
|
|
128
|
+
* token-scoped, else undefined (= "all minted"). A hint, not a contract — the settled-hash
|
|
129
|
+
* probe downstream makes over-notification free, so unknown/contract-scope events simply
|
|
130
|
+
* widen the sweep rather than risk missing a token.
|
|
131
|
+
*/
|
|
132
|
+
function tokenHint(projectLogs) {
|
|
133
|
+
try {
|
|
134
|
+
const parsed = parseEventLogs({ abi: spineEventAbi, logs: projectLogs });
|
|
135
|
+
if (parsed.length === 0)
|
|
136
|
+
return undefined; // nothing decodable — sweep wide
|
|
137
|
+
const ids = new Set();
|
|
138
|
+
for (const ev of parsed) {
|
|
139
|
+
const args = ev.args;
|
|
140
|
+
const id = args?.tokenId ?? args?._tokenId ?? args?.id;
|
|
141
|
+
if (id === undefined || id === null)
|
|
142
|
+
return undefined; // a contract-scope event ⇒ all
|
|
143
|
+
ids.add(String(id));
|
|
144
|
+
}
|
|
145
|
+
return [...ids];
|
|
146
|
+
}
|
|
147
|
+
catch {
|
|
148
|
+
return undefined;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
function loop() {
|
|
152
|
+
if (stopped)
|
|
153
|
+
return;
|
|
154
|
+
timer = setTimeout(async () => {
|
|
155
|
+
try {
|
|
156
|
+
await tick();
|
|
157
|
+
failures = 0;
|
|
158
|
+
status.lastError = null;
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
failures = Math.min(failures + 1, MAX_BACKOFF);
|
|
162
|
+
status.lastError = err.message;
|
|
163
|
+
log(`tick failed (retry with backoff): ${err.message}`);
|
|
164
|
+
}
|
|
165
|
+
loop();
|
|
166
|
+
}, intervalMs * Math.max(1, failures)); // linear backoff up to MAX_BACKOFF× on repeated failure
|
|
167
|
+
}
|
|
168
|
+
loop();
|
|
169
|
+
return {
|
|
170
|
+
stop() {
|
|
171
|
+
stopped = true;
|
|
172
|
+
status.running = false;
|
|
173
|
+
if (timer)
|
|
174
|
+
clearTimeout(timer);
|
|
175
|
+
},
|
|
176
|
+
status: () => status,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=watcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../src/watcher.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@artblocks/abx-token-api",
|
|
3
|
+
"version": "0.1.0-alpha.0",
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"description": "ABX Self-Host Toolkit (Layer 3) — the reference token API + byte-custody server. Serves standard ERC-721 metadata, the image, a JSON state API, and a demo dashboard, all from the reconstructed projection.",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
"LICENSE"
|
|
17
|
+
],
|
|
18
|
+
"sideEffects": false,
|
|
19
|
+
"engines": {
|
|
20
|
+
"node": ">=22.5.0"
|
|
21
|
+
},
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/ArtBlocks/abx.git",
|
|
25
|
+
"directory": "packages/token-api"
|
|
26
|
+
},
|
|
27
|
+
"homepage": "https://github.com/ArtBlocks/abx#readme",
|
|
28
|
+
"bugs": "https://github.com/ArtBlocks/abx/issues",
|
|
29
|
+
"keywords": [
|
|
30
|
+
"abx",
|
|
31
|
+
"nft",
|
|
32
|
+
"erc721",
|
|
33
|
+
"metadata",
|
|
34
|
+
"resolver",
|
|
35
|
+
"art-blocks"
|
|
36
|
+
],
|
|
37
|
+
"publishConfig": {
|
|
38
|
+
"access": "public"
|
|
39
|
+
},
|
|
40
|
+
"dependencies": {
|
|
41
|
+
"viem": "^2.21.0",
|
|
42
|
+
"@artblocks/abx-indexer": "0.1.0-alpha.0",
|
|
43
|
+
"@artblocks/abx-sdk": "0.1.0-alpha.0",
|
|
44
|
+
"@artblocks/abx-storage": "0.1.0-alpha.0"
|
|
45
|
+
},
|
|
46
|
+
"scripts": {
|
|
47
|
+
"build": "tsc -b tsconfig.build.json"
|
|
48
|
+
},
|
|
49
|
+
"types": "./dist/index.d.ts"
|
|
50
|
+
}
|