Context Drift Watch
See exactly what changed in your codebase's external surface between scans. New service integrations, new environment variables, new data stores, new public routes, new major dependencies. Every addition and removal is surfaced with the commit that introduced it.
The problem it solves
AI coding assistants and fast-moving teams add new external dependencies almost invisibly. A new third-party API gets wired in. A new environment variable is required at boot. A new database connection appears. A public route ships without anyone outside the PR noticing.
These changes do not break the build. They do not show up in code review summaries. They quietly enlarge the operational surface of your application, and you find out about them the next time something breaks in production.
Context drift watch is a continuous diff of your codebase's structural surface. If a service, env var, data store or route changes, you see it before it ships, with the commit and author attached.
What it tracks
Every analysis writes a structured snapshot of your codebase's external surface to the database. The snapshot is deterministic, derived from the file tree and the manifest files, and covers five categories of change:
| Category | Examples of what is tracked |
|---|---|
| External services | Third-party API clients in code or config (Stripe, Anthropic, OpenAI, Twilio, etc.) |
| Environment variables | Variables referenced in code or declared in .env.example |
| Data stores | Database connections, cache layers, queues and storage clients |
| Routes | File-based routes for the framework in use (SvelteKit, Next.js, Nuxt, etc.) |
| Major dependencies | Additions and removals of significant runtime packages in package.json |
How drift surfaces in the dashboard
Open the Context page on any project to see the current structural surface and any unacknowledged drift since the previous snapshot. Each drift item is a card showing:
- What changed (addition or removal)
- The specific item (service name, variable name, route path)
- The commit that introduced the change, with author and message
- An Acknowledge button to mark the change as reviewed
The project sidebar shows a badge with the count of unacknowledged drift items. A timeline view lets you click between any two snapshots and see the full diff.
Context drift in PR quality gates
Two PR-level thresholds gate context drift against the latest base-branch snapshot:
- Items added: the maximum count of new surface items a PR may introduce
before the check fails. A value of
0means the gate is off entirely; set a positive value (for example3) to allow up to three additions per PR. - Items removed: the equivalent cap for removals, useful for catching
accidental deletions of routes or env vars. A value of
0disables the gate.
Both gates default to 0 so existing teams are not blocked when they upgrade.
When enabled, the PR check fails with a clear list of items added or removed and the team
either accepts the change and raises the threshold, acknowledges the new items, or amends
the PR. Configure both alongside the seven domain thresholds on the PR quality gates settings page.
Snapshot reuse on unchanged commits
Re-running analysis on the same commit reuses the existing snapshot and does not trigger drift detection. Drift only fires when the commit SHA changes.
Why this matters
Most code-quality tools score code. Context drift watch scores the shape of your codebase, which is often the operational signal that matters more. A new external service dependency is a new runtime failure mode, a new compliance question and a new bill. An unannounced env var is the source of the next "it works on my machine" incident. A new public route is a new surface to authenticate, document and monitor.
Implera surfaces these changes before they ship, attaches them to the commit and author that introduced them, and lets your team acknowledge or gate them on every pull request.