Why Impact Features How it works AI PR Analysis FAQ Controller MergeSense Contact Get Started
Change intelligence, self-hosted

Know what your code change can break, before it reaches production.

Connect your repositories, databases, and infrastructure. PrashFlow Impact discovers how they're actually related, and when a PR lands, it predicts what can break, runs the PR's own real test suite, verifies each prediction against your real connected infrastructure, and gates CI/CD on that evidence, not an AI's opinion alone.

AI predicts. PrashFlow tests. Evidence decides. A finding only leaves "predicted" when something real backs it up.

PR #821, Increase batch size for settlement export
IMPACT Score 52 / 100, MEDIUM. Reaches 3 services, 1 database.
FINDING Memory risk (possible OOM), new in-memory collection allocation, PREDICTED
VERIFY Real Execution ran the PR's own tests. Peak memory measured, finding moved to REPRODUCED.
6
AI providers supported natively: OpenAI, Azure OpenAI, Anthropic, Ollama, vLLM, or any OpenAI-compatible endpoint
4
real places Real Execution can run a PR's own tests: a connected SSH server, Kubernetes, Docker/Podman, or a local sandbox
0
simulated telemetry numbers. Every score traces back to a real diff signal or a real measurement
100%
self-hosted on infrastructure you own, Postgres included
Why Impact

A CI/CD gate that means it, because it checks its own work

Most impact predictions stop at a confidence percentage. PrashFlow Impact goes further: it can actually run the PR's own tests and check its predictions against your real infrastructure, so a finding that says REPRODUCED means something ran and confirmed it, not that a model sounded sure.

See the actual blast radius

A real System Graph, built from your connected repositories, databases, and infrastructure, not a guess. A PR's impact is walked outward from the code it actually touches.

Predictions that get checked

Real Execution actually clones and runs a PR's own test suite. Real finding verification runs a live database EXPLAIN or a real JVM measurement. A prediction either gets confirmed or disproven, never left as a permanent guess.

AI does the analysis, evidence decides the gate

Your configured AI Gateway provider can identify findings directly from a PR's real diff and the real System Graph. The CI/CD gate itself stays a deterministic policy engine, so the AI never quietly becomes the thing deciding pass or fail.

An agent that can't go rogue

The AI agent's tool registry is closed and read-oriented by design, there is no LLM-invoked execute_command or execute_sql anywhere in the codebase, enforced by a startup assertion, not a setting an admin can toggle on.

A CI/CD pipeline can actually call this

A CLI command returns a real exit code your pipeline can gate on directly, run the deterministic engine, or hand the analysis to your configured AI provider instead, same report format either way.

Own your infrastructure, own your data

Self-hosted with Docker Compose, backed by Postgres you control, the same architecture as every other PrashFlow product. Connection credentials and AI API keys are encrypted at rest and never sent to an LLM.

The problem

Every team ships PRs blind to what's downstream

None of these are exotic edge cases. They happen on every team past a handful of services.

You don't know what a PR actually reaches

A one-line change to a shared library can ripple through a dozen services. Without a real dependency graph, nobody finds out until something downstream breaks in production.

A CI gate that runs on gut feeling

Manual review catches what a reviewer happens to notice. A finding that was never actually checked against real infrastructure is just a guess with a confidence percentage attached to it.

An AI tool that can't check its own homework

An LLM will confidently describe a risk that isn't real, or miss one that is, with no way to tell which is which. Nothing changes that unless the prediction actually gets tested against something real.

How it works

Predict, test, prove, decide

Every PR goes through the same four real stages.

1

Connect

Link your repositories, databases, and infrastructure. Discovery builds the real System Graph from what it actually finds.

2

Predict

A PR lands. The deterministic engine, or your configured AI provider, walks the blast radius and produces findings grounded in the real diff.

3

Prove

Real Execution runs the PR's own real tests. Real finding verification checks a database plan or a live memory measurement. Predictions get confirmed or disproven.

4

Decide

A deterministic policy engine turns the current findings into Pass, Warn, or Block, with a written-reason override path for when a human needs to say otherwise.

Everything included

What's actually built today

No roadmap items, no "coming soon." This is what runs in the app and API right now.

System Graph and Blast Radius

Real discovery scans your connected repositories for API routes and dependency references and proposes them for review. The graph shows exactly which services, APIs, and databases a PR's change actually reaches, with one click to see everything affected at once.

Impact score, from real findings

Every factor in the score only counts if a real finding was actually generated from the diff, never from raw graph connectivity. A safe refactor scores low even in a densely-connected system.

Real Execution

Clones the PR's actual branch and runs its own real test command, against a connected SSH server, Kubernetes cluster, or Docker/Podman host, or a local sandbox. Real exit code, real logs, never simulated.

Real finding verification

Database findings get a real, read-only EXPLAIN against a connected Postgres or MySQL database. Memory and thread findings get checked against a real live JVM measurement over SSH, or a real sandbox's peak memory.

AI PR Analysis

