From 06450fe69ade2928deb9274bb67b7ba60d394b4f Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Thu, 6 Aug 2026 18:19:27 +0000 Subject: Remove the feature toggle system (dead code) Audited it (couldn't query the live DB directly -- auto-mode classifier blocks direct production reads without prior approval -- so this is a code-only audit): GetFeatureToggles/SetFeatureEnabled/IsFeatureEnabled/ CreateFeatureToggle/DeleteFeatureToggle had exactly one caller each, all inside their own CRUD handlers. Nothing anywhere else in the codebase read a toggle's Enabled state to gate any actual behavior -- confirmed by grepping every remaining .Enabled/IsFeatureEnabled reference back to either this dead code or its own tests. It was pure UI-managed CRUD with no consumer, unlike Trusted Agents (wired into agent.go/websocket.go) or Data Sources (wired into the sync pipeline) which stayed. Removes the Settings page section, the three /settings/features* routes and handlers, the five Store methods, the FeatureToggle model, and adds 028_drop_feature_toggles.sql (next free migration number, per this repo's convention of never renumbering -- see 021_drop_tasks.sql for the same drop-table-forward pattern) to drop the now-unused table. Also removed the now-dead tests for all of the above. go build ./... and go test ./... both clean. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01EZ7ikw2ukGJFTHE3bJS7zL --- internal/models/types.go | 7 ------- 1 file changed, 7 deletions(-) (limited to 'internal/models') diff --git a/internal/models/types.go b/internal/models/types.go index 151ef54..41ba162 100644 --- a/internal/models/types.go +++ b/internal/models/types.go @@ -339,10 +339,3 @@ type SourceConfig struct { Enabled bool `json:"enabled"` } -// FeatureToggle represents a feature flag -type FeatureToggle struct { - ID int64 `json:"id"` - Name string `json:"name"` - Description string `json:"description"` - Enabled bool `json:"enabled"` -} -- cgit v1.2.3