SurfSense/surfsense_web/app
CREDO23 c0a9ea368f feat(web): automations detail page (definition viewer + trigger manager)
Vertical slice at /dashboard/[id]/automations/[automation_id]. Branches
in the orchestrator are: perms loading → skeleton, no-access → access
denied panel, bad id → not-found, fetch loading → skeleton, fetch
error → not-found, loaded → header + definition + triggers.

Route:
- page.tsx — server boundary; extracts both ids.
- automation-detail-content.tsx — client orchestrator.

Header:
- automation-detail-header.tsx — back link, name, status badge,
  description, pause/resume + delete actions. Delete navigates back to
  the list via a new onDeleted hook on DeleteAutomationDialog so the
  list page (where the row just vanishes) stays unaffected.
- automation-not-found.tsx — 404/403/NaN-id panel. We don't
  distinguish missing vs. forbidden in the UI.

Definition (read-only in v1):
- automation-definition-section.tsx — wrapper Card; renders goal +
  tags + execution defaults + inputs schema (if present) + plan.
- plan-step-card.tsx — one step (when, output_as, retries, timeout,
  params JSON).
- execution-summary.tsx — timeout / max_retries / backoff /
  concurrency + on_failure step count.
- inputs-schema-preview.tsx — formatted JSON of inputs.schema; only
  rendered when the definition declares inputs.

Triggers:
- automation-triggers-section.tsx — wrapper Card, "Add via chat" CTA
  (creation is intent-driven, same philosophy as automations).
- trigger-card.tsx — schedule + timezone + cron, last/next fire
  hints, static_inputs JSON, enable Switch and remove button.
- delete-trigger-dialog.tsx — confirm + mutation atom.

Shared:
- lib/describe-cron.ts — moved out of automation-triggers-summary.tsx
  so both list and detail can describe schedules consistently
  (daily/weekdays/weekly/monthly/hourly, raw cron fallback).

Loading:
- automation-detail-loading.tsx — same shell as the loaded view so the
  layout doesn't jump on data arrival.

RBAC: each interactive surface is independently gated
(canUpdate/canDelete/canCreate) so the orchestrator stays thin and the
component tree is self-documenting about what each action requires.

Out of scope (later PRs):
- Editing definition / trigger params (raw-JSON path) — PR5
- Run history — PR6
2026-05-28 01:21:54 +02:00
..
(home) Merge remote-tracking branch 'upstream/dev' into feat/opentelemetry 2026-05-23 03:21:08 +05:30
api refactor(env): replace inline process.env reads with BACKEND_URL in editor, chat, dashboard and settings 2026-05-20 03:34:22 +05:30
auth/callback fix(auth): remove redundant token storage write 2026-05-11 06:25:40 +09:00
dashboard feat(web): automations detail page (definition viewer + trigger manager) 2026-05-28 01:21:54 +02:00
db try vercel fix 2025-09-30 22:45:04 -07:00
desktop refactor: enhance Google login functionality and button styles across multiple components 2026-05-18 01:17:37 +05:30
docs fix: update URLs to use the "www" subdomain across the application 2026-05-15 12:35:15 -07:00
invite/[invite_code] fix(auth): centralize redirect path storage 2026-05-11 06:30:26 +09:00
public/[token] chore: linting 2026-03-27 03:17:05 -07:00
verify-token chore: ran biome checks 2026-03-07 12:57:27 +05:30
apple-icon.png feat: enhance SurfSense with new skills, blog section, and improve SEO metadata 2026-04-11 23:38:12 -07:00
error.tsx chore: ran linting 2026-05-19 21:02:07 +05:30
favicon.ico feat: updated logo 2026-01-08 23:03:43 -08:00
global-error.tsx feat: add processing mode support for document uploads and ETL pipeline, improded error handling ux 2026-04-14 21:26:00 -07:00
globals.css refactor: update UI components to utilize 'popover-border' for consistent styling and enhance overall design coherence 2026-05-14 12:53:52 +05:30
icon.png feat: enhance SurfSense with new skills, blog section, and improve SEO metadata 2026-04-11 23:38:12 -07:00
layout.config.tsx chore: ran linting 2026-03-10 16:17:12 +05:30
layout.tsx Merge remote-tracking branch 'upstream/dev' into feat/ui-revamp 2026-05-16 19:26:36 +05:30
not-found.tsx feat: add processing mode support for document uploads and ETL pipeline, improded error handling ux 2026-04-14 21:26:00 -07:00
robots.ts fix: update URLs to use the "www" subdomain across the application 2026-05-15 12:35:15 -07:00
sitemap.ts cloud: added openrouter integration with global configs 2026-04-15 23:46:29 -07:00