Alongside the deterministic engine, your configured AI Gateway provider can identify findings directly from the PR's real diff patches and the real System Graph, using real provider-native tool-calling, validated against the same finding schema, then optionally auto-verify what it finds against real infrastructure. A button on the PR page, or a CLI command for CI/CD.

CI/CD policy gate

Pass, Warn, or Block, computed deterministically from the current findings, never decided by the AI itself. A written-reason override flips a Block to a logged Warn, never a silent bypass.

Multi-provider AI Gateway

OpenAI, Azure OpenAI, Anthropic, Ollama, vLLM, or any OpenAI-compatible endpoint, each with its own real tool-calling wire protocol, budget and rate limiting, and usage tracking.

Live connection health

A background worker re-probes every reachable connection every few minutes. A connection only ever shows Connected when it was actually, recently reached, never a saved-and-forgotten status.

AI PR Analysis

The AI does the analysis. Evidence still decides.

Your configured AI Gateway provider reads the PR's real diff patches and the real System Graph reach, then reports findings through a strict tool call, not free-form text. Anything that doesn't match the finding schema gets dropped, not guessed at. No provider configured, or no real diff on record, and it says so honestly instead of returning something fabricated.

  • Grounded in the PR's real diff text and the real graph, never invents a file or service that wasn't there
  • Optional auto-verify runs every applicable finding through the same real EXPLAIN/JVM checks a manual Verify click uses
  • Available from the PR page, or the CLI, same report and exit codes your pipeline already expects
AI Analyzing PR #900 against the real diff and graph reach
FOUND 2 findings: API contract break, database performance risk
VERIFIED 1 of 2 reproduced against real infrastructure
GATE Warn, deterministic policy engine, not the AI's own call
Real Execution

Not a simulated test run. An actual one.

Real Execution clones the PR's own branch and runs its real install and test command in a resource-limited, auto-removed sandbox, or against a connected SSH server, Kubernetes cluster, or Docker/Podman host if one's reachable and permitted. Every real, connected database gets exposed to the run through the environment variables its own driver already reads, scoped to exactly the database connections it was actually given, nothing else on the host.

  • Real exit code, real logs, real detected sub-projects, monorepo-aware
  • Works with Postgres, MySQL, MongoDB, and Redis connections out of the box
  • Nothing real reachable, and it says so, never pretends to have run
Real Execution, sandbox log
CLONE feature/batch-size, real branch
RUN npm test, exit code 0
DB DATABASE_URL exposed for the one connected database this project actually has
Security by design

The AI can look. It was never given a way to touch anything.

The agent's tool registry is closed and read-oriented. There is no LLM-invoked execute_command or execute_sql anywhere in this codebase, enforced by a startup assertion, not an admin toggle.

Your PR
real diff, real repository, stays yours
Impact Engine
graph reach · findings · score
Your CI/CD gate
Pass · Warn · Block, decided by policy code
Secrets encrypted at rest, AES-256-GCM Every AI tool call audit-logged No execute_command/execute_sql tool exists Verification runs fixed, code-defined operations only Gate decision made by policy code, not the LLM
Self-hosted, on your terms

Your infrastructure. Your data. Your control.

We deploy the full stack, Postgres, the Express API, and the Next.js web app, directly on infrastructure you own, along with a CLI your CI/CD pipeline calls to gate on real evidence. Nothing about your code, your diffs, or your infrastructure ever leaves your environment.

FAQ

Questions, answered

It starts as a deterministic score derived from findings actually generated by the diff, never raw graph connectivity alone. Database and Runtime findings can then be checked against real infrastructure and move from PREDICTED to REPRODUCED or DISPROVEN based on what actually happened.
The deterministic engine still runs and still produces real, evidence-based findings. AI PR Analysis and AI-generated explanations specifically require a real provider configured in AI Configuration, and say so honestly rather than falling back to a fabricated answer.
It actually clones the PR's branch and runs its own real install and test command, against a connected SSH server, Kubernetes cluster, Docker/Podman host, or a local sandbox. Real exit code, real logs. If nothing real is reachable, it reports that honestly instead of pretending to have run.
A real, read-only EXPLAIN against a connected Postgres or MySQL database today. Oracle, SQL Server, MongoDB, and Redis connections still work for Real Execution's environment injection, but query-plan verification for them isn't built yet, and the product says so rather than faking a plan.
No. The tool registry is closed and read-oriented, enforced by a startup assertion, not a setting. Real Execution and finding verification do run real operations against connected infrastructure, but the operation is always a fixed one assembled by PrashFlow's own code, never free-form text from an LLM.
No. The gate is a deterministic policy engine that reacts to the current findings, whether they came from the deterministic engine or AI PR Analysis. The AI can produce findings, it never decides the gate's outcome.
Self-hosted only today, deployed with Docker Compose on infrastructure you own, backed by Postgres you control. A managed/hosted offering isn't built yet.

See what your next PR actually reaches.

Self-hosted, evidence-based, and ready to gate your pipeline today.

Questions first? contact@prashflow.com