Theseus Navigator — Silent Mode's Electron browser with the Ariadne resolver built in.
Eight decimals of tail sat exactly where the eye lands. The hero now shows two decimals once there is a whole part, because the whole units already carry the significant digits, and digs past leading zeros otherwise so amounts under 1 keep roughly four significant figures: 1204.23234145 -> 1,204.23 0.23234145 -> 0.2323 0.00012345 -> 0.0001234 0.00000001 -> 0.00000001 A flat "two decimal places" rule is the obvious version of this and it is wrong: it renders 0.00042 BCH as 0.00 and the wallet reads as empty. The rule here never collapses a non-zero balance to zeros, and it truncates rather than rounds, so the figure shown is never more than the wallet holds and sending the displayed amount always clears. An ellipsis marks the cut, hover gives the exact figure, clicking pins full precision and is remembered. Only this hero abbreviates — Send, MAX, history and the wallet strip still call fmtBig, so every number acted on is exact. Also repairs the regexes in the same function, which lost their backslashes when the earlier commit was scripted: /^(-?)(\d+)(\.\d+)?$/ had become /^(-?)(d+)(.d+)?$/, matching the letter "d". Still valid JS, so it parsed cleanly and every balance quietly fell through to unformatted text — the grouping and the dimmed decimals introduced in bb639a9 had never once run. Caught by testing the function body extracted from the file rather than a transcription of it. |
||
|---|---|---|
| bundled-addons | ||
| dev | ||
| docs | ||
| lib | ||
| nsis | ||
| scripts | ||
| snapshots | ||
| addon-inject-preload.js | ||
| addon-tab-preload.js | ||
| addon-update-pubkeys.js | ||
| addon-updater.js | ||
| addons-host.js | ||
| address-picker-preload.js | ||
| address-picker.html | ||
| approval-preload.js | ||
| approval.html | ||
| bcnr-origin.js | ||
| bcnr-preload.js | ||
| BROWSER-PROMPT.md | ||
| chrome.html | ||
| collision-preload.js | ||
| collision.html | ||
| DESIGN-integrated-wallet.md | ||
| DESIGN-password-manager.md | ||
| DESIGN-wallet-multi-account-amendment.md | ||
| downloads-preload.js | ||
| downloads.html | ||
| engine-picker-preload.js | ||
| engine-picker.html | ||
| error-preload.js | ||
| error.html | ||
| GOTCHAS.md | ||
| home-preload.js | ||
| home.html | ||
| link-status-preload.js | ||
| link-status.html | ||
| main.js | ||
| messages-preload.js | ||
| messages.html | ||
| package-lock.json | ||
| package.json | ||
| PACKAGING-PROMPT.md | ||
| PENDING.md | ||
| popover-preload.js | ||
| popover.html | ||
| preload.js | ||
| pw-fill-preload.js | ||
| pw-fill.html | ||
| README.md | ||
| RELEASE-HANDOFF.md | ||
| ROADMAP-identity-wallet.md | ||
| SESSION-PROMPT-identity-wallet.md | ||
| settings-preload.js | ||
| settings.html | ||
| sidebar-preload.js | ||
| test-installer.wsb | ||
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
.bchresolution — no system daemon, no NRPT, no OS trust-store changes; reusesbns.jsfrom the BNS repo as a library. - Record handling:
hrender,ipconnect,p/s3via in-app gateway,uredirect. - TLS via cert-verify hook (Electron
setCertificateVerifyProc) against the BNS root / on-chaintlsfingerprints — 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.