Skip to content

feat(search): find product analytics with insights - #73560

Merged
MattPua merged 3 commits into
masterfrom
posthog-code/search-insights-command
Jul 24, 2026
Merged

feat(search): find product analytics with insights#73560
MattPua merged 3 commits into
masterfrom
posthog-code/search-insights-command

Conversation

@MattPua

@MattPua MattPua commented Jul 24, 2026

Copy link
Copy Markdown
Member

Problem

People searching for "insights" in command search should quickly reach Product analytics.

Changes

  • Add "insights" as a Product analytics search keyword.
  • Carry product search keywords into command-search items.

How did you test this code?

Automated checks could not run because this checkout has no node_modules, and neither flox nor hogli is installed. Existing filterSearchItems unit coverage verifies keyword matching. No new test was added because another fixture-only keyword case would duplicate that coverage without testing production wiring.

👉 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 needed. This only adds a command-search alias.

🤖 Agent context

Autonomy: Human-driven (agent-assisted)

Codex implemented the requested search alias. I used the /writing-tests skill and kept the existing keyword-search test coverage rather than adding a redundant case.


Created with PostHog Code

Generated-By: PostHog Code
Task-Id: cae7a245-0983-40c2-8f27-5481ecd273d0
@MattPua MattPua self-assigned this Jul 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Hey @MattPua! 👋

It looks like your git author email on this PR isn't your @posthog.com address (matthewpua@gmail.com). Since you're on the PostHog team, it's worth pointing your local git author email at your @posthog.com address. Why it matters:

  • Consistent work identity in git history — internal tooling that attributes commits to team members keys off your @posthog.com address.
  • Keeps team contributions easy to tell apart from external community ones when scanning history.

You can fix it for this repo with:

git config user.email "you@posthog.com"

Or set it globally with git config --global user.email "you@posthog.com". No need to redo this PR — just a nudge for next time. 🙂

@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

🤖 CI report

⚠️ Bundle size — 🔺 +303 B (+0.0%)

Uncompressed size of every built .js bundle, compared against the base branch.

Total: 64.42 MiB · 🔺 +303 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 budget

How 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 import() / React.lazy chunks are not counted.

Root Eager (shipped) Δ vs base Budget
entry (logged-out pages, app bootstrap)
src/index.tsx
1.24 MiB · 22 files no change ███░░░░░░░ 27.6% of 4.51 MiB
authenticated shell (every logged-in page)
src/scenes/AuthenticatedShell.tsx
8.07 MiB · 3,011 files 🔺 +393 B (+0.0%) ████████░░ 83.1% 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
281.5 KiB ../node_modules/.pnpm/posthog-js@1.407.2/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
236.0 KiB src/taxonomy/core-filter-definitions-by-group.json
226.1 KiB ../node_modules/.pnpm/posthog-js@1.407.2/node_modules/posthog-js/dist/module.js
154.3 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
106.2 KiB src/lib/api.ts
94.0 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.18 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.18 MiB · 17 files no change ████░░░░░░ 38.1% of 5.72 MiB
Deferred (lazy) 2.07 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
716.0 KiB dist/toolbar/toolbar-app-UT2TAV4U.css
545.1 KiB dist/toolbar/chunk-chunk-R67YSTOI.js
484.3 KiB dist/toolbar/chunk-chunk-PY4X2WR2.js
133.6 KiB dist/toolbar/chunk-chunk-P36RTWFE.js
131.8 KiB dist/toolbar/chunk-chunk-T5KY5WYR.js
71.0 KiB dist/toolbar/toolbar-app-KIASA47E.js
69.0 KiB dist/toolbar/chunk-chunk-27JL52RE.js
35.6 KiB dist/toolbar/chunk-chunk-NZ4IQ3HA.js
20.9 KiB dist/toolbar/chunk-chunk-DKDYNNXI.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 — 🔺 +20.2 KiB (+0.0%)

Total size of the built frontend/dist folder (all assets), compared against the base branch.

Total: 1353.96 MiB · 🔺 +20.2 KiB (+0.0%)

⚠️ Playwright — 1 flaky

🎭 Playwright report · View test results →

⚠️ 1 flaky test:

  • Duplicating a dashboard preserves text cards, date filter, and variables (chromium)

These issues are not necessarily caused by your changes.
Annoyed by this section? Help fix flakies and failures and it will go green!

@MattPua
MattPua marked this pull request as ready for review July 24, 2026 15:27
@github-actions
github-actions Bot requested a deployment to preview-pr-73560 July 24, 2026 15:27 In progress
@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

🦔 Hogbox preview · ✅ ready

▶ Open the preview

🔑 Login test@posthog.com / 12345678 (demo data)
🧩 Running this PR's backend and frontend, on the PostHog :master base
🔗 Link stable across rebuilds — a re-push swaps the box underneath, the URL stays
🔒 Access tailnet only (PostHog VPN)
🛠️ Admin inspect & debug state in hogland
💤 Idle sleeps after ~30 min idle (snapshot to S3, zero node cost) and wakes on your next visit in ~30s, behind a brief "waking up" screen

commit d047391 · box box-7551ef74295a · ready in 1051s (push → usable) · build log · rebuilds on every push, torn down on close

@greptile-apps

greptile-apps Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor
Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
frontend/src/products.tsx:2090
**Generated alias loses its source**

When CI or a later manifest change runs `build:products`, the generator reconstructs this entry from the Product analytics manifest, which does not contain `searchKeywords`, causing the generated-file check to fail or the “insights” command-search alias to be removed. Add the alias to the source manifest and regenerate this file.

Reviews (1): Last reviewed commit: "feat(search): find product analytics wit..." | Re-trigger Greptile

Comment thread frontend/src/products.tsx Outdated
Generated-By: PostHog Code
Task-Id: cae7a245-0983-40c2-8f27-5481ecd273d0
@github-actions
github-actions Bot requested a deployment to preview-pr-73560 July 24, 2026 15:30 In progress
Generated-By: PostHog Code
Task-Id: cae7a245-0983-40c2-8f27-5481ecd273d0
@MattPua MattPua added the stamphog Request AI approval (no full review) label Jul 24, 2026 — with PostHog

@stamphog stamphog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Tiny, contained addition of a search keyword alias in frontend search logic; no risky territory touched, and the prior generated-file concern was addressed by moving the keyword into searchLogic.tsx instead of the generated products.tsx.

  • Author wrote 0% of the modified lines and has 5 merged PRs in these paths (familiarity MODERATE).
  • 👍 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 4L, 1F substantive — within ceiling
tier T1-agent / T1a-trivial (4L, 1F, single-area, feat)
stamphog 2.0.0b3 .stamphog/policy.yml @ 8e4fb2f · reviewed head d047391

@MattPua
MattPua enabled auto-merge (squash) July 24, 2026 15:46
@MattPua
MattPua merged commit f386649 into master Jul 24, 2026
228 checks passed
@MattPua
MattPua deleted the posthog-code/search-insights-command branch July 24, 2026 15:54
@deployment-status-posthog

deployment-status-posthog Bot commented Jul 24, 2026

Copy link
Copy Markdown

Deploy status

Environment Status Deployed At Workflow
dev ✅ Deployed 2026-07-24 16:43 UTC Run
prod-us ✅ Deployed 2026-07-24 17:00 UTC Run
prod-eu ✅ Deployed 2026-07-24 17:00 UTC Run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stamphog Request AI approval (no full review)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant