Ship Theseus 208b059a (downloads + search split + UX polish)
Rebuild + redeploy of the prior commit (4654940). New hashes:
TheseusNavigator-Setup-0.0.1.exe
sha256 208b059a14c8ddf10cf553e530e77f34129cf8ba999b697da08720ffc3685d22
TheseusNavigator-0.0.1-portable.exe
sha256 bf08976500978dcd0d7305b04cc1480e63da54a24a71253cf4cfd9c910431a89
Verified all runtime-loaded files present in app.asar (downloads.html,
downloads-preload.js, engine-picker.html, popover.html — the trap from
the earlier 6bbccf9c build).
Live on dl.silentmode.st + Sia bns/silentmode/. Manifest date bumped to
2026-08-02. Previous build backed up on the VPS at
/opt/silent-mode/dl/_prev/ so rollback is `cp` away if the new build
misbehaves. On-chain pointer at releases.silentmode.bch is unchanged —
it publishes {"u":"https://dl.silentmode.st/releases-manifest.json"} so
new hashes are reachable through BCNR too, no wallet spend needed.
PENDING.md drained — this session's group is empty now.
This commit is contained in:
parent
c2ba26877f
commit
6bb8ecf48a
1 changed files with 13 additions and 122 deletions
135
PENDING.md
135
PENDING.md
|
|
@ -12,134 +12,25 @@ Last updated: 2026-08-02.
|
|||
|
||||
---
|
||||
|
||||
## session: `2026-08-02:theseus-ux-polish`
|
||||
|
||||
Owner's focus: Theseus UX polish + downloads. Everything below bundles
|
||||
into one commit + one Theseus rebuild + redeploy.
|
||||
|
||||
### Settings — General
|
||||
|
||||
- **Startup group** at the top of `#general` with "Open previous windows
|
||||
and tabs" toggle (moved up from below).
|
||||
- **Appearance** replaced with three visual **theme cards**: System / Light
|
||||
/ Dark. `System` follows `nativeTheme.themeSource = "system"` so it
|
||||
tracks the OS. Legacy `settings.theme` values outside `{system, light,
|
||||
dark}` fall back to `system`.
|
||||
- Files: [settings.html](settings.html), [main.js](main.js) (`applyTheme`
|
||||
already handles all three values).
|
||||
|
||||
### Settings — new Search section
|
||||
|
||||
- Sidebar gets a **Search** top-level item between General and Naming.
|
||||
- Search-engine controls moved OUT of General into this section.
|
||||
- Only **enabled** engines listed in the main "Additional search engines"
|
||||
block, grouped by kind (`Search engines` / `AI answer engines`),
|
||||
drag-reorder within a kind, toggle to disable, ✕ to delete custom.
|
||||
- **+ Add search engine** button toggles a catalog panel below with
|
||||
built-in engines the user hasn't enabled (each with `+ Add`) + a "Or add
|
||||
a custom URL" form.
|
||||
- Files: [settings.html](settings.html) (nav, section, CSS `.engcat`, JS).
|
||||
|
||||
### Settings — dropdown color-scheme + layout
|
||||
|
||||
- `:root { color-scheme: dark }` + `@media (prefers-color-scheme: light)`
|
||||
override. Native `<select>` popups on Windows now match app theme
|
||||
because `nativeTheme.themeSource` drives `prefers-color-scheme`.
|
||||
Fixes light popup on dark app (and vice versa).
|
||||
- `.ctl` layout flipped to `flex-direction: row` with `flex-wrap: wrap`,
|
||||
so anti-fingerprint mode select + value input fit side-by-side on wide
|
||||
rows.
|
||||
- Files: [settings.html](settings.html).
|
||||
|
||||
### Search catalog
|
||||
|
||||
- `SEARCH_ENGINES` entries gain `kind: "search" | "llm"` and
|
||||
`tier: "catalog" | "extra"`. `allEngines()` propagates both; custom
|
||||
user-added engines carry `tier: "custom"`.
|
||||
- **Two-tier discovery in settings**: catalog panel has "Add from catalog"
|
||||
(curated first-class disabled built-ins) + "Discover more engines" (wider
|
||||
`tier:"extra"` bank, filtered by a live search box) + "Or add a custom URL".
|
||||
- **Removed** from catalog (require sign-in before `?q=` works): ChatGPT,
|
||||
Claude, You.com. **Kept** as LLM engines: Perplexity, Phind.
|
||||
- **Removed** SearXNG (federated — `searx.be` is anti-bot-locked and every
|
||||
single-instance default rots as instances rate-limit / die). Users who
|
||||
want it add their preferred instance via the custom URL form.
|
||||
- **Added** as `tier:"extra"`: Marginalia, Stract, Yep, Presearch, MetaGer,
|
||||
Qwant, Swisscows, Naver, Baidu. All non-login `?q=` URLs. Same rot rule
|
||||
as LLMs: if one starts bouncing to a login gate, drop it.
|
||||
- Files: [main.js](main.js).
|
||||
|
||||
### Search picker
|
||||
|
||||
- [engine-picker.html](engine-picker.html) renders two headed groups:
|
||||
"Search with" / "Ask an AI". Empty sections hidden.
|
||||
- [settings.html](settings.html) default-engine `<select>` groups options
|
||||
with `<optgroup>` by kind. Drag-reorder constrained to same-kind (a
|
||||
cross-kind drop would re-group on next render).
|
||||
|
||||
### Chrome / toolbar
|
||||
|
||||
- **Loadbar collapses to 0px when idle** (`.loadbar { height: 0 }`,
|
||||
`.loadbar.on { height: 2px }`, 120ms transition). Previously reserved
|
||||
a permanent 2px strip below the address bar.
|
||||
- **Downloads button** (`#downloads`) between the search box and Tor
|
||||
toggle. Subscribes to `onDownloads` for badge + spin/done/err class.
|
||||
- Files: [chrome.html](chrome.html).
|
||||
|
||||
### Downloads (new feature)
|
||||
|
||||
- New files: [downloads.html](downloads.html),
|
||||
[downloads-preload.js](downloads-preload.js). Both added to
|
||||
`build.files` in [package.json](package.json).
|
||||
- `installDownloadTracker()` in main.js hooks
|
||||
`session.defaultSession.on("will-download", …)`. In-memory list only;
|
||||
no cross-session persistence.
|
||||
- IPC surface: `downloads-get`, `toggle-downloads`, `close-downloads`,
|
||||
`downloads-resize`, `download-open`, `download-show`, `download-cancel`,
|
||||
`download-clear`, `downloads-clear-all`.
|
||||
- New `downloadsPop` WebContentsView, positioned via `positionDownloads()`
|
||||
from `layout()`.
|
||||
- Preload exposes `getDownloads`, `toggleDownloads`, `onDownloads`.
|
||||
|
||||
### Preview harness
|
||||
|
||||
- [_preview.html](_preview.html) — `window.DL_ITEMS` seed +
|
||||
`__toggleDownloads` overlay; stub `window.theseus.getDownloads /
|
||||
onDownloads / toggleDownloads`; `kind` on stub engines; LLM catalog
|
||||
trimmed to Perplexity + Phind.
|
||||
- [_settings-preview.html](_settings-preview.html) — `kind` on stub
|
||||
engines; LLM catalog trimmed.
|
||||
_No uncommitted work owned by this session. Last shipment:
|
||||
Setup `208b059a14c8ddf10cf553e530e77f34129cf8ba999b697da08720ffc3685d22`,
|
||||
portable `bf08976500978dcd0d7305b04cc1480e63da54a24a71253cf4cfd9c910431a89`
|
||||
(2026-08-02). Rollback path on the VPS:
|
||||
`/opt/silent-mode/dl/_prev/TheseusNavigator-{Setup,portable}-0.0.1-*-036e94c7.exe`
|
||||
+ `/opt/silent-mode/dl/_prev/releases-manifest-2026-08-02.json`._
|
||||
|
||||
---
|
||||
|
||||
## session: `parallel:collision-policy`
|
||||
|
||||
Owner's focus: BCNR ↔ ICANN name collision handling. Present in the
|
||||
working tree, not mine. Leave for that session to land or bundle by
|
||||
explicit ask.
|
||||
Owner's focus: BCNR ↔ ICANN name collision handling. Not mine — leave for
|
||||
that session to land or bundle by explicit ask.
|
||||
|
||||
### Chrome + main-process changes
|
||||
|
||||
- [main.js](main.js) — big block of new IPC around collision policy +
|
||||
soft-collision picker + electrum discovery.
|
||||
- [popover.html](popover.html), [popover-preload.js](popover-preload.js)
|
||||
— collision switcher on the site-info popover.
|
||||
- [preload.js](preload.js) — `collisionSwitch` + `collisionState`.
|
||||
- [settings-preload.js](settings-preload.js) — same.
|
||||
|
||||
### Settings
|
||||
|
||||
- Entire **Naming** section in [settings.html](settings.html) (BCNR/ICANN
|
||||
collision policy radio group + remembered choices reset button).
|
||||
Untouched by my changes.
|
||||
|
||||
### New files (untracked in git)
|
||||
|
||||
- [collision.html](collision.html), [collision-preload.js](collision-preload.js)
|
||||
— the soft-collision "Open with…" prompt window (referenced from
|
||||
`main.js:219`).
|
||||
|
||||
---
|
||||
- Android / mobile: [../AriadneResolver/mobile/app/AndroidManifest.xml](../AriadneResolver/mobile/app/AndroidManifest.xml),
|
||||
[BchFetcher.java](../AriadneResolver/mobile/app/src/com/silentmode/ariadne/BchFetcher.java),
|
||||
[Bns.java](../AriadneResolver/mobile/app/src/com/silentmode/ariadne/Bns.java),
|
||||
[build.ps1](../AriadneResolver/mobile/build.ps1) — mobile-side collision changes.
|
||||
- Repo-wide: `.gitignore` gained a `/.keys/` line (harmless).
|
||||
|
||||
## Live state
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue