NF-UI-1: Flow list page #331

Closed
opened 2026-04-24 11:29:52 +00:00 by code-lead · 0 comments
Collaborator

As an operator, I want a /app/flows page listing every configured flow with filters and inline actions so that I can see my deployment's dispatch at a glance.

Acceptance criteria

Route + list

  • /app/flows route in the SPA, server-driven from GET /flows.
  • Columns: id, trigger type, repo-pattern summary, priority, enabled, source (default | operator), updated_at.

Filters

  • Trigger type, repo-pattern substring, enabled, source.

Per-row actions

  • Open → /app/flows/:id (editor, NF-UI-2 stub).
  • Toggle enable (auth-gated).
  • Delete (auth-gated, refuses default flows).

States

  • Loading, error, empty-state prompt linking to /app/flows/new.
  • Optimistic enable-toggle with rollback on 403.

Tests

  • Component tests (Vitest + RTL): filter, toggle, delete-refused, auth-gated hide.

Out of scope

  • New-flow wizard — NF-UI-2 / NF-UI-3.

References

As an operator, I want a `/app/flows` page listing every configured flow with filters and inline actions so that I can see my deployment's dispatch at a glance. ## Acceptance criteria ### Route + list - [ ] `/app/flows` route in the SPA, server-driven from `GET /flows`. - [ ] Columns: id, trigger type, repo-pattern summary, priority, enabled, source (`default` | `operator`), updated_at. ### Filters - [ ] Trigger type, repo-pattern substring, enabled, source. ### Per-row actions - [ ] Open → `/app/flows/:id` (editor, NF-UI-2 stub). - [ ] Toggle enable (auth-gated). - [ ] Delete (auth-gated, refuses `default` flows). ### States - [ ] Loading, error, empty-state prompt linking to `/app/flows/new`. - [ ] Optimistic enable-toggle with rollback on 403. ### Tests - [ ] Component tests (Vitest + RTL): filter, toggle, delete-refused, auth-gated hide. ## Out of scope - New-flow wizard — NF-UI-2 / NF-UI-3. ## References - Spec: [`specs/node-flows-ui.md`](../src/branch/main/specs/node-flows-ui.md) § Stories § NF-UI-1. - Depends on NF-7 (#328).
Sign in to join this conversation.
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/claude-hooks#331
No description provided.