* feat: badge chat-input flows on the home list
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
* fix: keep a malformed draft value from aborting the runnables list
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
* fix: only a JSON boolean marks a draft flow as chat-enabled
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
---------
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
* fix: home search matches each term instead of the whole query verbatim
* docs: state the search term cap and drop unreachable test cases
* fix: treat a term-less search as no filter and trim the comment
* fix: a term-less search matches nothing instead of the whole page
* feat: match the homepage fuzzy search exactly in the runnables endpoint
* docs: say apostrophes stay in terms; test summary-less and draft rows
* docs: separate an empty search from one holding no terms
* docs: state that terms split on ASCII alphanumerics only
* feat: list draft-only runnables on the homepage again
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* perf: trim the draft listing index to the columns that measure
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: address review findings on draft-only runnables
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
* feat: show per-owner runnable counts in the homepage tree
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: exclude pipeline members from runnable owner counts
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: address review findings on runnable owner counts
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: avoid tree reflow while counts load and label pipeline rows
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: drop collapsed owners' cached rows when the tree scope changes
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix: untrack tree owners whose node is removed
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adds recently-updated / oldest / name A-Z / name Z-A sort orders to the homepage (WIN-2236), produced server-side by a new merged, index-backed, keyset-paginated GET /w/{workspace}/runnables/list so a chosen order is globally correct across scripts + flows + apps and stays efficient on large workspaces.
- Backend: UNION ALL of script/flow/app ordered by index (Merge Append + LIMIT); keyset (sort_key, path, kind, tiebreak) cursor; per-branch LIMIT bounds correlated projections; starred-first pinning; RLS + scope-token filters in SQL. Archived view returns the latest row per path. Migration adds time + lowered-name indexes (built CONCURRENTLY).
- Frontend: server-side sort/kind/owner filters + hybrid search (instant client + on-demand server pagination); file-explorer tree with every folder and your user namespace as lazy-loaded top-level nodes (per-owner "Load more", nested subfolders, bounded "expand all", in-place re-sort without collapse or flicker); the client sorts by the server fetch ordinal to reproduce the endpoint's exact order; empty state distinguishes an empty workspace from too-narrow filters.
Reviewed clean by Claude and Pi (good to merge) and Codex (mergeable).