argus/src
Local Dev d19cd6bde7 BNS: commit-reveal for first registrations
A registration shows its name to the mempool before it is mined, and
"first REG wins" gives the name to whoever copies it with a better fee.
A registrant can now publish a hash first (CMT) and reveal a block later:
the REG carries the salt, and counts only if a commit of
sha256(salt, name, certificate lock) is already 1..144 blocks deep.
Someone who learns the name from the reveal has no such commit.

Who wins a contested name: the first valid REG opens a window of six
blocks, and within it the REG with the oldest commit takes the name; a REG
without a commit ranks by its own block. After the window the registration
is final. The addendum first let an older commit win for as long as the
commit lived, which left every registration open for a week and let a
standing commit beat any buyer; and a commit now lives a day, so keeping
one alive costs more than owning the name.

Optional on chipnet, where plain registrations keep working exactly as
before (the live registry reduces to the same index). Required on mainnet,
which starts empty. A registration straight into the covenant commits to
the covenant address, fixing owner and expiry at commit time.

One implementation for the JavaScript reducers; the Android reducer is now
a pure function and agrees with it on every history the tests build.
2026-10-05 22:29:38 +02:00
..
daemon resolver: echo EDNS OPT record so strict clients stop failing 2026-08-02 01:19:09 +02:00
gateway BNS: commit-reveal for first registrations 2026-10-05 22:29:38 +02:00
indexer BNS: resolvers read covenant-held names 2026-10-04 18:08:00 +02:00
lib BNS: commit-reveal for first registrations 2026-10-05 22:29:38 +02:00
web BNS: commit-reveal for first registrations 2026-10-05 22:29:38 +02:00
blocklist-admin.mjs blocklist: write side, operator tool, and the tests the roadmap asks for 2026-10-04 02:32:59 +02:00
cdn-name-index.mjs Ariadne for Android 0.20: every live TLD claimed; CDN name snapshot refreshed by the gateway 2026-09-28 02:01:55 +02:00
cdn-name-snapshot.mjs BNS: publish the raw name snapshot publicly, in two copies 2026-10-03 13:08:27 +02:00
config.js bns: one network table instead of chipnet constants copied into fifteen places 2026-09-27 21:18:37 +02:00
gen-contract-artifacts.mjs covenants: the subscription and the delivery escrow, on one shared base (draft) 2026-10-04 16:08:10 +02:00
generate-covenant-table.mjs BNS: resolvers read covenant-held names 2026-10-04 18:08:00 +02:00
generate-mobile-index.mjs Ariadne mobile 0.10: bundle BNS starter index in APK 2026-08-30 22:15:10 +02:00
generate-network-constants.mjs BNS: commit-reveal for first registrations 2026-10-05 22:29:38 +02:00
publish-name-mirror.mjs bns: one network table instead of chipnet constants copied into fifteen places 2026-09-27 21:18:37 +02:00
publish-tld-mirror.mjs bns: one network table instead of chipnet constants copied into fifteen places 2026-09-27 21:18:37 +02:00
register-electrum-list.mjs BNS: Sia+Nostr snapshot mirror, Theseus warm-start, VPS playbook, electrum.bch 2026-08-30 09:59:01 +02:00
register-hermes-chipnet.mjs Hermes: wire NIP-17 messaging into Theseus, provision chipnet hermes.bch 2026-08-18 20:14:43 +02:00
register.js Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
registrar-config.js bns: one network table instead of chipnet constants copied into fifteen places 2026-09-27 21:18:37 +02:00
resolve.js Theseus navigator UI overhaul, BNS-only indexer, site restructure 2026-07-30 08:16:55 +02:00
revert-silentmode-bch.mjs BNS: Sia+Nostr snapshot mirror, Theseus warm-start, VPS playbook, electrum.bch 2026-08-30 09:59:01 +02:00
seed-tld-beacon.mjs feat(argus): seed .cash TLD on the chipnet TLD beacon 2026-09-09 04:52:01 +02:00
snapshot-name-to-file.mjs bns: one network table instead of chipnet constants copied into fifteen places 2026-09-27 21:18:37 +02:00
update.js Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
wallet-app.js Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00