Skip to content

feat(billing): add billing alerts schema#66353

Open
willwearing wants to merge 4 commits into
masterfrom
will/billing-alerts-migration
Open

feat(billing): add billing alerts schema#66353
willwearing wants to merge 4 commits into
masterfrom
will/billing-alerts-migration

Conversation

@willwearing

@willwearing willwearing commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Problem

Billing alerts need durable tables before the service and UI code can safely deploy. The schema needs to land separately because migration jobs are not orchestrated with service deployments.

Changes

Adds the Billing alerts Django app shell, model definitions, and initial migration for alert configurations and alert events.

The migration creates new tables only. Foreign keys to posthog.Team use db_constraint=False to avoid locking the hot parent table during deployment.

Feature branch to be merged in following this: #66355

How did you test this code?

As an agent, I ran:

DEBUG=1 uv run python manage.py sqlmigrate billing_alerts 0001
DEBUG=1 uv run python manage.py makemigrations --check --dry-run
DEBUG=1 uv run python manage.py analyze_migration_risk --fail-on-blocked
uv run ruff check products/billing_alerts/backend/models.py products/billing_alerts/backend/apps.py products/billing_alerts/backend/migrations/0001_initial.py
uv run ruff format --check products/billing_alerts/backend/models.py products/billing_alerts/backend/apps.py products/billing_alerts/backend/migrations/0001_initial.py
bin/hogli product:lint billing_alerts
git diff --cached --check

sqlmigrate confirmed the migration emits no FK constraint to posthog_team.

👉 Stay up-to-date with PostHog coding conventions for a smoother review.

Automatic notifications

  • Publish to changelog?
  • Alert Sales and Marketing teams?

Docs update

No docs update in this migration-only PR.

🤖 Agent context

Autonomy: Human-driven (agent-assisted)

Codex split this out from the billing alerts feature PR so the schema can deploy before service code. Skills invoked: GitHub publish workflow, GitHub Actions CI fix workflow, and /django-migrations. The key safety choice is keeping db_constraint=False on the hot-table Team references while preserving the event-to-alert FK inside the new tables.

@willwearing willwearing self-assigned this Jun 26, 2026
@greptile-apps

greptile-apps Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Reviews (1): Last reviewed commit: "feat(billing): add billing alerts schema" | Re-trigger Greptile

Comment on lines +98 to +100
@cached_property
def organization(self) -> Organization:
return Organization.objects.get(id=self.organization_id)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Sync DB query inside @cached_property

Organization.objects.get(...) is a synchronous ORM call. Any async view or async Celery task that accesses alert_config.organization will raise SynchronousOnlyOperation. Given PostHog's growing async surface, this property either needs to be fetched up-front in the calling code or wrapped with sync_to_async at the call site before this model is used in async paths.

consecutive_failures = models.PositiveIntegerField(default=0)

created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True, null=True, blank=True)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 auto_now=True always sets this field on save(), so the database column is never NULL in practice. The null=True annotation is misleading — it suggests the column might be NULL when the ORM never writes NULL for it. Removing it makes the intent clearer.

Suggested change
updated_at = models.DateTimeField(auto_now=True, null=True, blank=True)
updated_at = models.DateTimeField(auto_now=True)

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment on lines +102 to +121
def clean(self) -> None:
super().clean()

if self.baseline_window_days < 1:
raise ValidationError({"baseline_window_days": "Must be at least 1."})
if self.check_interval_hours < 1:
raise ValidationError({"check_interval_hours": "Must be at least 1."})
if self.minimum_value < 0:
raise ValidationError({"minimum_value": "Must be greater than or equal to 0."})

if self.threshold_type == self.ThresholdType.RELATIVE_INCREASE:
if self.threshold_percentage is None:
raise ValidationError({"threshold_percentage": "Required for relative increase alerts."})
if self.threshold_percentage <= 0:
raise ValidationError({"threshold_percentage": "Must be greater than 0."})
elif self.threshold_type in (self.ThresholdType.ABSOLUTE_VALUE, self.ThresholdType.ABSOLUTE_INCREASE):
if self.threshold_value is None:
raise ValidationError({"threshold_value": "Required for absolute threshold alerts."})
if self.threshold_value < 0:
raise ValidationError({"threshold_value": "Must be greater than or equal to 0."})

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 clean() doesn't cross-invalidate the non-applicable threshold field

When threshold_type changes (e.g. from ABSOLUTE_VALUE to RELATIVE_INCREASE), threshold_value is not required to be None. A stale non-NULL threshold_value will sit alongside threshold_percentage in the DB. Any service code that picks its threshold from the model without re-checking threshold_type first could silently use the wrong value.

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 64.2 MB

