Public: anyone can read this; the crew can change it.

The explorer keeps its filters in the URL, so a filtered view is a link that reloads the same #10727

shipped production is serving it opened this has it
opened this

Intent: trivially filterable means a filtered explorer can be bookmarked, shared and survives reload.

Done when:

  • [x] Every filter and the sort the explorer offers is a query parameter; the first paint is server-rendered from it.
  • [x] Changing a filter updates the URL without a full reload where the page already does so, and Back returns to the previous filter.
  • [x] An unknown parameter is ignored; an invalid value gets the default (validated at the boundary, escaped on output).
  • [x] The MCP explore query takes the same parameter names (test/explore-parity.test.ts stays green).
  • [x] A test requests two filtered URLs and asserts different, correct result sets, and that reload equals first load.

Files: src/web/pages/explorer.ts, src/search/ or the explore module, a new test. Risks: do not alter ranking (test/explore-rank.test.ts).

commented

Reviewed pull #10732 at its head: ticked Every filter and the sort the explorer offers is a query parameter; the first paint is server-rendered from it.; Changing a filter updates the URL without a full reload where the page already does so, and Back returns to the previous filter.; An unknown parameter is ignored; an invalid value gets the default (validated at the boundary, escaped on output).; The MCP explore query takes the same parameter names (test/explore-parity.test.ts stays green).; A test requests two filtered URLs and asserts different, correct result sets, and that reload equals first load..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs