experiments in a post-browser web
10
fork

Configure Feed

Select the types of activity you want to include in your feed.

docs(changelog): add 2026-04-20 weekly summary + regenerate RSS

Covers this week's work: core consolidation (cmd/page/hud merged into
the core background renderer + ext:all-loaded race fix), the Phase
3.11 preload.js deletion sweep, single-tile feature collapses
(groups/tag-actions/lex/entities/websearch), pubsub broadcaster fixes
(webview guests, full-URL echo prevention, window-entry registration),
test parallelization (smoke split, desktop-serial suite, per-describe
isolation), and a handful of one-off fixes.

+104 -1
+50
CHANGELOG.md
··· 13 13 14 14 Newly done items go here, grouped under level-2 headings by week (date = Monday of that ISO week). 15 15 16 + ## 2026-04-20 17 + 18 + Desktop - Core consolidation 19 + - [x] Merge cmd + page + hud resident renderers into the core background renderer — `app/index.js` now awaits `initCmd()`, `initPage()`, `initHud()`; `cmd-glue.ts`, `page-glue.ts`, `hud-glue.ts` and the three resident shim HTMLs deleted 20 + - [x] Fix `ext:all-loaded` subscribe-after-publish race that was silently dropping 26 core commands (quit/restart/back/forward/reload/settings/theme-* etc) on cold start — registry now grows 72→96 21 + - [x] Fix Electron 40 `console-message` forwarder — event `level` is a string literal in E40, not an int, so the numeric filter dropped all renderer output 22 + - [x] Move macOS did-become-active / did-resign-active overlay-hide/show handlers inline into `main.ts` (no longer owned by hud-glue) 23 + - [x] Remove unused helpdocs feature 24 + 25 + Desktop - Tile preload migration (Phase 3.11) 26 + - [x] Delete `preload.js` — cmd panel, chain-editor, canvas page host, settings, HUD overlay + widgets, datastore viewer, navigator, session, diagnostic all migrated to `tile-preload.cjs` 27 + - [x] Delete legacy `extensionHostWindow` + host HTML + v1 branch of the extension broadcaster (Phase 3.10) 28 + - [x] Delete `IPC_CHANNELS` const + 6 dead `ipcMain.on` handlers (Phase 3.11c) 29 + - [x] Strict shims for `tile:theme:*`, `tile:extensions:*`, `tile:chrome-extensions:*`, `tile:window:opener-*`, `tile:features:settings-schema`, `tile:window:get-id`, `tile:log:write`, `tile:app:quit/restart`, `tile:backup/shell/app` — all trustedBuiltin-gated 30 + - [x] Flip datastore, app-control, theme, extension-*, opener-*, features-schema, get-window-id to strict + delete legacy (Phase 3.6 sweep) 31 + - [x] Migrate 6 features to the v2 settings API, fix datastore `tableName` param mismatch 32 + - [x] Route `about:blank` and cmd panel / chain-editor through tile-preload (Cat 4 IZUI fix) 33 + 34 + Desktop - Feature tile conversions 35 + - [x] Collapse groups, tag-actions, lex, entities, websearch into single-tile resident form — drop cross-window pubsub round-trips 36 + - [x] Migrate callers from legacy `peek://ext/{id}` to v2 `peek://{id}` — plus test-URL sweep 37 + 38 + Desktop - Pubsub + tile-preload 39 + - [x] Auto-initialize `tile-preload` at module load — remove the call-order trap 40 + - [x] Register v2 window-entries opened via `api.window.open` with the tile broadcaster (they weren't being forwarded global publishes) 41 + - [x] Broadcaster now reaches webview guests (peek:// URLs), not just BrowserWindows 42 + - [x] Echo-prevention compares full URL, not just peek host — fixes sibling-window dropped pubsub inside the same feature 43 + - [x] HUD widget init: `initialize()` calls, `getExtKey` shape fix 44 + - [x] `tile-preload` getBounds / getDisplayInfo / setBounds + unwrap `getWindowId` result 45 + 46 + Desktop - Testing 47 + - [x] Split `smoke.spec.ts` (2000+ lines, 29 describes) into one-file-per-describe for parallelism 48 + - [x] Add `desktop-serial` Playwright project (workers: 1) for OS-integration-fragile tests 49 + - [x] Per-describe Electron isolation via `createPerDescribeApp()` — kills cross-test state leaks 50 + - [x] Disable cmd-panel close-on-blur + showSelf `window.show` under headless 51 + - [x] Test module-health check — detects silent module-halt regressions from api drift 52 + - [x] Deterministic `window:opened`-event wait in external-url test (no more 500ms sleep) 53 + - [x] Fix tag-widget page-widget flake: per-test URL + key, gate on `__pageModuleReady`, poll for quit/restart registration 54 + - [x] Rewrite cmd chain tests around canonical OUTPUT_SELECTION → CHAIN_MODE flow 55 + - [x] Delete v1 `api.commands.flush` batching tests (no-op in v2) 56 + 57 + Desktop - Other fixes 58 + - [x] Register `will-download` handler on webview guest session — fixes download-popup not being cleaned up 59 + - [x] Preserve window size during drag-out-of-maximize in page host 60 + - [x] Page widget updates reactively for tag events 61 + - [x] Restore minimal `cmd:register-batch` publish + merge-preserve pattern in cmd resident 62 + - [x] setWindowColorScheme window resolution in headless (Cat 3 theme fix) 63 + - [x] ELECTRON_RUN_AS_NODE import compat for schema codegen 64 + - [x] atproto signature-verification plan written (implementation pending) 65 + 16 66 ## 2026-03-24 17 67 18 68 Desktop - Page Host
+54 -1
docs/feed.xml
··· 4 4 <title>Peek Changelog</title> 5 5 <link>https://tangled.org/burrito.space/peek</link> 6 6 <description>Recent changes to Peek</description> 7 - <lastBuildDate>Wed, 25 Mar 2026 14:42:00 GMT</lastBuildDate> 7 + <lastBuildDate>Tue, 21 Apr 2026 17:12:51 GMT</lastBuildDate> 8 8 <generator>changelog-to-rss.js</generator> 9 9 <atom:link href="https://tangled.org/burrito.space/peek/raw/main/docs/feed.xml" rel="self" type="application/rss+xml"/> 10 + <item> 11 + <title>2026-04-20</title> 12 + <link>https://tangled.org/burrito.space/peek/blob/main/CHANGELOG.md#2026-04-20</link> 13 + <guid isPermaLink="false">https://tangled.org/burrito.space/peek#2026-04-20</guid> 14 + <pubDate>Mon, 20 Apr 2026 12:00:00 GMT</pubDate> 15 + <description>Desktop - Core consolidation 16 + - Merge cmd + page + hud resident renderers into the core background renderer — app/index.js now awaits initCmd(), initPage(), initHud(); cmd-glue.ts, page-glue.ts, hud-glue.ts and the three resident shim HTMLs deleted 17 + - Fix ext:all-loaded subscribe-after-publish race that was silently dropping 26 core commands (quit/restart/back/forward/reload/settings/theme-* etc) on cold start — registry now grows 72→96 18 + - Fix Electron 40 console-message forwarder — event level is a string literal in E40, not an int, so the numeric filter dropped all renderer output 19 + - Move macOS did-become-active / did-resign-active overlay-hide/show handlers inline into main.ts (no longer owned by hud-glue) 20 + - Remove unused helpdocs feature 21 + 22 + Desktop - Tile preload migration (Phase 3.11) 23 + - Delete preload.js — cmd panel, chain-editor, canvas page host, settings, HUD overlay + widgets, datastore viewer, navigator, session, diagnostic all migrated to tile-preload.cjs 24 + - Delete legacy extensionHostWindow + host HTML + v1 branch of the extension broadcaster (Phase 3.10) 25 + - Delete IPC_CHANNELS const + 6 dead ipcMain.on handlers (Phase 3.11c) 26 + - Strict shims for tile:theme:, tile:extensions:, tile:chrome-extensions:, tile:window:opener-, tile:features:settings-schema, tile:window:get-id, tile:log:write, tile:app:quit/restart, tile:backup/shell/app — all trustedBuiltin-gated 27 + - Flip datastore, app-control, theme, extension-, opener-, features-schema, get-window-id to strict + delete legacy (Phase 3.6 sweep) 28 + - Migrate 6 features to the v2 settings API, fix datastore tableName param mismatch 29 + - Route about:blank and cmd panel / chain-editor through tile-preload (Cat 4 IZUI fix) 30 + 31 + Desktop - Feature tile conversions 32 + - Collapse groups, tag-actions, lex, entities, websearch into single-tile resident form — drop cross-window pubsub round-trips 33 + - Migrate callers from legacy peek://ext/{id} to v2 peek://{id} — plus test-URL sweep 34 + 35 + Desktop - Pubsub + tile-preload 36 + - Auto-initialize tile-preload at module load — remove the call-order trap 37 + - Register v2 window-entries opened via api.window.open with the tile broadcaster (they weren&apos;t being forwarded global publishes) 38 + - Broadcaster now reaches webview guests (peek:// URLs), not just BrowserWindows 39 + - Echo-prevention compares full URL, not just peek host — fixes sibling-window dropped pubsub inside the same feature 40 + - HUD widget init: initialize() calls, getExtKey shape fix 41 + - tile-preload getBounds / getDisplayInfo / setBounds + unwrap getWindowId result 42 + 43 + Desktop - Testing 44 + - Split smoke.spec.ts (2000+ lines, 29 describes) into one-file-per-describe for parallelism 45 + - Add desktop-serial Playwright project (workers: 1) for OS-integration-fragile tests 46 + - Per-describe Electron isolation via createPerDescribeApp() — kills cross-test state leaks 47 + - Disable cmd-panel close-on-blur + showSelf window.show under headless 48 + - Test module-health check — detects silent module-halt regressions from api drift 49 + - Deterministic window:opened-event wait in external-url test (no more 500ms sleep) 50 + - Fix tag-widget page-widget flake: per-test URL + key, gate on __pageModuleReady, poll for quit/restart registration 51 + - Rewrite cmd chain tests around canonical OUTPUT_SELECTION → CHAIN_MODE flow 52 + - Delete v1 api.commands.flush batching tests (no-op in v2) 53 + 54 + Desktop - Other fixes 55 + - Register will-download handler on webview guest session — fixes download-popup not being cleaned up 56 + - Preserve window size during drag-out-of-maximize in page host 57 + - Page widget updates reactively for tag events 58 + - Restore minimal cmd:register-batch publish + merge-preserve pattern in cmd resident 59 + - setWindowColorScheme window resolution in headless (Cat 3 theme fix) 60 + - ELECTRON_RUN_AS_NODE import compat for schema codegen 61 + - atproto signature-verification plan written (implementation pending)</description> 62 + </item> 10 63 <item> 11 64 <title>2026-03-24</title> 12 65 <link>https://tangled.org/burrito.space/peek/blob/main/CHANGELOG.md#2026-03-24</link>