Theseus Navigator — Silent Mode's Electron browser with the Ariadne resolver built in.
Find a file
Local Dev 4c7d8e3f56 fix(aegis): 0.9.8 — address row columns, resizable QR, inline copy
The row's grid template still described the pre-0.9.2 layout — six
columns including an address cell that no longer exists — while the row
renders five. Every cell therefore sat one column left of where it
belonged: copy landed in the label's space, the amount in the old label
column, and the ⋯ in the amount column instead of the edge. That is the
whole cause of "the copy button collides with the amount" and "the last
edit button is not on the edge".

Now five columns for five cells: icon · label · copy · amount · menu,
8px gaps. The label is the flexible one, left-aligned, so it takes the
slack and truncates rather than squeezing the number. Verified at 520,
400 and 300px: no cell overlap at any width, no row overflow, and the
amount never clips — only long labels give way.

The copy glyph was the 📋 emoji, which has no glyph in this platform's
font stack and rendered as a tofu box that read like a stray character
stuck to the balance. Replaced with an inline SVG in both the row and
the address card. Both confirmation flashes now swap innerHTML rather
than textContent, which would have deleted the SVG and left a blank
square.

Address card: the address and its copy button share one row, so the
button sits at the end of the value it copies. The address clamps to two
lines and truncates beyond that instead of growing the card in a narrow
sidebar.

The QR is always visible and the panel is drag-resizable from a grip
under it (pointer events, arrow keys as a non-mouse path, clamped
90–420px, capped against the panel's own width so a size set on a wide
sidebar cannot overflow a narrow one, persisted). That replaces the
0.9.2 show/hide toggle — a size set once beats a binary, and it frees
the row Copy was sharing with a QR button.

drawQr was setting cv.style.width/height, which would have reset the
panel to its intrinsic size on every redraw — i.e. every time the
address changed. It now sets only the backing store and re-asserts the
user's size after drawing.

