Resolver 3438d558: ASCII-clean install.ps1 + multi-TLD NRPT + VPS-first electrum
Parallel session was right — the previously-shipped f94834b5 pre-dated:
1. the ASCII em-dash sweep in setup/install.ps1 (Inno's [Run] uses
powershell.exe / PS 5.1; em-dashes in the file crashed the parser
under UAC, so the installer copied files but never registered the
scheduled task or NRPT rule)
2. the multi-TLD NRPT expansion (added .p2p .bit .nav alongside .bch)
3. the VPS-primary electrum server list — resolver-web.js now dials
wss://coinspectrum.duckdns.org:50011 first (Silent Mode's own
BCHN-backed BNS-only indexer), public servers as fallback
Result: a real user installing 3438d558 on a fresh Windows box now gets
a working system-wide resolver with no manual steps.
Deployed to dl.silentmode.st and mirrored to Sia bns/silentmode/.
This commit is contained in:
parent
9c5c6c12c9
commit
38951f42d5
1 changed files with 34 additions and 0 deletions
34
dev/test-our-indexer.mjs
Normal file
34
dev/test-our-indexer.mjs
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
// Prove Theseus can resolve hello.bch through ONLY our VPS-hosted BNS indexer.
|
||||
// Uses the directIP path (pinned IP + SNI) because this machine's system resolver
|
||||
// mangles Node's getaddrinfo — same reason test-directip.mjs exists.
|
||||
import WebSocket from "ws";
|
||||
import { resolveName, buildIndex, CHIPNET_ELECTRUM } from "../../Argus/src/lib/resolver-web.js";
|
||||
|
||||
const OURS = CHIPNET_ELECTRUM[0]; // freshly added — Silent Mode's own server
|
||||
const PUBLIC = CHIPNET_ELECTRUM.find(s => s.url.includes("chipnet.bch.ninja"));
|
||||
const NAME = "hello.bch";
|
||||
|
||||
console.log("Our seed[0]:", OURS);
|
||||
console.log("Public reference:", PUBLIC.url, "\n");
|
||||
|
||||
console.log("1) resolving", NAME, "via OUR indexer (directIP → pinned ip + SNI) …");
|
||||
const mine = await resolveName(NAME, {
|
||||
WebSocket, electrum: [OURS], directIP: true,
|
||||
});
|
||||
console.log(" ", mine ? "records: " + Object.keys(mine.records).join(", ") : "NOT FOUND");
|
||||
console.log(" txid:", mine?.txid, "height:", mine?.height, "category:", mine?.category);
|
||||
|
||||
console.log("\n2) resolving", NAME, "via a public server (directIP) …");
|
||||
const ref = await resolveName(NAME, {
|
||||
WebSocket, electrum: [PUBLIC], directIP: true,
|
||||
});
|
||||
console.log(" ", ref ? "records: " + Object.keys(ref.records).join(", ") : "NOT FOUND");
|
||||
|
||||
console.log("\n3) diff:");
|
||||
const ok = mine && ref &&
|
||||
JSON.stringify(mine.records) === JSON.stringify(ref.records) &&
|
||||
mine.category === ref.category &&
|
||||
mine.txid === ref.txid;
|
||||
console.log(ok ? " ✅ IDENTICAL — Theseus resolves hello.bch via our server."
|
||||
: " ❌ mismatch:\n mine=" + JSON.stringify(mine) + "\n ref =" + JSON.stringify(ref));
|
||||
process.exit(ok ? 0 : 1);
|
||||
Loading…
Add table
Reference in a new issue