chore(data-modeling): remove data-modeling-semantic-enrichment flag - #69772
Conversation
Semantic enrichment for views is rolled out to 100%, so drop the data-modeling-semantic-enrichment gate and make it always-on. The AI-data-processing-consent gate stays. The separate tables flag (data-warehouse-semantic-enrichment) is untouched. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
🦔 Hogbox preview · ✅ ready▶ Open the preview
commit |
|
Reviews (1): Last reviewed commit: "chore(data-modeling): remove data-modeli..." | Re-trigger Greptile |
🤖 CI report✅ Bundle size — 🟢 -140 B (-0.0%)Uncompressed size of every built Total: 69.86 MiB · 🟢 -140 B (-0.0%) No file changed by more than 1000 B. Posted automatically by build-bundle-size-report · uncompressed bytes from dist-report ✅ Eager graph — within budgetHow much code each root ships on the eager path — downloaded and parsed before the surface is interactive. Measured from the esbuild output chunks (post-tree-shake, static imports only); lazy
🟢 Largest files eagerly shipped from
|
| Size | File |
|---|---|
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 24.6 KiB | ../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js |
| 6.3 KiB | ../node_modules/.pnpm/react@18.3.1/node_modules/react/cjs/react.production.min.js |
| 4.5 KiB | ../node_modules/.pnpm/@jspm+core@2.1.0/node_modules/@jspm/core/nodelibs/browser/process.js |
| 3.9 KiB | ../node_modules/.pnpm/scheduler@0.23.2/node_modules/scheduler/cjs/scheduler.production.min.js |
| 1.4 KiB | ../node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js |
| 1.3 KiB | src/RootErrorBoundary.tsx |
| 912 B | ../node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js |
| 789 B | src/scenes/ChunkLoadErrorBoundary.tsx |
| 668 B | src/index.tsx |
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
| Size | File |
|---|---|
| 277.1 KiB | ../node_modules/.pnpm/posthog-js@1.398.2/node_modules/posthog-js/dist/rrweb.js |
| 266.9 KiB | ../node_modules/.pnpm/@posthog+icons@0.37.4_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js |
| 224.6 KiB | src/taxonomy/core-filter-definitions-by-group.json |
| 213.6 KiB | ../node_modules/.pnpm/posthog-js@1.398.2/node_modules/posthog-js/dist/module.js |
| 164.0 KiB | src/queries/validators.js |
| 154.0 KiB | ../node_modules/.pnpm/re2js@0.4.1/node_modules/re2js/build/index.esm.js |
| 126.8 KiB | ../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/cjs/react-dom.production.min.js |
| 105.7 KiB | src/lib/api.ts |
| 93.3 KiB | ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js |
| 90.5 KiB | ../node_modules/.pnpm/@tiptap+core@3.20.1_@tiptap+pm@3.20.1/node_modules/@tiptap/core/dist/index.js |
Posted automatically by check-eager-graph · sizes are eager output bytes (shipped, post-tree-shake) from the esbuild metafile · part of #32479
✅ Dist folder size — 🟢 -904 B (-0.0%)
Total size of the built frontend/dist folder (all assets), compared against the base branch.
Total: 1433.69 MiB · 🟢 -904 B (-0.0%)
There was a problem hiding this comment.
Straightforward flag-cleanup chore: removes an already-100%-rolled-out feature flag from the view-enrichment gate while leaving the AI-processing consent check and the separate warehouse-tables flag untouched; tests updated to match, author owns this code with strong recent familiarity, and bot reactions are positive.
- Author wrote 100% of the modified lines and has 5 merged PRs in these paths (familiarity STRONG).
- 👍 on the PR from greptile-apps[bot], hex-security-app[bot].
Gate mechanics and policy version
| Gate | Result | |
|---|---|---|
| prerequisites | ✓ | all clear |
| deny-list | ✓ | no deny categories matched |
| size | ✓ | 23L, 3F substantive, 108L/6F incl. docs/generated/snapshots — within ceiling |
| tier | ✓ | T1-agent / T1d-complex (108L, 6F, cross-cutting, chore) |
| stamphog 2.0.0b3 | .stamphog/policy.yml @ 7963eba · reviewed head 3d1b41c |
Problem
Semantic enrichment for data-modeling views (AI-generated descriptions for saved-query views and their columns, used so the AI agent picks the right view and columns in NL-to-HogQL) is rolled out to 100% of clients. The
data-modeling-semantic-enrichmentfeature flag now just adds noise and a needless per-run flag evaluation.Changes
Deleted the flag and made view enrichment always-on. The org-level
is_ai_data_processing_approvedconsent gate stays, soenrichment_gates_passnow checks only consent. The separate tables flagdata-warehouse-semantic-enrichment(warehouse_sources) is untouched.enrich_view_semantics.py: dropped theVIEW_ENRICHMENT_FEATURE_FLAGconstant, the unusedenrichment_enabledimport, theflag_disabledskip, and the flag conjunct inenrichment_gates_pass.succeed_materialization.py: reworded the now-inaccurate gate comment.constants.tsx: removed theDATA_MODELING_SEMANTIC_ENRICHMENTenum entry (it had no other frontend references, the flag was backend-only).Note
Deleting the flag record in the PostHog flag-management UI is a separate operational step, not part of this PR.
How did you test this code?
Automated tests I (Claude) ran locally, all green:
test_enrich_view_semantics.py+test_backfill_view_semantic_enrichment.py: 38 passedtest_materialize_view_activities.py: 31 passedThe pruned tests catch no regression a remaining test doesn't. Org
is_ai_data_processing_approveddefaults toTrue, so the always-on paths stay covered by the existing happy-path tests, and the explicit "AI not approved" cases still exercise the one remaining gate. I did not do manual testing.Automatic notifications
🤖 Agent context
Autonomy: Human-driven (agent-assisted)
I (Claude, via Claude Code) removed the flag end-to-end. The key call was scoping: there are two similarly named flags, and I confirmed with the author that only the views flag (
data-modeling-semantic-enrichment) should go, leaving the tables flag (data-warehouse-semantic-enrichment) alone. The sharedenrichment_enabled(team, flag_key)helper is used by both surfaces, so it stays put, only the view-side call sites were removed.Skills invoked:
/writing-tests(before touching test files, the test changes are deletions of now-impossible cases rather than new coverage).