
Five ways instrumentation breaks. Skene catches them on the PR.
Coding agents are pattern-matchers. They are good at logic and indifferent to side effects. The writes that record your events are side effects. These are the failure modes Skene flags.
Removed events
A coding agent refactors a checkout function and the insert that records the event disappears with it. Skene flags the missing write and names the event that used to land in the table.
Renamed columns
An agent tidies your payload. A 'plan' column becomes 'plan_tier', or a key vanishes into a constant. The column your table expects stops getting filled. Skene flags the rename and shows the old key versus the new one.
Moved events
A write gets moved out of a conditional, into a different code path, or behind a feature flag. It still exists in the code but no longer runs under the same conditions. Skene tracks where in the control flow each write lives.
Altered payloads
A column gets dropped, renamed, or its type silently changes from string to number. Postgres coerces some of it and rejects the rest. Your dashboards keep drawing from data that is quietly wrong. Skene compares each write against the schema.
Conditional firing changes
The if-block guarding the write changes. The event still fires, just not for the same users. A retention metric now misses a slice. Skene flags conditional changes that affect when an event lands, not just whether the write exists.
The Supabase writes Skene reads
Skene reads the writes your code makes into Supabase. It tracks the target table, the columns the payload sets, and where in the control flow the write sits.
- supabase.insert
- supabase.upsert
- supabase.rpc
- server inserts
- Postgres functions
Need another write pattern covered? Open an issue.
Four surfaces, same engine
PR comment
Posted by the GitHub Action. Names the file, the line, and the event affected.
Coding agent feedback
The MCP server returns findings directly to Cursor, Claude Code, or Codex before the agent commits.
JSON output
Hit the cloud validation API from a script or your own automation. Structured findings, no parsing.
Repo audit
Run a one-time snapshot of your current instrumentation surface. Useful before adopting Skene or after a big refactor.
See what your last 10 PRs quietly broke.
Install in a minute. The first repo audit runs in about as long as your CI does.