ℹ️ View Unchanged
Filename Size
frontend/dist-report/decompression-worker/src/scenes/session-recordings/player/snapshot-processing/decompressionWorker 2.85 kB
frontend/dist-report/exporter/_chunks/chunk 2.26 MB
frontend/dist-report/exporter/_parent/products/actions/frontend/pages/Action 28 kB
frontend/dist-report/exporter/_parent/products/actions/frontend/pages/Actions 5.69 kB
frontend/dist-report/exporter/_parent/products/ai_gateway/frontend/AIGatewayScene 13.2 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/AIObservabilityScene 120 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/AIObservabilitySessionScene 19.6 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/AIObservabilityTraceScene 132 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/AIObservabilityUsers 3.44 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/clusters/AIObservabilityClusterScene 21.8 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/clusters/AIObservabilityClustersScene 53.9 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/datasets/AIObservabilityDatasetScene 20.7 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/datasets/AIObservabilityDatasetsScene 4.07 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/evaluations/AIObservabilityEvaluation 60.8 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/evaluations/AIObservabilityEvaluationsScene 32.8 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/evaluations/EvaluationTemplates 671 B
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/LLMASessionFeedbackDisplay 4.81 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/playground/AIObservabilityPlaygroundScene 37.5 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/prompts/LLMPromptScene 32.9 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/prompts/LLMPromptsScene 5.21 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/tags/AIObservabilityTag 32 kB
frontend/dist-report/exporter/_parent/products/ai_observability/frontend/tags/AIObservabilityTagsScene 11.8 kB
frontend/dist-report/exporter/_parent/products/business_knowledge/frontend/scenes/BusinessKnowledgeScene 23.3 kB
frontend/dist-report/exporter/_parent/products/conversations/frontend/components/Assignee/CyclotronJobInputAssignee 1.38 kB
frontend/dist-report/exporter/_parent/products/conversations/frontend/components/SlaBusinessHours/CyclotronJobInputBusinessHours 2.69 kB
frontend/dist-report/exporter/_parent/products/conversations/frontend/components/TicketTags/CyclotronJobInputTicketTags 783 B
frontend/dist-report/exporter/_parent/products/conversations/frontend/scenes/settings/SupportSettingsScene 5.76 kB
frontend/dist-report/exporter/_parent/products/conversations/frontend/scenes/ticket/SupportTicketScene 41.5 kB
frontend/dist-report/exporter/_parent/products/conversations/frontend/scenes/tickets/SupportTicketsScene 1.68 kB
frontend/dist-report/exporter/_parent/products/customer_analytics/frontend/CustomerAnalyticsScene 100 kB
frontend/dist-report/exporter/_parent/products/customer_analytics/frontend/scenes/CustomerAnalyticsConfigurationScene/CustomerAnalyticsConfigurationScene 6.51 kB
frontend/dist-report/exporter/_parent/products/customer_analytics/frontend/scenes/CustomerJourneyBuilderScene/CustomerJourneyBuilderScene 6.36 kB
frontend/dist-report/exporter/_parent/products/customer_analytics/frontend/scenes/CustomerJourneyTemplatesScene/CustomerJourneyTemplatesScene 9.23 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/DataWarehouseScene 32.3 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/frontend/scenes/NewSourceScene/NewSourceScene 2.91 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/frontend/scenes/SchemaScene/SchemaScene 34.1 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/frontend/scenes/SourceConnectScene/SourceConnectScene 6.79 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/frontend/scenes/SourceScene/SourceScene 2.69 kB
frontend/dist-report/exporter/_parent/products/data_warehouse/frontend/scenes/SourcesScene/SourcesScene 7.49 kB
frontend/dist-report/exporter/_parent/products/early_access_features/frontend/EarlyAccessFeature 5.58 kB
frontend/dist-report/exporter/_parent/products/early_access_features/frontend/EarlyAccessFeatures 3.73 kB
frontend/dist-report/exporter/_parent/products/endpoints/frontend/EndpointScene 47.7 kB
frontend/dist-report/exporter/_parent/products/endpoints/frontend/EndpointsScene 27.5 kB
frontend/dist-report/exporter/_parent/products/engineering_analytics/frontend/scenes/EngineeringAnalyticsAuthorScene 5.31 kB
frontend/dist-report/exporter/_parent/products/engineering_analytics/frontend/scenes/EngineeringAnalyticsScene 21.5 kB
frontend/dist-report/exporter/_parent/products/engineering_analytics/frontend/scenes/PullRequestDetailScene 20.8 kB
frontend/dist-report/exporter/_parent/products/engineering_analytics/frontend/scenes/WorkflowRunDetailScene 6.42 kB
frontend/dist-report/exporter/_parent/products/engineering_analytics/frontend/scenes/WorkflowRunsScene 7.94 kB
frontend/dist-report/exporter/_parent/products/error_tracking/frontend/scenes/ErrorTrackingFingerprintsScene/ErrorTrackingIssueFingerprintsScene 7.66 kB
frontend/dist-report/exporter/_parent/products/error_tracking/frontend/scenes/ErrorTrackingIssueScene/ErrorTrackingIssueScene 102 kB
frontend/dist-report/exporter/_parent/products/error_tracking/frontend/scenes/ErrorTrackingScene/ErrorTrackingScene 42.6 kB
frontend/dist-report/exporter/_parent/products/feature_flags/frontend/FeatureFlagTemplatesScene 6.91 kB
frontend/dist-report/exporter/_parent/products/games/368Hedgehogs/368Hedgehogs 5.24 kB
frontend/dist-report/exporter/_parent/products/games/FlappyHog/FlappyHog 5.7 kB
frontend/dist-report/exporter/_parent/products/growth/frontend/IdentityMatchingScene 35.9 kB
frontend/dist-report/exporter/_parent/products/legal_documents/frontend/scenes/LegalDocumentNewScene 60.1 kB
frontend/dist-report/exporter/_parent/products/legal_documents/frontend/scenes/LegalDocumentsScene 6.37 kB
frontend/dist-report/exporter/_parent/products/links/frontend/LinkScene 25.4 kB
frontend/dist-report/exporter/_parent/products/links/frontend/LinksScene 5.15 kB
frontend/dist-report/exporter/_parent/products/live_debugger/frontend/LiveDebugger 19.6 kB
frontend/dist-report/exporter/_parent/products/logs/frontend/LogsScene 22.6 kB
frontend/dist-report/exporter/_parent/products/logs/frontend/scenes/LogsAlertDetailScene/LogsAlertDetailScene 18.5 kB
frontend/dist-report/exporter/_parent/products/logs/frontend/scenes/LogsAlertNotificationDetailScene/LogsAlertNotificationDetailScene 9 kB
frontend/dist-report/exporter/_parent/products/logs/frontend/scenes/LogsSamplingDetailScene/LogsSamplingDetailScene 6.11 kB
frontend/dist-report/exporter/_parent/products/logs/frontend/scenes/LogsSamplingNewScene/LogsSamplingNewScene 3.12 kB
frontend/dist-report/exporter/_parent/products/managed_migrations/frontend/ManagedMigration 15.2 kB
frontend/dist-report/exporter/_parent/products/mcp_analytics/frontend/MCPAnalyticsScene 109 kB
frontend/dist-report/exporter/_parent/products/mcp_analytics/frontend/MCPAnalyticsToolDetail 20.1 kB
frontend/dist-report/exporter/_parent/products/metrics/frontend/MetricsScene 18.2 kB
frontend/dist-report/exporter/_parent/products/posthog_ai/frontend/components/QuestionRenderer 1.75 kB
frontend/dist-report/exporter/_parent/products/posthog_ai/frontend/components/RunViewerImpl 5.8 kB
frontend/dist-report/exporter/_parent/products/posthog_ai/frontend/components/tool/builtinToolRenderers 4.48 kB
frontend/dist-report/exporter/_parent/products/posthog_ai/frontend/components/tool/EditDiffRenderer 3.23 kB
frontend/dist-report/exporter/_parent/products/posthog_ai/frontend/scenes/TaskTracker/TaskTracker 23.7 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/stickiness/StickinessBarChart/StickinessBarChart 4.45 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/stickiness/StickinessLineChart/StickinessLineChart 4.34 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/trends/TrendsBarChart/TrendsBarChart 9.83 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/trends/TrendsLifecycleChart/TrendsLifecycleChart 5.9 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/trends/TrendsLineChart/TrendsLineChart 6.16 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/trends/TrendsPieChart/TrendsPieChart 5.06 kB
frontend/dist-report/exporter/_parent/products/product_analytics/frontend/insights/trends/TrendsSlopeChart/TrendsSlopeChart 2.6 kB
frontend/dist-report/exporter/_parent/products/replay_vision/frontend/observations/ReplayObservation 18 kB
frontend/dist-report/exporter/_parent/products/replay_vision/frontend/replay_scanners/ReplayScanner 41.3 kB
frontend/dist-report/exporter/_parent/products/replay_vision/frontend/replay_scanners/ReplayScannersScene 22.4 kB
frontend/dist-report/exporter/_parent/products/replay_vision/frontend/replay_scanners/ScannerEditorScene 25.2 kB
frontend/dist-report/exporter/_parent/products/revenue_analytics/frontend/revenueAnalyticsLogic 1.49 kB
frontend/dist-report/exporter/_parent/products/revenue_analytics/frontend/RevenueAnalyticsScene 29.8 kB
frontend/dist-report/exporter/_parent/products/session_summaries/frontend/SessionGroupSummariesTable 5.4 kB
frontend/dist-report/exporter/_parent/products/session_summaries/frontend/SessionGroupSummaryScene 23.3 kB
frontend/dist-report/exporter/_parent/products/skills/frontend/LLMSkillScene 1.47 kB
frontend/dist-report/exporter/_parent/products/skills/frontend/LLMSkillsScene 1.48 kB
frontend/dist-report/exporter/_parent/products/tasks/frontend/SlackTaskContextScene 9 kB
frontend/dist-report/exporter/_parent/products/tracing/frontend/TracingScene 95.1 kB
frontend/dist-report/exporter/_parent/products/user_interviews/frontend/UserInterview 10.8 kB
frontend/dist-report/exporter/_parent/products/user_interviews/frontend/UserInterviewResponse 8.05 kB
frontend/dist-report/exporter/_parent/products/user_interviews/frontend/UserInterviews 6.46 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewIndexScene 3 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewRunScene 47.2 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewRunsScene 8.23 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewSettingsScene 11.6 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewSnapshotHistoryScene 14.3 kB
frontend/dist-report/exporter/_parent/products/visual_review/frontend/scenes/VisualReviewSnapshotOverviewScene 19.8 kB
frontend/dist-report/exporter/_parent/products/workflows/frontend/TemplateLibrary/MessageTemplate 17 kB
frontend/dist-report/exporter/_parent/products/workflows/frontend/Workflows/WorkflowScene 113 kB
frontend/dist-report/exporter/_parent/products/workflows/frontend/WorkflowsScene 61.4 kB
frontend/dist-report/exporter/src/exporter/exporter 25.9 kB
frontend/dist-report/exporter/src/exporter/scenes/ExporterDashboardScene 6.67 kB
frontend/dist-report/exporter/src/exporter/scenes/ExporterHeatmapScene 20.1 kB
frontend/dist-report/exporter/src/exporter/scenes/ExporterInsightScene 7.25 kB
frontend/dist-report/exporter/src/exporter/scenes/ExporterInterviewScene 310 kB
frontend/dist-report/exporter/src/exporter/scenes/ExporterNotebookScene 2.98 MB
frontend/dist-report/exporter/src/exporter/scenes/ExporterRecordingScene 5.63 kB
frontend/dist-report/exporter/src/exporterSharedChunkAnchors 1.26 kB
frontend/dist-report/exporter/src/lib/components/ActivityLog/describers 129 kB
frontend/dist-report/exporter/src/lib/components/Cards/TextCard/TextCardMarkdownEditor 10.6 kB
frontend/dist-report/exporter/src/lib/components/MonacoDiffEditor 533 B
frontend/dist-report/exporter/src/lib/lemon-ui/LemonMarkdown/MermaidDiagram 2 kB
frontend/dist-report/exporter/src/lib/lemon-ui/LemonTextArea/LemonTextAreaMarkdown 790 B
frontend/dist-report/exporter/src/lib/lemon-ui/Link/Link 415 B
frontend/dist-report/exporter/src/lib/monaco/CodeEditor 448 B
frontend/dist-report/exporter/src/lib/monaco/CodeEditorImpl 26.6 kB
frontend/dist-report/exporter/src/lib/monaco/CodeEditorInline 649 B
frontend/dist-report/exporter/src/lib/monaco/vimMode 211 kB
frontend/dist-report/exporter/src/lib/ui/Button/ButtonPrimitives 482 B
frontend/dist-report/exporter/src/queries/nodes/WebVitals/WebVitals 11.5 kB
frontend/dist-report/exporter/src/queries/nodes/WebVitals/WebVitalsPathBreakdown 4.76 kB
frontend/dist-report/exporter/src/queries/Query/Query 5.12 kB
frontend/dist-report/exporter/src/queries/schema 969 kB
frontend/dist-report/exporter/src/scenes/approvals/changeRequestsLogic 622 B
frontend/dist-report/exporter/src/scenes/authentication/login/loginLogic 569 B
frontend/dist-report/exporter/src/scenes/authentication/shared/passkeyLogic 602 B
frontend/dist-report/exporter/src/scenes/data-pipelines/event-filtering/EventFilterScene 22.8 kB
frontend/dist-report/exporter/src/scenes/data-pipelines/TransformationsScene 8.09 kB
frontend/dist-report/exporter/src/scenes/experiments/notebook/NotebookCompactTable 1.54 kB
frontend/dist-report/exporter/src/scenes/hog-functions/misc/Diff 1.35 kB
frontend/dist-report/exporter/src/scenes/insights/views/BoxPlot/BoxPlot 4.49 kB
frontend/dist-report/exporter/src/scenes/insights/views/CalendarHeatMap/CalendarHeatMap 8.88 kB
frontend/dist-report/exporter/src/scenes/insights/views/RegionMap/RegionMap 30.3 kB
frontend/dist-report/exporter/src/scenes/insights/views/WorldMap/WorldMap 1.04 MB
frontend/dist-report/exporter/src/scenes/models/ModelsScene 20 kB
frontend/dist-report/exporter/src/scenes/models/NodeDetailScene 19.1 kB
frontend/dist-report/monaco-editor-worker/src/lib/monaco/workers/monacoEditorWorker 288 kB
frontend/dist-report/monaco-json-worker/src/lib/monaco/workers/monacoJsonWorker 419 kB
frontend/dist-report/monaco-typescript-worker/src/lib/monaco/workers/monacoTsWorker 7.02 MB
frontend/dist-report/posthog-app/_chunks/chunk 2.62 MB
frontend/dist-report/posthog-app/_parent/products/actions/frontend/pages/Action 29.4 kB
frontend/dist-report/posthog-app/_parent/products/actions/frontend/pages/Actions 7.05 kB
frontend/dist-report/posthog-app/_parent/products/ai_gateway/frontend/AIGatewayScene 13.7 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/AIObservabilityScene 122 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/AIObservabilitySessionScene 20.2 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/AIObservabilityTraceScene 133 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/AIObservabilityUsers 4.26 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/clusters/AIObservabilityClusterScene 22.3 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/clusters/AIObservabilityClustersScene 54.4 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/datasets/AIObservabilityDatasetScene 21.2 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/datasets/AIObservabilityDatasetsScene 4.58 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/evaluations/AIObservabilityEvaluation 61.3 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/evaluations/AIObservabilityEvaluationsScene 34.2 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/evaluations/EvaluationTemplates 671 B
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/LLMASessionFeedbackDisplay 4.81 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/playground/AIObservabilityPlaygroundScene 38.1 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/prompts/LLMPromptScene 34.2 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/prompts/LLMPromptsScene 5.73 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/tags/AIObservabilityTag 33.3 kB
frontend/dist-report/posthog-app/_parent/products/ai_observability/frontend/tags/AIObservabilityTagsScene 13.1 kB
frontend/dist-report/posthog-app/_parent/products/business_knowledge/frontend/scenes/BusinessKnowledgeScene 23.8 kB
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/components/Assignee/CyclotronJobInputAssignee 1.38 kB
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/components/SlaBusinessHours/CyclotronJobInputBusinessHours 2.7 kB
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/components/TicketTags/CyclotronJobInputTicketTags 783 B
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/scenes/settings/SupportSettingsScene 7.84 kB
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/scenes/ticket/SupportTicketScene 35.5 kB
frontend/dist-report/posthog-app/_parent/products/conversations/frontend/scenes/tickets/SupportTicketsScene 2.19 kB
frontend/dist-report/posthog-app/_parent/products/customer_analytics/frontend/CustomerAnalyticsScene 101 kB
frontend/dist-report/posthog-app/_parent/products/customer_analytics/frontend/scenes/CustomerAnalyticsConfigurationScene/CustomerAnalyticsConfigurationScene 8.59 kB
frontend/dist-report/posthog-app/_parent/products/customer_analytics/frontend/scenes/CustomerJourneyBuilderScene/CustomerJourneyBuilderScene 7.69 kB
frontend/dist-report/posthog-app/_parent/products/customer_analytics/frontend/scenes/CustomerJourneyTemplatesScene/CustomerJourneyTemplatesScene 10.1 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/DataWarehouseScene 2.07 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/frontend/scenes/NewSourceScene/NewSourceScene 3.73 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/frontend/scenes/SchemaScene/SchemaScene 34.7 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/frontend/scenes/SourceConnectScene/SourceConnectScene 7.54 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/frontend/scenes/SourceScene/SourceScene 3.4 kB
frontend/dist-report/posthog-app/_parent/products/data_warehouse/frontend/scenes/SourcesScene/SourcesScene 8.14 kB
frontend/dist-report/posthog-app/_parent/products/early_access_features/frontend/EarlyAccessFeature 7.07 kB
frontend/dist-report/posthog-app/_parent/products/early_access_features/frontend/EarlyAccessFeatures 4.24 kB
frontend/dist-report/posthog-app/_parent/products/endpoints/frontend/EndpointScene 49 kB
frontend/dist-report/posthog-app/_parent/products/endpoints/frontend/EndpointsScene 26.8 kB
frontend/dist-report/posthog-app/_parent/products/engineering_analytics/frontend/scenes/EngineeringAnalyticsAuthorScene 5.82 kB
frontend/dist-report/posthog-app/_parent/products/engineering_analytics/frontend/scenes/EngineeringAnalyticsScene 22 kB
frontend/dist-report/posthog-app/_parent/products/engineering_analytics/frontend/scenes/PullRequestDetailScene 21.3 kB
frontend/dist-report/posthog-app/_parent/products/engineering_analytics/frontend/scenes/WorkflowRunDetailScene 6.93 kB
frontend/dist-report/posthog-app/_parent/products/engineering_analytics/frontend/scenes/WorkflowRunsScene 8.46 kB
frontend/dist-report/posthog-app/_parent/products/error_tracking/frontend/scenes/ErrorTrackingFingerprintsScene/ErrorTrackingIssueFingerprintsScene 8.2 kB
frontend/dist-report/posthog-app/_parent/products/error_tracking/frontend/scenes/ErrorTrackingIssueScene/ErrorTrackingIssueScene 103 kB
frontend/dist-report/posthog-app/_parent/products/error_tracking/frontend/scenes/ErrorTrackingScene/ErrorTrackingScene 45 kB
frontend/dist-report/posthog-app/_parent/products/feature_flags/frontend/FeatureFlagTemplatesScene 6.92 kB
frontend/dist-report/posthog-app/_parent/products/games/368Hedgehogs/368Hedgehogs 5.24 kB
frontend/dist-report/posthog-app/_parent/products/games/FlappyHog/FlappyHog 5.7 kB
frontend/dist-report/posthog-app/_parent/products/growth/frontend/IdentityMatchingScene 36.4 kB
frontend/dist-report/posthog-app/_parent/products/legal_documents/frontend/scenes/LegalDocumentNewScene 60.6 kB
frontend/dist-report/posthog-app/_parent/products/legal_documents/frontend/scenes/LegalDocumentsScene 6.88 kB
frontend/dist-report/posthog-app/_parent/products/links/frontend/LinkScene 25.9 kB
frontend/dist-report/posthog-app/_parent/products/links/frontend/LinksScene 5.66 kB
frontend/dist-report/posthog-app/_parent/products/live_debugger/frontend/LiveDebugger 20.1 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/components/LogsViewer/LogsViewerModal/LogsViewerModal 2.45 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/LogsScene 23.9 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/scenes/LogsAlertDetailScene/LogsAlertDetailScene 19.2 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/scenes/LogsAlertNotificationDetailScene/LogsAlertNotificationDetailScene 9.58 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/scenes/LogsSamplingDetailScene/LogsSamplingDetailScene 6.63 kB
frontend/dist-report/posthog-app/_parent/products/logs/frontend/scenes/LogsSamplingNewScene/LogsSamplingNewScene 3.63 kB
frontend/dist-report/posthog-app/_parent/products/managed_migrations/frontend/ManagedMigration 15.8 kB
frontend/dist-report/posthog-app/_parent/products/mcp_analytics/frontend/MCPAnalyticsScene 110 kB
frontend/dist-report/posthog-app/_parent/products/mcp_analytics/frontend/MCPAnalyticsToolDetail 20.6 kB
frontend/dist-report/posthog-app/_parent/products/metrics/frontend/MetricsScene 19 kB
frontend/dist-report/posthog-app/_parent/products/posthog_ai/frontend/components/QuestionRenderer 1.75 kB
frontend/dist-report/posthog-app/_parent/products/posthog_ai/frontend/components/RunViewerImpl 5.84 kB
frontend/dist-report/posthog-app/_parent/products/posthog_ai/frontend/components/tool/builtinToolRenderers 4.48 kB
frontend/dist-report/posthog-app/_parent/products/posthog_ai/frontend/components/tool/EditDiffRenderer 3.23 kB
frontend/dist-report/posthog-app/_parent/products/posthog_ai/frontend/scenes/TaskTracker/TaskTracker 22.7 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/stickiness/StickinessBarChart/StickinessBarChart 4.93 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/stickiness/StickinessLineChart/StickinessLineChart 4.82 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/trends/TrendsBarChart/TrendsBarChart 10.3 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/trends/TrendsLifecycleChart/TrendsLifecycleChart 6.38 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/trends/TrendsLineChart/TrendsLineChart 6.63 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/trends/TrendsPieChart/TrendsPieChart 5.53 kB
frontend/dist-report/posthog-app/_parent/products/product_analytics/frontend/insights/trends/TrendsSlopeChart/TrendsSlopeChart 3.04 kB
frontend/dist-report/posthog-app/_parent/products/replay_vision/frontend/observations/ReplayObservation 20.1 kB
frontend/dist-report/posthog-app/_parent/products/replay_vision/frontend/replay_scanners/ReplayScanner 42.7 kB
frontend/dist-report/posthog-app/_parent/products/replay_vision/frontend/replay_scanners/ReplayScannersScene 23.7 kB
frontend/dist-report/posthog-app/_parent/products/replay_vision/frontend/replay_scanners/ScannerEditorScene 25.7 kB
frontend/dist-report/posthog-app/_parent/products/revenue_analytics/frontend/revenueAnalyticsLogic 1.9 kB
frontend/dist-report/posthog-app/_parent/products/revenue_analytics/frontend/RevenueAnalyticsScene 31.3 kB
frontend/dist-report/posthog-app/_parent/products/session_summaries/frontend/SessionGroupSummariesTable 5.91 kB
frontend/dist-report/posthog-app/_parent/products/session_summaries/frontend/SessionGroupSummaryScene 25.4 kB
frontend/dist-report/posthog-app/_parent/products/skills/frontend/LLMSkillScene 1.98 kB
frontend/dist-report/posthog-app/_parent/products/skills/frontend/LLMSkillsScene 1.99 kB
frontend/dist-report/posthog-app/_parent/products/tasks/frontend/SlackTaskContextScene 9.51 kB
frontend/dist-report/posthog-app/_parent/products/tracing/frontend/TracingScene 95.7 kB
frontend/dist-report/posthog-app/_parent/products/user_interviews/frontend/UserInterview 10.8 kB
frontend/dist-report/posthog-app/_parent/products/user_interviews/frontend/UserInterviewResponse 8.55 kB
frontend/dist-report/posthog-app/_parent/products/user_interviews/frontend/UserInterviews 6.98 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewIndexScene 3.52 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewRunScene 47.7 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewRunsScene 8.75 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewSettingsScene 12.2 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewSnapshotHistoryScene 14.8 kB
frontend/dist-report/posthog-app/_parent/products/visual_review/frontend/scenes/VisualReviewSnapshotOverviewScene 20.3 kB
frontend/dist-report/posthog-app/_parent/products/workflows/frontend/TemplateLibrary/MessageTemplate 17.6 kB
frontend/dist-report/posthog-app/_parent/products/workflows/frontend/Workflows/WorkflowScene 107 kB
frontend/dist-report/posthog-app/_parent/products/workflows/frontend/WorkflowsScene 62.5 kB
frontend/dist-report/posthog-app/src/index 62.5 kB
frontend/dist-report/posthog-app/src/layout/panel-layout/ai-first/tabs/NavTabChat 7.93 kB
frontend/dist-report/posthog-app/src/lib/components/ActivityLog/describers 130 kB
frontend/dist-report/posthog-app/src/lib/components/Cards/TextCard/TextCardMarkdownEditor 10.6 kB
frontend/dist-report/posthog-app/src/lib/components/MonacoDiffEditor 533 B
frontend/dist-report/posthog-app/src/lib/components/Shortcuts/utils/DebugCHQueriesImpl 20.1 kB
frontend/dist-report/posthog-app/src/lib/components/Support/supportRouterLogic 1.56 kB
frontend/dist-report/posthog-app/src/lib/lemon-ui/LemonMarkdown/MermaidDiagram 2 kB
frontend/dist-report/posthog-app/src/lib/lemon-ui/LemonTextArea/LemonTextAreaMarkdown 790 B
frontend/dist-report/posthog-app/src/lib/lemon-ui/Link/Link 415 B
frontend/dist-report/posthog-app/src/lib/monaco/CodeEditor 448 B
frontend/dist-report/posthog-app/src/lib/monaco/CodeEditorImpl 26.6 kB
frontend/dist-report/posthog-app/src/lib/monaco/CodeEditorInline 649 B
frontend/dist-report/posthog-app/src/lib/monaco/vimMode 211 kB
frontend/dist-report/posthog-app/src/lib/ui/Button/ButtonPrimitives 482 B
frontend/dist-report/posthog-app/src/queries/nodes/WebVitals/WebVitals 12.8 kB
frontend/dist-report/posthog-app/src/queries/nodes/WebVitals/WebVitalsPathBreakdown 5.17 kB
frontend/dist-report/posthog-app/src/queries/Query/Query 6.44 kB
frontend/dist-report/posthog-app/src/queries/schema 969 kB
frontend/dist-report/posthog-app/src/scenes/activity/explore/EventsScene 8.61 kB
frontend/dist-report/posthog-app/src/scenes/activity/explore/SessionsScene 9.95 kB
frontend/dist-report/posthog-app/src/scenes/activity/live/LiveEventsTable 6.61 kB
frontend/dist-report/posthog-app/src/scenes/agentic/AgenticAuthorize 5.51 kB
frontend/dist-report/posthog-app/src/scenes/approvals/ApprovalDetail 17.7 kB
frontend/dist-report/posthog-app/src/scenes/approvals/changeRequestsLogic 622 B
frontend/dist-report/posthog-app/src/scenes/audit-logs/AdvancedActivityLogsScene 43.1 kB
frontend/dist-report/posthog-app/src/scenes/AuthenticatedShell 207 kB
frontend/dist-report/posthog-app/src/scenes/authentication/account/AccountConnected 3.32 kB
frontend/dist-report/posthog-app/src/scenes/authentication/account/AgenticAccountMismatch 2.43 kB
frontend/dist-report/posthog-app/src/scenes/authentication/account/credential-review/CredentialReview 5.04 kB
frontend/dist-report/posthog-app/src/scenes/authentication/cli/CLIAuthorize 12.1 kB
frontend/dist-report/posthog-app/src/scenes/authentication/cli/CLILive 4.05 kB
frontend/dist-report/posthog-app/src/scenes/authentication/email-mfa-verify/EmailMFAVerify 3.04 kB
frontend/dist-report/posthog-app/src/scenes/authentication/invite-signup/InviteSignup 1.44 kB
frontend/dist-report/posthog-app/src/scenes/authentication/login-2fa/Login2FA 4.74 kB
frontend/dist-report/posthog-app/src/scenes/authentication/login/Login 1.53 kB
frontend/dist-report/posthog-app/src/scenes/authentication/login/loginLogic 569 B
frontend/dist-report/posthog-app/src/scenes/authentication/password-reset/PasswordReset 4.5 kB
frontend/dist-report/posthog-app/src/scenes/authentication/password-reset/PasswordResetComplete 3.06 kB
frontend/dist-report/posthog-app/src/scenes/authentication/shared/passkeyLogic 602 B
frontend/dist-report/posthog-app/src/scenes/authentication/signup/SignupContainer 1.42 kB
frontend/dist-report/posthog-app/src/scenes/authentication/two-factor-reset/TwoFactorReset 4.04 kB
frontend/dist-report/posthog-app/src/scenes/authentication/vercel/VercelConnect 5.03 kB
frontend/dist-report/posthog-app/src/scenes/authentication/vercel/VercelLinkError 2.3 kB
frontend/dist-report/posthog-app/src/scenes/authentication/verify-email/VerifyEmail 1.44 kB
frontend/dist-report/posthog-app/src/scenes/billing/AuthorizationStatus 768 B
frontend/dist-report/posthog-app/src/scenes/billing/Billing 717 B
frontend/dist-report/posthog-app/src/scenes/billing/BillingSection 21.8 kB
frontend/dist-report/posthog-app/src/scenes/code-canvas/CodeCanvasLink 1.89 kB
frontend/dist-report/posthog-app/src/scenes/cohorts/Cohort 34 kB
frontend/dist-report/posthog-app/src/scenes/cohorts/CohortCalculationHistory 7.34 kB
frontend/dist-report/posthog-app/src/scenes/cohorts/Cohorts 11 kB
frontend/dist-report/posthog-app/src/scenes/coupons/Coupons 895 B
frontend/dist-report/posthog-app/src/scenes/dashboard/Dashboard 7.86 kB
frontend/dist-report/posthog-app/src/scenes/dashboard/dashboards/Dashboards 22.7 kB
frontend/dist-report/posthog-app/src/scenes/dashboard/dashboards/templates/DashboardTemplateCopyScene 7.06 kB
frontend/dist-report/posthog-app/src/scenes/data-management/DataManagementScene 6.75 kB
frontend/dist-report/posthog-app/src/scenes/data-management/definition/DefinitionEdit 23.4 kB
frontend/dist-report/posthog-app/src/scenes/data-management/definition/DefinitionView 31.6 kB
frontend/dist-report/posthog-app/src/scenes/data-management/MaterializedColumns/MaterializedColumns 12.8 kB
frontend/dist-report/posthog-app/src/scenes/data-management/variables/SqlVariableEditScene 8.53 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/batch-exports/BatchExportScene 67.8 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/DataPipelinesNewScene 5.32 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/DestinationsScene 5.71 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/event-filtering/EventFilterScene 23.3 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/legacy-plugins/LegacyPluginScene 22 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/TransformationsScene 4.92 kB
frontend/dist-report/posthog-app/src/scenes/data-pipelines/WebScriptsScene 5.57 kB
frontend/dist-report/posthog-app/src/scenes/data-warehouse/DataWarehouseScene 2.06 kB
frontend/dist-report/posthog-app/src/scenes/data-warehouse/editor/EditorScene 4.98 kB
frontend/dist-report/posthog-app/src/scenes/debug/DebugScene 25.4 kB
frontend/dist-report/posthog-app/src/scenes/debug/hog/HogRepl 8.98 kB
frontend/dist-report/posthog-app/src/scenes/experiments/Experiment 227 kB
frontend/dist-report/posthog-app/src/scenes/experiments/Experiments 23.3 kB
frontend/dist-report/posthog-app/src/scenes/experiments/notebook/NotebookCompactTable 2.01 kB
frontend/dist-report/posthog-app/src/scenes/experiments/SharedMetrics/SharedMetric 12.4 kB
frontend/dist-report/posthog-app/src/scenes/experiments/SharedMetrics/SharedMetrics 1.84 kB
frontend/dist-report/posthog-app/src/scenes/exports/ExportsScene 5.56 kB
frontend/dist-report/posthog-app/src/scenes/feature-flags/FeatureFlag 117 kB
frontend/dist-report/posthog-app/src/scenes/feature-flags/FeatureFlags 3.94 kB
frontend/dist-report/posthog-app/src/scenes/groups/Group 23.7 kB
frontend/dist-report/posthog-app/src/scenes/groups/Groups 9.58 kB
frontend/dist-report/posthog-app/src/scenes/groups/GroupsNew 8.62 kB
frontend/dist-report/posthog-app/src/scenes/health-alerts/HealthAlertsScene 6.33 kB
frontend/dist-report/posthog-app/src/scenes/health/categoryDetail/HealthCategoryDetailScene 13.3 kB
frontend/dist-report/posthog-app/src/scenes/health/HealthScene 17.2 kB
frontend/dist-report/posthog-app/src/scenes/health/pipelineStatus/PipelineStatusScene 12.2 kB
frontend/dist-report/posthog-app/src/scenes/heatmaps/scenes/heatmap/HeatmapNewScene 5.18 kB
frontend/dist-report/posthog-app/src/scenes/heatmaps/scenes/heatmap/HeatmapRecordingScene 5.18 kB
frontend/dist-report/posthog-app/src/scenes/heatmaps/scenes/heatmap/HeatmapScene 7.9 kB
frontend/dist-report/posthog-app/src/scenes/heatmaps/scenes/heatmaps/HeatmapsScene 5.2 kB
frontend/dist-report/posthog-app/src/scenes/hog-functions/HogFunctionScene 60.7 kB
frontend/dist-report/posthog-app/src/scenes/hog-functions/misc/Diff 1.35 kB
frontend/dist-report/posthog-app/src/scenes/inbox/InboxScene 224 kB
frontend/dist-report/posthog-app/src/scenes/insights/InsightQuickStart/InsightQuickStart 8.19 kB
frontend/dist-report/posthog-app/src/scenes/insights/InsightScene 41.3 kB
frontend/dist-report/posthog-app/src/scenes/insights/views/BoxPlot/BoxPlot 4.96 kB
frontend/dist-report/posthog-app/src/scenes/insights/views/CalendarHeatMap/CalendarHeatMap 9.29 kB
frontend/dist-report/posthog-app/src/scenes/insights/views/RegionMap/RegionMap 30.8 kB
frontend/dist-report/posthog-app/src/scenes/insights/views/WorldMap/WorldMap 6.13 kB
frontend/dist-report/posthog-app/src/scenes/instance/AsyncMigrations/AsyncMigrations 14.3 kB
frontend/dist-report/posthog-app/src/scenes/instance/DeadLetterQueue/DeadLetterQueue 6.68 kB
frontend/dist-report/posthog-app/src/scenes/instance/QueryPerformance/QueryPerformance 12.5 kB
frontend/dist-report/posthog-app/src/scenes/instance/SystemStatus/SystemStatus 18.2 kB
frontend/dist-report/posthog-app/src/scenes/integrations/IntegrationsLandingScene 1.67 kB
frontend/dist-report/posthog-app/src/scenes/IntegrationsRedirect/IntegrationsRedirect 955 B
frontend/dist-report/posthog-app/src/scenes/marketing-analytics/MarketingAnalyticsScene 46.9 kB
frontend/dist-report/posthog-app/src/scenes/max/Max 20.9 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/CreateInsightWidget 7.33 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/CreateNotebookWidget 1.86 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/ErrorTrackingWidget 7.8 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/QueryWidget 7.27 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/SearchSessionRecordingsWidget 7.82 kB
frontend/dist-report/posthog-app/src/scenes/max/messages/adapters/UpsertDashboardWidget 1.71 kB
frontend/dist-report/posthog-app/src/scenes/models/ModelsScene 20.6 kB
frontend/dist-report/posthog-app/src/scenes/models/NodeDetailScene 19.9 kB
frontend/dist-report/posthog-app/src/scenes/moveToPostHogCloud/MoveToPostHogCloud 4.5 kB
frontend/dist-report/posthog-app/src/scenes/new-tab/NewTabScene 2.79 kB
frontend/dist-report/posthog-app/src/scenes/notebooks/NotebookCanvasScene 12.6 kB
frontend/dist-report/posthog-app/src/scenes/notebooks/NotebookPanel/NotebookPanel 14.6 kB
frontend/dist-report/posthog-app/src/scenes/notebooks/NotebookScene 18.2 kB
frontend/dist-report/posthog-app/src/scenes/notebooks/NotebooksScene 8.73 kB
frontend/dist-report/posthog-app/src/scenes/oauth/OAuthAuthorize 810 B
frontend/dist-report/posthog-app/src/scenes/onboarding/legacy/coupon/OnboardingCouponRedemption 1.34 kB
frontend/dist-report/posthog-app/src/scenes/onboarding/Onboarding 786 kB
frontend/dist-report/posthog-app/src/scenes/onboarding/shared/sdkHealth/SdkHealthScene 9.07 kB
frontend/dist-report/posthog-app/src/scenes/organization/ConfirmOrganization/ConfirmOrganization 4.5 kB
frontend/dist-report/posthog-app/src/scenes/organization/Create/Create 704 B
frontend/dist-report/posthog-app/src/scenes/organization/Deactivated 1.17 kB
frontend/dist-report/posthog-app/src/scenes/organization/PendingDeletion 2.24 kB
frontend/dist-report/posthog-app/src/scenes/persons/PersonScene 28.6 kB
frontend/dist-report/posthog-app/src/scenes/persons/PersonsScene 11.8 kB
frontend/dist-report/posthog-app/src/scenes/PreflightCheck/PreflightCheck 5.57 kB
frontend/dist-report/posthog-app/src/scenes/product-tours/ProductTour 273 kB
frontend/dist-report/posthog-app/src/scenes/product-tours/ProductTours 6 kB
frontend/dist-report/posthog-app/src/scenes/project-homepage/ProjectHomepage 27.6 kB
frontend/dist-report/posthog-app/src/scenes/project/Create/Create 982 B
frontend/dist-report/posthog-app/src/scenes/project/PendingDeletion 2.6 kB
frontend/dist-report/posthog-app/src/scenes/resource-transfer/ResourceTransfer 10.5 kB
frontend/dist-report/posthog-app/src/scenes/saved-insights/SavedInsights 3.5 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/detail/SessionRecordingDetail 8.62 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/file-playback/SessionRecordingFilePlaybackScene 11.2 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/kiosk/SessionRecordingsKiosk 16.7 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/player/modal/SessionPlayerModal 8.33 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/player/snapshot-processing/DecompressionWorkerManager 323 B
frontend/dist-report/posthog-app/src/scenes/session-recordings/playlist/SessionRecordingsPlaylistScene 11.8 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/SessionRecordings 7.75 kB
frontend/dist-report/posthog-app/src/scenes/session-recordings/settings/SessionRecordingsSettingsScene 8.94 kB
frontend/dist-report/posthog-app/src/scenes/sessions/SessionProfileScene 21.8 kB
frontend/dist-report/posthog-app/src/scenes/settings/SettingsMap 6.73 kB
frontend/dist-report/posthog-app/src/scenes/settings/SettingsScene 10 kB
frontend/dist-report/posthog-app/src/scenes/sites/Site 1.57 kB
frontend/dist-report/posthog-app/src/scenes/startups/StartupProgram 21.1 kB
frontend/dist-report/posthog-app/src/scenes/StripeConfirmInstall/StripeConfirmInstall 3.7 kB
frontend/dist-report/posthog-app/src/scenes/subscriptions/SubscriptionScene 17.6 kB
frontend/dist-report/posthog-app/src/scenes/subscriptions/SubscriptionsScene 7.06 kB
frontend/dist-report/posthog-app/src/scenes/surveys/forms/SurveyFormBuilder 3.06 kB
frontend/dist-report/posthog-app/src/scenes/surveys/Survey 7.58 kB
frontend/dist-report/posthog-app/src/scenes/surveys/Surveys 27.8 kB
frontend/dist-report/posthog-app/src/scenes/surveys/wizard/SurveyWizard 69.8 kB
frontend/dist-report/posthog-app/src/scenes/themes/CustomCssScene 4.94 kB
frontend/dist-report/posthog-app/src/scenes/toolbar-launch/ToolbarLaunch 4.01 kB
frontend/dist-report/posthog-app/src/scenes/Unsubscribe/Unsubscribe 1.71 kB
frontend/dist-report/posthog-app/src/scenes/web-analytics/SessionAttributionExplorer/SessionAttributionExplorerScene 12.4 kB
frontend/dist-report/posthog-app/src/scenes/web-analytics/WebAnalyticsScene 20.9 kB
frontend/dist-report/posthog-app/src/scenes/wizard/Wizard 4.45 kB
frontend/dist-report/posthog-app/src/sharedChunkAnchors 1.33 kB
frontend/dist-report/render-query/src/render-query/render-query 24.9 MB
frontend/dist-report/toolbar/src/toolbar/toolbar 11.3 MB

compressed-size-action

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Migration SQL Changes

Hey 👋, we've detected some migrations on this PR. Here's the SQL output for each migration, make sure they make sense:

products/billing_alerts/backend/migrations/0001_initial.py

BEGIN;
--
-- Create model BillingAlertConfiguration
--
CREATE TABLE "billing_alerts_configuration" ("id" uuid NOT NULL PRIMARY KEY, "organization_id" uuid NOT NULL, "execution_team_id" integer NOT NULL, "created_by_id" bigint NULL, "updated_by_id" bigint NULL, "name" varchar(160) NOT NULL, "description" text NOT NULL, "enabled" boolean NOT NULL, "metric" varchar(20) NOT NULL, "currency" varchar(3) NOT NULL, "threshold_type" varchar(32) NOT NULL, "threshold_percentage" numeric(8, 2) NULL, "threshold_value" numeric(20, 6) NULL, "minimum_value" numeric(20, 6) NOT NULL, "baseline_window_days" smallint NOT NULL CHECK ("baseline_window_days" >= 0), "evaluation_delay_hours" smallint NOT NULL CHECK ("evaluation_delay_hours" >= 0), "state" varchar(20) NOT NULL, "check_interval_hours" smallint NOT NULL CHECK ("check_interval_hours" >= 0), "cooldown_hours" smallint NOT NULL CHECK ("cooldown_hours" >= 0), "snooze_until" timestamp with time zone NULL, "next_check_at" timestamp with time zone NULL, "last_checked_at" timestamp with time zone NULL, "last_notified_at" timestamp with time zone NULL, "consecutive_failures" integer NOT NULL CHECK ("consecutive_failures" >= 0), "created_at" timestamp with time zone NOT NULL, "updated_at" timestamp with time zone NULL);
--
-- Create model BillingAlertEvent
--
CREATE TABLE "billing_alerts_event" ("id" uuid NOT NULL PRIMARY KEY, "kind" varchar(32) NOT NULL, "created_at" timestamp with time zone NOT NULL, "evaluation_date" date NULL, "period_start" timestamp with time zone NULL, "period_end" timestamp with time zone NULL, "metric" varchar(20) NOT NULL, "current_value" numeric(20, 6) NULL, "baseline_value" numeric(20, 6) NULL, "absolute_delta" numeric(20, 6) NULL, "relative_delta_percentage" numeric(12, 6) NULL, "threshold_value_snapshot" numeric(20, 6) NULL, "threshold_percentage_snapshot" numeric(8, 2) NULL, "minimum_value_snapshot" numeric(20, 6) NULL, "threshold_breached" boolean NOT NULL, "state_before" varchar(20) NULL, "state_after" varchar(20) NULL, "notification_sent_at" timestamp with time zone NULL, "targets_notified" jsonb NOT NULL, "query_duration_ms" integer NULL CHECK ("query_duration_ms" >= 0), "error_code" varchar(80) NULL, "error_message" text NULL, "is_transient_error" boolean NOT NULL, "reason" text NOT NULL, "payload" jsonb NOT NULL, "alert_id" uuid NOT NULL, "team_id" integer NOT NULL);
--
-- Create constraint unique_billing_alert_check_event_date on model billingalertevent
--
CREATE UNIQUE INDEX "unique_billing_alert_check_event_date" ON "billing_alerts_event" ("alert_id", "kind", "evaluation_date") WHERE ("evaluation_date" IS NOT NULL AND "kind" = 'check');
CREATE INDEX "billing_alerts_configuration_organization_id_2e26114c" ON "billing_alerts_configuration" ("organization_id");
CREATE INDEX "billing_alerts_configuration_execution_team_id_c557fbf6" ON "billing_alerts_configuration" ("execution_team_id");
CREATE INDEX "billing_alert_org_created_idx" ON "billing_alerts_configuration" ("organization_id", "created_at" DESC);
CREATE INDEX "billing_alert_scheduler_idx" ON "billing_alerts_configuration" ("enabled", "next_check_at");
CREATE INDEX "billing_alert_org_state_idx" ON "billing_alerts_configuration" ("organization_id", "enabled", "state");
ALTER TABLE "billing_alerts_event" ADD CONSTRAINT "billing_alerts_event_alert_id_e87c3d0a_fk_billing_a" FOREIGN KEY ("alert_id") REFERENCES "billing_alerts_configuration" ("id") DEFERRABLE INITIALLY DEFERRED;
CREATE INDEX "billing_alerts_event_alert_id_e87c3d0a" ON "billing_alerts_event" ("alert_id");
CREATE INDEX "billing_alerts_event_team_id_0f549506" ON "billing_alerts_event" ("team_id");
CREATE INDEX "billing_event_team_ts_idx" ON "billing_alerts_event" ("team_id", "created_at" DESC);
CREATE INDEX "billing_event_alert_ts_idx" ON "billing_alerts_event" ("alert_id", "created_at" DESC);
CREATE INDEX "billing_event_alert_date_idx" ON "billing_alerts_event" ("alert_id", "evaluation_date");
CREATE INDEX "billing_event_kind_ts_idx" ON "billing_alerts_event" ("kind", "created_at" DESC);
COMMIT;

