Skip to content

The frame the walker chose is the frame they stay in - #134

Merged
wschenk merged 1 commit into
mainfrom
claude/desktop-feature-deploy-loop-sqwp25
Aug 4, 2026
Merged

The frame the walker chose is the frame they stay in#134
wschenk merged 1 commit into
mainfrom
claude/desktop-feature-deploy-loop-sqwp25

Conversation

@wschenk

@wschenk wschenk commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Summary

Three things the desk got wrong about where the walker is. The first two are regressions from #120.

The empty right pane. On /days with nothing open, the desk held a 280–360px column beside the queue containing one line of placeholder text. A blank column reads as something failing to load. Nothing open now means the queue takes the whole width; the pane returns when a day or Thread does.

The day nobody asked for. activeDayKey is inferred from the open Thread, and the whole left pane scoped to it — so opening a Thread out of ?reports=full&lens=topics silently replaced the Topics queue with that Thread's day, while the URL still said lens=topics. A day frames what is inside it only when the walker actually opened one (selectedDayKey); otherwise the working set stays the frame, the queue stays walkable with j/k from inside the Thread, and the day header stays away. With a Thread open the pane is narrow, so the rows now come before the rail.

Search that couldn't find the research. The box reads every day but only the walker's own words — title, Captures, topics. So "what did we find out about X", where X appears only in the report the Enrichment wrote, returned nothing at all. Search now reads the Enrichment text too, and each result carries the line it matched rather than only a title.

No-ticket: true

Test plan

  • tests/desk-working-set-desktop.spec.ts — opening a Thread from ?reports=full&lens=topics keeps the Lens active, the facet active, no day header, the stacks intact, and j still focusing a row; a day the walker opened still frames a facet chosen inside it; with nothing open the detail pane is hidden and the list pane is >90% of the viewport, and opening a day brings the pane back
  • tests/desk-search.spec.ts — the matcher reads any text the Thread holds; the snippet cuts at word boundaries, marks where it cut, and returns null on no match
  • tests/desk-search-desktop.spec.ts — searching a phrase that appears only in the report finds its Thread, excludes the others, and shows the matched line; the walker's own words still find theirs
  • pnpm typecheck clean; pnpm test — 310 passed, 1 failed (trash-repository.spec.ts, Neon-backed, fails identically on a clean checkout of main here), 10 skipped
  • pnpm lint — 6 errors, all pre-existing

What this is not

Search is substring matching over text the device already holds — it finds the words you type, in your Captures and in the reports. It is not the ask-across-everything surface: no embeddings, no concept grouping, no synthesized answer. That is #123 (structured mentions), #124 (pgvector similarity), #125 (retrieval into the Enrichment prompt), none of which are built.


Generated by Claude Code

Three things the desk got wrong about where the walker is.

The empty right pane. With nothing open, the desk held a 280px column
beside the queue containing one line of placeholder text — a blank
column reads as something failing to load. Nothing open now means the
queue has the whole width, and the pane comes back when a day or a
Thread does.

The day that was never asked for. Opening a Thread out of a re-stacked
or narrowed queue scoped the whole left pane to that Thread's day —
inferred from the Thread, never chosen — so a Topics view silently
became a day view with the URL still saying lens=topics. A day frames
what is inside it only when the walker actually opened one; otherwise
the working set stays the frame, and the queue stays walkable from
inside the Thread. With a Thread open the rows now come before the rail,
which is the order a narrow pane needs.

Search that could not find the research. The box reads every day, but
only the walker's own words — so "what did we find out about X", where
X appears only in the report, returned nothing. Search now reads the
Enrichment text too, and each result carries the line it matched rather
than only a title.

No-ticket: true
@vercel

vercel Bot commented Aug 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
walking-thoughts Ready Ready Preview Aug 4, 2026 12:05pm

Request Review

@wschenk
wschenk merged commit 3b106f5 into main Aug 4, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants