Inspiration
Deleting one customer row is easy. Proving that a person's data is gone from every derived table, export, feature set, and cache is not. Privacy teams often coordinate erasure requests using inventories and spreadsheets that become outdated as pipelines change. DataHub already maintains the living context graph, so we built EraseGraph to turn that graph into an execution and evidence layer.
What it does
EraseGraph accepts a tokenized data-subject request and uses DataHub MCP to:
- Discover PII-tagged assets.
- Validate identity fields.
- Follow downstream column-level lineage.
- Load ownership, retention, and policy context.
- Assign an explainable action to every copy: DELETE, ANONYMIZE, RECOMPUTE, or LEGAL HOLD.
- Require human approval before destructive execution.
- Verify every non-exempt data store.
- Write an audit-ready verification receipt back to DataHub.
The public demo uses synthetic data and requires no credentials.
How we built it
We used DataHub OSS as the context platform and the official DataHub MCP Server for search, schema inspection, lineage traversal, entity context, and document write-back.
EraseGraph includes a protocol-native MCP adapter with initialization, session reuse, SSE and JSON handling, capability discovery, and fail-closed tool validation. A deterministic policy engine makes regulatory decisions explainable. The interactive operator console is built with React, TypeScript, Vinext, and a Cloudflare-compatible API route.
We also seeded a synthetic multi-platform lineage graph using the DataHub Python SDK, covering Postgres, Snowflake, S3, and an ML feature store.
Challenges we ran into
Privacy erasure cannot treat every downstream asset the same. A source record may need deletion, a stable hash may require anonymization, an ML feature must be recomputed, and a legal hold must block deletion without becoming an unexplained residual.
We made every decision explicit, made verification aware of policy exceptions, and placed all destructive operations behind an approval gate.
Accomplishments
- A working end-to-end workflow with no credentials required for judges.
- Real DataHub column-level lineage integration.
- Five discovered assets across three lineage hops.
- Zero non-exempt residual matches after verified execution.
- Durable evidence written back to DataHub.
- No raw personal identifiers stored in requests or receipts.
- Automated MCP protocol, policy, safety, and rendering tests.
- A public Apache-2.0 repository with complete setup instructions.
What we learned
Metadata becomes most valuable when it acts as an operational control boundary instead of only a search index. DataHub can tell an agent where data moved, who owns it, and which policy applies. The agent can then act without hiding uncertainty or bypassing human approval.
What's next
We plan to add production connector packs for Snowflake, BigQuery, Postgres, S3 manifests, and feature stores, along with signed receipts, policy-as-code bundles, and a reusable DataHub privacy-impact skill.
Built With
- cloudflare
- docker
- mcp
- node.js
- react
- typescript
- vinext
- workers
Log in or sign up for Devpost to join the conversation.