Phase 2b — The Front Desk: web search surfaces
25 JUL AT 10:37 AM

Phase 2b — The Front Desk: web search surfaces

0 LOVES 0 VIEWS
Humans get the search the agent has. The same ranked-fuzzy core wired into the web surfaces: a Studio posts-list q, an API v1 q, and the kontent reader search — a sidebar field at every width plus a scoped category/tag header filter. The draft-leak gate proven on every surface. Shipped 2026-07-11.

Rekall built the search engine; the Front Desk is where humans walk up and use it. Phase 2b wires the same ranked-fuzzy core — SearchPosts over the trigger-fresh index — into every human web surface, so a person gets exactly the retrieval quality the agent already has. Three tracks, each self-contained: the Studio posts list, the API v1 list endpoint, and the kontent reader search.

Fork A — the /search page + the sidebar entry

Mockup of the kontent /search results page: a sidebar search field and ranked result cards for the query gin sour

The kontent reader search, rendered against the live CSS: the o-sidebar-search field at the top of the shared sidebar (every width), submitting to /search — ranked m-post-card results with the Phase-2 core doing the matching. Drafts never appear (the hydration draft-leak gate).

Three surfaces, one core — and the draft-leak gate

  • Studio posts list — a q param + search box; fuzzy IDs hydrate through the posts service (authoring scope, so drafts are visible by design) with a LIKE fallback. Mirrors the media-collections list UI verbatim; staff-only, zero draft-leak risk.
  • API v1 GET /posts?q= — the list endpoint gains q, reusing the list path's own visibility rules; also the dependency Phase 2c (Flutter) consumes.
  • Kontent reader searcho_sidebar_search in the shared sidebar body (one define, every width — pinned sidebar ≥1200px and the hamburger drawer below), a /search page + fragment, and a scoped category/tag header filter (Fork B): a magnifier on the header reveals an autofocused field that names the set ("Search in Gin Cocktails"). The two forks are complementary — A searches everything, B filters this set — the YouTube-channel-search pattern, anchored to the header so it ports 1:1 to Flutter.

The security edge, proven on every reader surface: fuzzy IDs come back, then hydration filters by published + visibility + subscription (CanReadPost), locale passed through. The test that keeps it honest: q=internal — the editor finds "Draft: Internal Notes" first; the anonymous reader gets nothing. Same query, different truth, no leak.

Total Recall — the AI Memory Layer (master)
Total Recall — the AI Memory Layer (master)
Jul 25, 2026 Total Recall
← Back to Total Recall