feat(workflows): add workflows feature flag + Features-tab toggle

New opt-in 'workflows' master flag (default off) across the backend
KNOWN_FLAGS/DEFAULT_FLAGS and the frontend FeatureKey union, context
defaults, and a new Automation section card in the Features tab. Gates
the upcoming Workflows admin area and the engine runtime. en/de i18n
added (DE native).
This commit is contained in:
Luca
2026-06-23 01:53:03 +02:00
parent a1f68bc081
commit ff478619b5
6 changed files with 47 additions and 3 deletions
@@ -23,6 +23,7 @@ import {
Wallet,
FolderKanban,
MonitorPlay,
Workflow,
} from 'lucide-react';
import { useTranslation } from 'react-i18next';
import { Button, Card } from '../../../components/common';
@@ -134,6 +135,24 @@ export const FeaturesTab: React.FC = () => {
/>
</Section>
{/* Automation — the visual workflow engine. Master kill-switch for the
Workflows admin area and the runtime; off by default. */}
<Section title={t('settings.features.sections.automation', 'Automation')}>
<FeatureCard
icon={Workflow}
title={t('settings.features.workflows.title', 'Workflows')}
description={t(
'settings.features.workflows.description',
'Build visual automations on a canvas — triggers, conditions, branches, loops and admin approval gates. Your reminder ladder and booking steps become editable flows. Strictly opt-in.',
)}
status="new"
statusLabel={statusLabel('new')}
sidebarLabel={t('settings.features.workflows.sidebar', 'Workflows')}
enabled={staged.workflows}
onToggle={(next) => setFlag('workflows', next)}
/>
</Section>
{/* Clients (#354 follow-up). Visual grouping for the CRM-area
sub-features. The "Clients" sidebar section itself is gated
by a derived `clients` flag (computed from whether any