Last updated: 2026-06-26 15:08 UTC (e237688)

@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

🔍 Migration Risk Analysis

We've analyzed your migrations for potential risks.

Summary: 1 Safe | 0 Needs Review | 0 Blocked

✅ Safe

Brief or no lock, backwards compatible

billing_alerts.0001_initial
  └─ #1 ✅ CreateModel
     Creating new table is safe
     model: BillingAlertConfiguration
  └─ #2 ✅ CreateModel
     Creating new table is safe
     model: BillingAlertEvent
  │
  └──> ℹ️  INFO:
       ℹ️  Skipped operations on newly created tables (empty tables
       don't cause lock contention).

Last updated: 2026-06-26 15:08 UTC (e237688)

@willwearing willwearing marked this pull request as ready for review June 26, 2026 14:53
@assign-reviewers-posthog assign-reviewers-posthog Bot requested a review from a team June 26, 2026 14:53
@greptile-apps

greptile-apps Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Reviews (2): Last reviewed commit: "Merge branch 'master' into will/billing-..." | Re-trigger Greptile

@willwearing willwearing requested a review from pawel-cebula June 26, 2026 15:07
@github-actions

Copy link
Copy Markdown
Contributor

🎭 Playwright report · View test results →

⚠️ 1 flaky test:

  • view results, pause, resume, and ship (chromium)

These issues are not necessarily caused by your changes.
Annoyed by this comment? Help fix flakies and failures and it'll disappear!

@gantoine gantoine removed the request for review from a team June 26, 2026 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant