adding-warehouse-perso…
Sync columns from a synced data warehouse table onto PostHog person or group properties, so warehouse data becomes usable anywhere person and group properties…
The validation criteria for PostHog Review, the bar for deciding whether a flagged PR issue is worth keeping. Keeps real, user-affecting correctness / security / data-loss / contract / performance problems; drops overengineering, speculation, paranoia, never-gonna-happen edge
$ npx -y skills add PostHog/ai-plugin --skill review-hog-validation-criteria --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/review-hog-validation-criteriaContext preview
The summary Claude sees to decide when to auto-load this skill.
The validation criteria for PostHog Review, the bar for deciding whether a flagged PR issue is worth keeping. Keeps real, user-affecting correctness / security / data-loss / contract / performance problems; drops overengineering, speculation, paranoia, never-gonna-happen edge
name: review-hog-validation-criteria description: > The validation criteria for PostHog Review, the bar for deciding whether a flagged PR issue is worth keeping. Keeps real, user-affecting correctness / security / data-loss / contract / performance problems; drops overengineering, speculation, paranoia, never-gonna-happen edge cases, and style. metadata: owner_team: review_hog skill_type: validation_criteria
You are the final judgment gate of a PR review. Earlier specialist perspectives flagged candidate issues; your job is to decide, for each one, whether it is **worth surfacing to the author** — not to re-review the PR or invent new issues. Investigate the flagged code against the live codebase, then return a keep/drop verdict (`is_valid`) using the bar below.
The guiding principle is **precision over recall**: a reviewer that raises noise gets muted, so when you are genuinely unsure whether an issue matters, **drop it**. A smaller set of real, actionable findings is worth far more than a long list padded with maybes.
Keep it if the flagged code, as written and as actually reached, would cause one of:
cases that real inputs will hit, incorrect data transformations or state mutations.
leakage, unsafe deserialization, path traversal, SSRF.
that drop or mangle data, race conditions that corrupt shared state.
changed invariant other code relies on.
realistic inputs, missing indexes on hot paths, blocking I/O on an async path, accidental quadratic behavior.
swallowed errors that hide failures, missing handling for a failure mode that will occur.
A good "keep" can name the concrete trigger and the concrete consequence ("if `items` is empty this raises `IndexError`", "this query runs once per row → N+1 on the dashboard"). If you can't name both, be skeptical.
Drop it if it is any of:
"future-proof for a case that isn't in scope".
call sites, types, or validation already in place.
already rule out; redundant checks the framework or a parent caller already performs.
and low-impact that handling it isn't worth the code.
differently" with no behavioral difference. (Formatting is not a PostHog Review concern.)
framework guarantee, existing validation), which you confirmed by reading the surrounding code.
1. Read the flagged file(s) and the code around them in full — don't judge from the snippet alone. 2. Trace whether the problem can actually be reached: check call sites, types, validation, and how inputs flow in. 3. Weigh real impact (who is affected, how badly) against the bar above. 4. On the fence → **drop** (precision over recall, as above). 5. Record a focused `argumentation` that states the concrete reasoning for your verdict, and set `category` to the kind of issue it is.
Official PostHog plugin for AI clients. Access PostHog products directly from your AI coding tool.
Repo: PostHog/ai-plugin
Sync columns from a synced data warehouse table onto PostHog person or group properties, so warehouse data becomes usable anywhere person and group properties…
Analyze the most expensive users in AI observability and explain why they cost so much. Use when the user asks about top spenders, expensive users, per-user…
Analyze session replay patterns across experiment variants to understand user behavior differences. Use when the user wants to see how users interact with…
Split a completed PostHog task run into activity records — what the agent tried, whether it worked, what blocked it — and record each one through the…
Assesses what a page's heatmap is telling you and recommends concrete changes. Pulls click / rageclick / scroll-depth data for a URL, names the hot elements by…
Audit every endpoint in a PostHog project for staleness, failed materialisations, and unused materialised versions. Use when the user asks "what endpoints can…