Repository navigation
fix(error-tracking): query issues by severity - #86409
Conversation
Add severity to generated issue query models and pending state updates so later query execution changes can consume it safely. Generated-By: PostHog Desktop Task-Id: 543f7db8-9779-4818-8a8a-2e060579439a
Expose severity through the fingerprint state join, return it from both query shapes, and support exact and presence filters. Generated-By: PostHog Desktop Task-Id: 543f7db8-9779-4818-8a8a-2e060579439a
|
Hey @hpouillot! 👋 It looks like your git author email on this PR isn't your
You can fix it for this repo with: git config user.email "you@posthog.com"Or set it globally with |
🤖 CI report
|
| Root | Eager (shipped) | Δ vs base | Budget |
|---|---|---|---|
entry (logged-out pages, app bootstrap)src/index.tsx |
1.35 MiB · 22 files | no change | ███░░░░░░░ 30.0% of 4.51 MiB |
authenticated shell (every logged-in page)src/scenes/AuthenticatedShell.tsx |
8.61 MiB · 3,171 files | no change | █████████░ 88.6% of 9.71 MiB |
🟢 node_modules/monaco-editor/ stays out of src/index.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 [object Object] stays out of src/index.tsx
🟢 node_modules/monaco-editor/ stays out of src/scenes/AuthenticatedShell.tsx
🟢 src/lib/components/ActivityLog/describers stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
🟢 [object Object] stays out of src/scenes/AuthenticatedShell.tsx
Largest files eagerly shipped from src/index.tsx
| 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 |
| 762 B | src/index.tsx |
Largest files eagerly shipped from src/scenes/AuthenticatedShell.tsx
| Size | File |
|---|---|
| 304.7 KiB | ../node_modules/.pnpm/posthog-js@1.418.5/node_modules/posthog-js/dist/rrweb.js |
| 267.7 KiB | ../node_modules/.pnpm/@posthog+icons@0.38.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@posthog/icons/dist/posthog-icons.es.js |
| 250.7 KiB | ../node_modules/.pnpm/posthog-js@1.418.5/node_modules/posthog-js/dist/module.js |
| 246.9 KiB | src/taxonomy/core-filter-definitions-by-group.json |
| 154.2 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 |
| 104.4 KiB | src/lib/api.ts |
| 95.1 KiB | ../packages/quill/packages/quill/dist/index.js |
| 93.3 KiB | ../node_modules/.pnpm/prosemirror-view@1.40.1/node_modules/prosemirror-view/dist/index.js |
| 90.6 KiB | ../node_modules/.pnpm/@tiptap+core@3.20.6_@tiptap+pm@3.20.6/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
✅ Toolbar bundle — eager 2.24 MiB within budget
What the toolbar ships to customer pages, measured from the esbuild output (minified, post-tree-shake). The eager set is the entry plus everything statically imported from it — fetched before any feature runs; deferred chunks load lazily. The eager guardrail is 5.72 MiB. Each output file must also stay below 10 MB, where CloudFront stops compressing it. The module boundary is enforced separately by check-toolbar-graph.
| Metric | Size | Δ vs base | Budget |
|---|---|---|---|
| Eager (shipped) entry + static imports |
2.24 MiB · 17 files | no change | ████░░░░░░ 39.1% of 5.72 MiB |
| Deferred (lazy) | 2.09 MiB · 33 files | no change | n/a — loads on demand |
Loader dist/toolbar.js |
1.1 KiB | no change | █░░░░░░░░░ 5.8% of 19.5 KiB |
Largest eagerly-shipped chunks
| Size | File |
|---|---|
| 742.9 KiB | dist/toolbar/toolbar-app-AH5DY6W6.css |
| 574.5 KiB | dist/toolbar/chunk-chunk-VXEEDYQS.js |
| 484.6 KiB | dist/toolbar/chunk-chunk-QYFXPLLF.js |
| 133.6 KiB | dist/toolbar/chunk-chunk-FTKXDK3B.js |
| 131.8 KiB | dist/toolbar/chunk-chunk-T5KY5WYR.js |
| 71.2 KiB | dist/toolbar/toolbar-app-K7CQIUST.js |
| 69.0 KiB | dist/toolbar/chunk-chunk-27JL52RE.js |
| 35.6 KiB | dist/toolbar/chunk-chunk-ZNZAD6EW.js |
| 20.9 KiB | dist/toolbar/chunk-chunk-3D5VNREA.js |
| 12.2 KiB | dist/toolbar/chunk-chunk-PIK3PADE.js |
Posted automatically by check-toolbar-size · sizes are toolbar output bytes (shipped, post-tree-shake) from the esbuild metafile
✅ Dist folder size — no change
Total size of the built frontend/dist folder (all assets), compared against the base branch.
Total: 1460.82 MiB · no change
⚠️ Playwright — 1 failed
🎭 Playwright report · View test results →
❌ 1 failed test:
- Hover chart to see tooltip with data point values (chromium)
These issues are not necessarily caused by your changes.
Annoyed by this section? Help fix flakies and failures and it will go green!
Generated-By: PostHog Desktop Task-Id: 543f7db8-9779-4818-8a8a-2e060579439a
…king-severity-hogql Generated-By: PostHog Desktop Task-Id: 543f7db8-9779-4818-8a8a-2e060579439a
|
😎 Stack merged successfully - details. |
🦔 Hogbox preview · ✅ ready▶ Open the preview
commit |
|
Reviews (1): Last reviewed commit: "Merge branch 'hp/error-tracking-severity..." | Re-trigger Greptile |
There was a problem hiding this comment.
Adds a nullable, backward-compatible severity field across the error-tracking query schema, filters, and pending-update reconciliation logic; the bulk of the diff is mechanical (generated schema/snapshot files), the hand-written logic is small and covered by new tests (exact/is_set/is_not_set filter cases, pending-update constant assertion), and the description accurately matches the diff with no undisclosed behavior.
- Author wrote 10% of the modified lines and has 109 merged PRs in these paths (familiarity MODERATE).
- 👍 on the PR from greptile-apps[bot].
Gate mechanics and policy version
| Gate | Result | |
|---|---|---|
| prerequisites | ✓ | all clear |
| deny-list | ✓ | no deny categories matched |
| size | ✓ | 107L, 11F substantive, 504L/20F incl. docs/generated/snapshots — within ceiling |
| tier | ✓ | T1-agent / T1d-complex (504L, 20F, cross-cutting, fix) |
| stamphog 2.0.0b4 | .stamphog/policy.yml @ bf0a6d7 · reviewed head bf0a6d7 |
Problem
Issue queries cannot return or filter assigned severity.
The query state types accept severity, but HogQL does not read the fingerprint state field.
PR stack
Merge in this order:
Depends on: #83107
Followed by: #86410
Changes
How did you test this code?
👉 Stay up-to-date with PostHog coding conventions for a smoother review.
Automatic notifications
Docs update
None. A later stack layer updates MCP guidance.
🤖 Agent context
Autonomy: Human-driven (agent-assisted)
Pi split the existing severity change into a focused HogQL layer under human direction.
Skills invoked:
/stacking-prs,/writing-tests,/writing-code-comments,/writing-simplified-technical-english, and/writing-pr-descriptions.