Autonomy Settings
Autonomy settings control which stages of the AI pipeline pause for human approval before proceeding. Each toggle can be set platform-wide (via Manage → System → Autonomy) or overridden per tenant (via Manage → Tenants → [Tenant] → Deliverable Config).
Related: HITL Index — all approval touchpoints | Approval Flow — full lifecycle
How It Works
Each toggle follows a three-level resolution chain:
Tenant override (TenantDeliverableConfig)
↓ if null
Global platform setting (PlatformSetting table)
↓ if not set
Code default (always true — approval required)Setting a tenant override to null (via “Use platform default” in the UI) removes the override and falls back to the global setting.
Settings
Client Context
Toggle: Require client approval
Default: On (approval required)
DB field: TenantDeliverableConfig.requireContextApproval / PlatformSetting key requireContextApproval
When on: After the Context File Writer agent generates the client context file (status: completed), the pipeline pauses. The client sees the document on their dashboard and must click Approve before the Strategy Writer is triggered.
When off: The context file is immediately marked approved with autoApproved: true and the Strategy Writer is enqueued without any human action. The dashboard shows an “Auto-approved” badge (violet) and the timeline records a System log entry with action auto_approved.
Strategy
Toggle: Require client approval
Default: On (approval required)
DB field: TenantDeliverableConfig.requireStrategyApproval / PlatformSetting key requireStrategyApproval
When on: After the Strategy Writer generates the marketing strategy document (status: pending_review), the pipeline pauses. The client reviews the strategy on their dashboard and must approve it before the Deliverable Planner is triggered.
When off: The strategy is immediately marked approved with autoApproved: true and the Deliverable Planner is enqueued automatically. The strategy page shows an “Auto-approved” badge and a System timeline entry.
Deliverable Plan
Toggle: Require DM approval before activity planning begins
Default: On (approval required)
DB field: TenantDeliverableConfig.requireDeliverablePlanApproval / PlatformSetting key requireDeliverablePlanApproval
When on: After the Deliverable Planner generates the monthly plan (status: pending_review), the pipeline pauses. A DM reviews the goals, deliverable volumes, and cost estimates before the Activity Planner is triggered.
When off: The plan is immediately marked approved with autoApproved: true and the Activity Planner is enqueued for the current period. The dashboard shows an “Auto-approved” badge.
Note: The Action Item Planner always runs immediately after the Deliverable Planner regardless of this setting — it generates one-time strategic tasks in parallel while the plan awaits review.
Action Items
Toggle: Require DM approval before action items are dispatched
Default: On (approval required)
DB field: TenantDeliverableConfig.requireActionItemApproval / PlatformSetting key requireActionItemApproval
When on: After the Action Item Planner generates strategic tasks (status: pending_review), a DM reviews and bulk-approves them via Manage → Tenants → [Tenant] → Action Items before Activity records are created and agents are enqueued.
When off: All action items are immediately approved and dispatched to the activity pipeline with no DM review step.
Activity Pipeline
Toggle: Require DM approval before agents run
Default: On (approval required)
DB field: TenantDeliverableConfig.requireActivityApproval / PlatformSetting key requireActivityApproval
When on: After the Activity Planner generates the activity list, the DeliverablePeriod is set to dm_review status. A DM must approve the plan before individual agent jobs are dispatched.
When off: Activities are dispatched to agent queues immediately after planning with no DM review step.
Max activities per period: Caps how many activities the planner can generate per billing period per tenant. Range: 5–1000. Default: 60. Per-tenant override range: 1–1000.
Note: The agents server also reads
ACTIVITY_PLANNER_MAX_ACTIVITIESfrom its.envon startup. Update both the database setting and the.envto keep them in sync.
Blog Posts
Toggle: Require DM approval
Default: On
DB field: PlatformSetting key requireBlogApproval (global only — no per-tenant override)
When on: Blog posts enter the DM review queue before reaching the client review stage. When off: Posts move directly to client review after the Blog Writer finishes.
Social Posts
Toggle: Require DM approval
Default: On
DB field: PlatformSetting key requireSocialApproval (global only)
Applies to all social platforms: Facebook, Instagram, LinkedIn, Google Business Profile.
Landing Pages
Toggle: Require DM approval
Default: On
DB field: PlatformSetting key requireLandingPageApproval (global only)
Email Newsletters
Toggle: Require DM approval
Default: On
DB field: PlatformSetting key requireEmailApproval (global only)
Auto-Approved Badge
When any stage is auto-approved, the dashboard shows a visual distinction so there is always a clear audit trail:
- Status badge: “Auto-approved” in violet (instead of the green “Approved” shown for manual approvals)
- Timeline entry: A
Systemlog entry withaction: auto_approvedand a brighter violet dot - DB flag:
ClientContext.autoApproved = true/Strategy.autoApproved = true/DeliverablePlan.autoApproved = true
The status field itself is set to "approved" in all cases — only the autoApproved boolean distinguishes them downstream.
Per-Tenant Overrides
All four pipeline gates can be overridden per tenant:
Location: Manage → Tenants → [Tenant] → Deliverable Config tab
| Field | Options |
|---|---|
| Client context approval | Use platform default / Always require approval / Skip approval (auto-approve) |
| Strategy approval | Use platform default / Always require approval / Skip approval (auto-approve) |
| Deliverable plan approval | Use platform default / Always require approval / Skip approval (auto-approve) |
| Action items approval | Use platform default / Always require approval / Skip approval (auto-dispatch) |
| Activity pipeline approval | Use platform default / Always require approval / Skip approval (auto-run) |
| Max activities per period | Empty (use platform default 60) / 1–1000 |
Blog, social, landing page, and email newsletter approvals are global-only (no per-tenant override).
Implementation
| Layer | File |
|---|---|
| Global API | apps/api/src/routers/admin/deliverable-settings.ts |
| Tenant API | apps/api/src/routers/admin/tenants.ts (deliverable-config routes) |
| Manage — Autonomy page | apps/manage/src/app/(manage)/system/deliverable-settings/DeliverableSettingsClient.tsx |
| Manage — Tenant override | apps/manage/src/app/(manage)/tenants/[tenantId]/DeliverableConfigTab.tsx |
| Context auto-approval | packages/agents/src/workers/setup.worker.ts (context-file-writer branch) |
| Strategy auto-approval | packages/agents/src/workers/strategy-writer.worker.ts |
| Deliverable plan auto-approval | packages/agents/src/workers/strategy.worker.ts (deliverable-planner branch) |
| Action item auto-approval | packages/agents/src/workers/action-item-planner.worker.ts |
| Dashboard — Context badge | apps/dashboard/src/app/(dashboard)/context/ContextClient.tsx |
| Dashboard — Strategy badge | apps/dashboard/src/app/(dashboard)/strategy/StrategyClient.tsx |
| Admin — Action items approve | apps/api/src/routers/admin/action-items.ts |
| Help page content | apps/manage/src/app/(manage)/help/_data/index.ts (slug: deliverable-settings) |
| DB schema | packages/db/prisma/schema.prisma — TenantDeliverableConfig, ClientContext, Strategy, DeliverablePlan |