DataHub-powered pull request governance

Know what a data change affects before you merge it.

LineageGate turns DataHub lineage and governance evidence into deterministic GitHub Checks, commit-bound approvals, actionable remediation, and a durable decision trail.

Deterministic policySHA-bound approvalFail-closed evidence
LineageGate workflow: proposed change, DataHub lineage evidence, and governed merge decision
Conceptual overview. Product proof appears below.
135 secproof-driven demo
161tests under coverage
9 / 9live integrations passed
1 trailPR to DataHub readback

The governance blind spot

The diff is visible. The downstream cost usually is not.

A deleted column may affect dashboards, owned datasets, quality checks, and consumers that never appear in the pull request. LineageGate brings that catalog context into the merge decision without letting generated text decide policy.

How it works

One evidence contract, four deliberate steps.

1

Detect

Compare validated base and head dbt manifests.

2

Resolve

Map changed models and columns to DataHub assets.

3

Decide

Evaluate typed policy over a frozen evidence envelope.

4

Verify

Bind approval to the current SHA, read back, and audit.

Verified end-to-end evidence

A breaking change, followed all the way to durable proof.

Every product image below comes from the same sanitized signed-webhook run. No screenshot was generated or reconstructed for presentation.

A breaking schema diff
01 · Proposed change

A breaking schema diff

The pull request removes a field and establishes the exact commit under review.

The GitHub Check blocks
02 · Fail closed

The GitHub Check blocks

Incomplete or unsafe evidence becomes an explicit blocked result, never a guess.

Old approval becomes stale
03 · Commit binding

Old approval becomes stale

A remediation commit creates a new run; approval for the earlier SHA cannot carry forward.

The same Check succeeds
04 · Current approval

The same Check succeeds

Current-commit approval and re-verification update the existing Check to success.

Decision readback is verified
05 · DataHub

Decision readback is verified

LineageGate saves the final decision to DataHub and compares immutable fields before green.

The audit trail survives
06 · Durable record

The audit trail survives

Persisted runs, approvals, effects, and events reconstruct what happened and why.

Architecture

Policy stays deterministic. Integrations stay replaceable.

GitHub Appsigned webhooks · Checks · reviews
Hono ingressverify · authorize · deduplicate
Durable workflowidempotent steps · retries · waits
Policy enginetyped facts · reason codes · obligations
DataHub MCPentities · schema · lineage · documents
PostgreSQLevidence · decisions · approvals · audit

The model adapter is optional and bounded to grounded explanations. It cannot override policy or directly mutate GitHub or DataHub.

Run the verified project

Start with deterministic checks. Add live integrations deliberately.

The repository includes source, Docker-based local services, migrations, fixtures, tests, the final video project, and sanitized evidence.

  • Node.js 24 and pnpm 11
  • PostgreSQL 17 and DataHub Core / MCP
  • GitHub App credentials only for live webhook proof
Deterministic local gate
corepack enable
pnpm install --frozen-lockfile
pnpm format:check
pnpm lint
pnpm typecheck
pnpm test:unit
pnpm test:contract
pnpm build

Live scripts require scoped GitHub and DataHub credentials.

Truthful scope

What is proven, and what comes next.

Proven

Signed webhook handling, evidence acquisition, fail-closed policy, SHA-bound approval, Check updates, DataHub write/readback, restart recovery, and durable audit.

Still next

A hardened hosted runtime, multi-runner lease renewal, broader artifact acquisition, and configurable organization policy packs.