Skip to content

Known Preview Surfaces

This page lists every feature in LenserFight that is not available by default in a self-hosted Community Edition install. Use it to set accurate expectations, configure deployments, and communicate scope to contributors.

Status definitions

StatusMeaning
StableShips enabled in Community Edition. No flag required.
PreviewImplemented but requires a feature flag or a specific environment.
Cloud onlyRequires the hosted LenserFight platform. Not enabled for self-hosted installs.
Not yet implementedTracked in the roadmap but not yet shipped.

Feature surface table

FeatureStatusControlling env var / requirementRollback
Core workflow execution (manual)Stable
Lenses and lens libraryStable
CLI (lf run exec, lf execution wait)Stable
Notification bell and badgeStableSupabase
Wallet balance badgeStableSupabase + Chainabit
Social graph (follow / unfollow)StableSupabase
CRON schedulingPreviewSupabase pg_cron configured for workflow dispatch + SupabaseSet flag to false; run SELECT cron.unschedule('dispatch-scheduled-workflows') in psql
Approval gatesPreviewSupabase (agents.* schema)Remove schedule or set approval_policy->>'requiresApproval' to true
Approval auto-timeoutStableapp.approval_timeout_hours Postgres GUC (default 24h); expire-stale-approvals pg_cron jobSELECT cron.unschedule('expire-stale-approvals')
Approval pending webhookPreviewapp.approval_webhook_url Postgres GUC + pg_net extensionALTER DATABASE postgres SET app.approval_webhook_url = ''
Moderation flagged webhookPreviewapp.moderation_webhook_url Postgres GUC + pg_net extensionALTER DATABASE postgres SET app.moderation_webhook_url = ''
Platform-api /health probeStablepublic.fn_health() RPC; unauthenticated GET
SSE run event replay (GET /v1/runs/:id/events)PreviewSupabase (lenses.workflow_run_events)Use polling via lf execution inspect
Marketplace (/marketplace)PreviewSupabase (lenses.lenses.visibility column)Route is unauthenticated; disable via reverse-proxy path block
Tool invocation logsPreviewSupabase (platform.tool_invocation_logs)Disable by not running the Phase 2 migration
Tool invocation approvalsPreviewSupabase (agents.* schema, Phase 2 migration)Do not run Phase 2 migration; approval gates will be absent
Platform autonomy kill switchPreviewplatform.system_flags.autonomy_dispatch_enabledUPDATE platform.system_flags SET value = 'false' WHERE key = 'autonomy_dispatch_enabled'
Chainabit execution bridgePreviewCHAINABIT_EXECUTION_ENABLED on workers + CHAINABIT_API_URLSet CHAINABIT_EXECUTION_ENABLED=false on workers and redeploy
Local battles (CLI)PreviewNo flag required — lf battle local commands work without cloud infran/a
Cloud battles arenaPreviewoperator-approved cloud battles + hosted Supabase + app.webhook_signing_secret GUC + webhook-outbox-dispatcher cron healthy. Limited beta surface; see Cloud Battles runbook.Set cloud battles disabled in routing; SELECT cron.unschedule('webhook-outbox-dispatcher'); local battles continue to work
Battle moderation admin consolePreviewCloud battles deployment + admin-or-creator gating on the route. Lets the creator or platform admin override an automated moderation flag without a redeploy.Block or unmount the moderation admin route in deployment
Battle BYOK streamingPreviewoperator-approved cloud battles + BYOK key ref + hosted SupabaseDisable BYOK keys / cloud battle routing in deployment
ELO leaderboardPreviewoperator-approved cloud battles + SupabaseStop cloud battle ingestion (same rollback as arena)
Connector marketplaceNot yet implemented
Billing and creditsNot yet implemented
Benchmark suiteNot yet implemented
AI judge (battle)PreviewSupabase + ANTHROPIC_API_KEY in edge function envDisable AI judge flag on individual battles
Tournament systemPreviewSupabaseDo not call fn_create_tournament
Creator analytics (timeseries, head-to-head)PreviewSupabase + Phase 3 migrationRemove the Phase 3 analytics migration

How to disable CRON scheduling (full rollback)

sql
-- Step 1: Stop pg_cron from dispatching scheduled workflows
SELECT cron.unschedule('dispatch-scheduled-workflows');

-- Step 2: Disable the UI (set this in your .env)
-- (workflow dispatch cron disabled in deployment)

-- Step 3: Re-enable later (expression must match original migration)
SELECT cron.schedule(
  'dispatch-scheduled-workflows',
  '*/5 * * * *',
  'SELECT public.fn_dispatch_scheduled_workflows_with_approval()'
);

How to activate the platform autonomy kill switch

sql
-- Halt all autonomous workflow dispatches immediately
UPDATE platform.system_flags
SET value = 'false', updated_at = now()
WHERE key = 'autonomy_dispatch_enabled';

-- Re-enable
UPDATE platform.system_flags
SET value = 'true', updated_at = now()
WHERE key = 'autonomy_dispatch_enabled';