prometheus/service
Local Dev 1abaefe948 prometheus: allow BCH-address-only publishers (no BNS name needed)
A BNS name costs cents but is still a gate — someone discovering Prometheus
for the first time shouldn't have to go register sirius.x before they can
publish. Accept a raw cashaddress in the `publisher` field: the sign path
skips the BNS owner-of lookup and treats the field itself as the signing
address, which is still an ECDSA pubkey the chain verifies against.

- listings.js: PUBLISHER_RE = BNS name OR cashaddress; isCashaddr() helper;
  verify branch skips lookupName() and uses the address directly as
  expectedAddress (recovery-is-not-verification still holds — we compare
  the recovered address to the claimed one, both sides)
- pages.js submit form: pattern + placeholder + hint explain both options,
  with the trade-off (address publishers display as truncated hex instead
  of a readable name)
- pages-browse.js: shortenPublisher() collapses raw addresses to
  bchtest:qpumq…sh478 on cards + detail page + <title>; full address kept
  in title attribute for hover, and in the URL path. BNS names are
  untouched.
2026-10-23 02:02:07 +03:00
..
lib prometheus: signed listings — BIP-137 publisher sign, SQLite index 2026-10-08 01:48:12 +02:00
admin-pages.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
admin-session.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
admin.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
audit.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
bns.js prometheus: signed listings — BIP-137 publisher sign, SQLite index 2026-10-08 01:48:12 +02:00
clamd.js prometheus: VirusTotal enrichment, gated on VIRUSTOTAL_API_KEY 2026-10-08 21:44:34 +02:00
db.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
invoice-api.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
layout.js prometheus: standalone identity + first-wave Silent Mode listings 2026-10-09 01:23:21 +02:00
listings.js prometheus: allow BCH-address-only publishers (no BNS name needed) 2026-10-23 02:02:07 +03:00
modes.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
pages-browse.js prometheus: allow BCH-address-only publishers (no BNS name needed) 2026-10-23 02:02:07 +03:00
pages.js prometheus: allow BCH-address-only publishers (no BNS name needed) 2026-10-23 02:02:07 +03:00
payments.js prometheus: size-tiered pricing, 2 GiB cap, new hero copy, SEO LD 2026-10-22 23:31:43 +03:00
price.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
seo.js prometheus: weekly s3 snapshot of the browse surface to bns/prometheus 2026-10-08 21:42:54 +02:00
server.js prometheus: taxonomy — Apps / Games / FinTech, with sub-chips inside Apps 2026-10-22 22:39:08 +03:00
signing.js prometheus: upload + ClamAV scan + signed scan reports 2026-10-05 22:41:55 +02:00
uploads.js prometheus: size-tiered pricing, 2 GiB cap, new hero copy, SEO LD 2026-10-22 23:31:43 +03:00
virustotal.js prometheus: VirusTotal enrichment, gated on VIRUSTOTAL_API_KEY 2026-10-08 21:44:34 +02:00