mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-11 03:40:05 +00:00
Make the Automations area in the web UI functional end-to-end against the real Automation API, and fix the backend so runs created by an automation's API trigger actually start instead of sitting in Submitted forever. Web: - Reveal the Automations nav tab outside demo mode; drop the now-empty demoOnly mechanism. - List page: render via listAutomations (was workflows mock data); wire ellipsis menu to Edit and Delete, with ConfirmDialog + If-Match revision. Move Create Automation into the toolbar, switch the trigger select to a shared FilterButton, hide the redundant page-header title via a new hideTitle handle flag. - Play button on each card fires createAutomationRun with spinner + toast and navigates to the new run. - New automation form: drop the dead Goal panel and hardcoded repository list, post to createAutomation with real triggers. - Edit automation: new /automations/:id/edit route reusing a shared AutomationFormFields component, PUT via replaceAutomation with If-Match. - Show page: rebuild like a run detail page — breadcrumb, title, chips (enabled status, repo+ref, workflow, schedule), Edit + Run actions (Run hits createAutomationRun), and a Runs panel using RunsListView with URL-driven search/sort/pagination/column-picker like the Children sub-tab. Drop the obsolete Definition/Diagram/Runs child routes. Backend (fabro-server): - create_automation_run now calls lifecycle::queue_run_start after the run is persisted, so the run transitions Submitted → Runnable and the scheduler picks it up. Logs a warn and returns the created response if start fails (no worse than the prior always-stuck behavior). - queue_run_start in lifecycle.rs is promoted to pub(super) so sibling handlers can reuse it. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| chats | ||
| runs-list | ||
| stage-renderers | ||
| auth-layout.tsx | ||
| automation-form.tsx | ||
| collapsible-file.tsx | ||
| editable-run-title.test.tsx | ||
| editable-run-title.tsx | ||
| event-debug-helpers.tsx | ||
| event-debug.tsx | ||
| floating-tooltip.tsx | ||
| graph-toolbar-constants.ts | ||
| graph-toolbar.tsx | ||
| icons.tsx | ||
| inline-markdown.test.tsx | ||
| inline-markdown.tsx | ||
| interview-dock.test.tsx | ||
| interview-dock.tsx | ||
| interview-label.ts | ||
| pull-request-chip.test.tsx | ||
| pull-request-chip.tsx | ||
| run-summary-panel.test.tsx | ||
| run-summary-panel.tsx | ||
| run-waterfall.tsx | ||
| settings-panel.tsx | ||
| size-chip.tsx | ||
| stage-context.tsx | ||
| stage-insights-sidebar.test.tsx | ||
| stage-insights-sidebar.tsx | ||
| stage-popover-summary.ts | ||
| stage-popover.test.tsx | ||
| stage-popover.tsx | ||
| stage-sidebar.test.tsx | ||
| stage-sidebar.tsx | ||
| state.tsx | ||
| steer-bar.tsx | ||
| terminal-view-helpers.ts | ||
| terminal-view.test.ts | ||
| terminal-view.tsx | ||
| toast.test.tsx | ||
| toast.tsx | ||
| ui.tsx | ||