"Next unused address" is correct at the adapter level on both mainnet
and chipnet (tested: the index advances and the address changes), so the
reported failure is elsewhere. The handler was discarding the error and
flashing a bare "Failed", which is why there was nothing to diagnose; it
now surfaces the real message.
2026-09-24 22:30:10 +02:00
bundled-addons fix(aegis): 0.9.8 — address row columns, resizable QR, inline copy 2026-09-24 22:30:10 +02:00
dev Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
docs docs(theseus): add-on update channel lives on Sia, not the VPS — publish with sia-upload 2026-09-10 22:25:18 +02:00
lib fix(theseus/updater): run the installer only after the app has exited, via a detached batch helper with self-heal 2026-09-12 00:31:46 +02:00
nsis Ariadne 0.1.1 + Theseus fetches it from silentmode.st (no more bundling) 2026-09-08 01:27:51 +02:00
scripts fix(theseus/addons): windows-tar fixes for the addon updater, verified end-to-end 2026-09-07 22:28:55 +02:00
snapshots Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
addon-inject-preload.js feat(theseus/bchwallet): window.bitcoincash dapp bridge with per-origin permissions 2026-09-06 02:56:34 +02:00
addon-tab-preload.js feat(theseus/addons): CDP capture + editor Discard + manual update controls 2026-09-08 02:27:36 +02:00
addon-update-pubkeys.js feat(theseus/addons): bake operator pubkey — signed update endpoint now live 2026-09-07 23:57:47 +02:00
addon-updater.js fix(theseus/addons): sidebar auto-restore on tab switch + more forgiving tar 2026-09-09 02:38:32 +02:00
addons-host.js feat(theseus+aegis): WizardConnect auto-detection — wiz:// links + page scan 2026-09-23 00:16:49 +02:00
address-picker-preload.js Ship Theseus 0.3.4 3d6d3d6a (address-picker delete X, Enter picks highlight, URL bar override) 2026-09-02 04:28:54 +02:00
address-picker.html Ship Theseus 0.3.4 3d6d3d6a (address-picker delete X, Enter picks highlight, URL bar override) 2026-09-02 04:28:54 +02:00
approval-preload.js feat(theseus/bchwallet): per-site payment allowance for remembered sends 2026-09-06 12:43:17 +02:00
approval.html fix(theseus/light): sweep hardcoded acid → var(--acid), Theseus button uses BCH dark 2026-09-08 01:06:40 +02:00
bcnr-origin.js Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
bcnr-preload.js Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
BROWSER-PROMPT.md docs(theseus/prompts): tool-agnostic phrasing in session-prompt templates 2026-09-10 22:21:19 +02:00
chrome.html feat(theseus/chrome): page zoom, 80/20 address/search ratio, collapsed dock renders icon images 2026-09-09 23:04:22 +02:00
collision-preload.js Collision modes (BCNR/ICANN) + root TLD cert + VPS electrum-source indexer 2026-08-02 11:39:00 +02:00
collision.html Theseus: in-tab collision prompt + toggle-style switcher + auto-switch 2026-08-02 14:43:31 +02:00
DESIGN-integrated-wallet.md Ship Theseus 0.0.8: window.bcnr dApp API + eTLD+1 permission origins 2026-08-31 01:38:55 +02:00
DESIGN-password-manager.md Snapshot in-progress work: Ariadne mobile, Theseus password manager, Hephaestus 2026-08-14 23:17:18 +02:00
DESIGN-wallet-multi-account-amendment.md docs(theseus): draft wallet multi-account amendment 2026-09-09 02:17:01 +02:00
downloads-preload.js Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
downloads.html Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
engine-picker-preload.js Theseus: Firefox-style search picker (favicons, catalog, scan) 2026-07-30 22:55:52 +02:00
engine-picker.html Theseus: download tracker, search split, discover-more tier, UX polish 2026-08-02 15:31:47 +02:00
error-preload.js feat(theseus/error): offline banner + BCNR did-you-mean on typos 2026-09-04 20:21:30 +02:00
error.html fix(theseus/light): sweep hardcoded acid → var(--acid), Theseus button uses BCH dark 2026-09-08 01:06:40 +02:00
GOTCHAS.md docs: VPS is SilentMode (not Coinspectrum); sketch storage-as-product roadmap 2026-08-18 03:21:03 +02:00
home-preload.js fix(theseus/home): dynamic search-engine name in placeholder 2026-09-08 00:20:37 +02:00
home.html fix(theseus/light): sweep hardcoded acid → var(--acid), Theseus button uses BCH dark 2026-09-08 01:06:40 +02:00
link-status-preload.js Theseus: link-hover status bar (bottom-left href pill) 2026-08-29 15:49:30 +02:00
link-status.html feat(theseus/chrome): Ariadne's Thread registry menu, address-bar overflow fix, full-width link pill 2026-09-09 11:40:46 +02:00
main.js feat(theseus+aegis): WizardConnect auto-detection — wiz:// links + page scan 2026-09-23 00:16:49 +02:00
messages-preload.js Hermes: optional bind to password vault (skip the second mnemonic prompt) 2026-08-19 00:38:52 +02:00
messages.html fix: use BCH-primary #0AC18E in light mode + strip Electron token from UA 2026-09-08 01:04:27 +02:00
package-lock.json chore(theseus): sync package-lock.json with package.json version bump 2026-09-08 18:30:59 +02:00
package.json chore(theseus): 0.3.47 — plug-in category + panel-driven addon self-update, aegis 0.6.31 2026-09-14 02:30:51 +02:00
PACKAGING-PROMPT.md Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
PENDING.md Ship Theseus 0.0.2 b62ecf52 (shield green + picker→Search + toggle refactor) 2026-08-06 01:55:46 +02:00
popover-preload.js Collision modes (BCNR/ICANN) + root TLD cert + VPS electrum-source indexer 2026-08-02 11:39:00 +02:00
popover.html Theseus UX polish: BCDN/BCNR terminology + soft-mode prompt redesign 2026-08-02 13:02:47 +02:00
preload.js feat(theseus/chrome): page zoom, 80/20 address/search ratio, collapsed dock renders icon images 2026-09-09 23:04:22 +02:00
pw-fill-preload.js Theseus UX batch: tabs, address history, password autofill MVP, home cards 2026-08-17 02:17:12 +02:00
pw-fill.html Theseus UX batch: tabs, address history, password autofill MVP, home cards 2026-08-17 02:17:12 +02:00
README.md Initial commit — Silent Mode baseline (2026-07-29) 2026-07-29 13:54:34 +02:00
RELEASE-HANDOFF.md Ship Theseus 0.0.2 (SameSite cookie shim) 2026-08-05 18:51:16 +02:00
ROADMAP-identity-wallet.md docs(theseus): note the Siacoin wallet's derivation and node-URL policy 2026-09-06 18:49:33 +02:00
SESSION-PROMPT-identity-wallet.md docs(theseus/prompts): tool-agnostic phrasing in session-prompt templates 2026-09-10 22:21:19 +02:00
settings-preload.js feat(theseus/settings): Aegis update card + DevTools open in tab sidebar 2026-09-08 18:09:55 +02:00
settings.html chore(theseus): 0.3.47 — plug-in category + panel-driven addon self-update, aegis 0.6.31 2026-09-14 02:30:51 +02:00
sidebar-preload.js feat(theseus/screenshot): 0.6.1 — text tool fix, category wrap, sidebar close X 2026-09-09 10:55:21 +02:00
test-installer.wsb chore: push-split helper for per-project forge repos + Windows Sandbox installer config 2026-09-09 10:33:23 +02:00

Theseus Navigator

The browser — the consumer face of the stack. Native .bch support with the resolver built in, so a user installs one app instead of modifying their operating system. Named for the thread through the labyrinth: the chain is the thread.

Scope

  • Electron shell (Chromium engine, no forking): tabs, address bar, history.
  • In-process .bch resolution — no system daemon, no NRPT, no OS trust-store changes; reuses bns.js from the BNS repo as a library.
  • Record handling: h render, ip connect, p/s3 via in-app gateway, u redirect.
  • TLS via cert-verify hook (Electron setCertificateVerifyProc) against the BNS root / on-chain tls fingerprints — no OS store touched.
  • Provenance indicator: shows whether a page came from the chain / Sia / a direct server, with NFT category and record type — the decentralized padlock.

Status: not started

Build it in its own session/repo. The ready-to-paste brief is BROWSER-PROMPT.md (a reference copy in this folder; canonical source is D:\Dev\NameCoin\BROWSER-PROMPT.md — if they diverge, NameCoin wins). It points here and reuses the resolver core. theseus.bch is registered and should eventually serve the browser's own homepage over the protocol it implements.

Roadmap

BUILD-ROADMAP.md Stage 5.