Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

Repository files navigation

🔐 GDPR Deletion Verifier - Temporal Hackathon

A state-of-the-art solution built for a Temporal Hackathon to answer the critical compliance question: "How would you prove a GDPR deletion request had completed across every system?"

This prototype demonstrates how to replace fragile database-backed audit logging with Temporal's native, immutable Event History. Since Temporal guarantees workflow execution to completion and keeps a tamper-proof cryptographic-grade ledger of all activity states and inputs/outputs, it serves as the ultimate "Proof of Deletion" or "Certificate of Compliance".


🏗️ Architecture

                                    +-----------------------+
                                    |  Streamlit Dashboard  |
                                    |  (User & Audit UI)    |
                                    +-----------+-----------+
                                                |
                                   Starts       | Queries Events &
                                   Workflows    | Compliance Certificates
                                                v
                                    +-----------------------+
                                    |    Temporal Server    |
                                    +-----------+-----------+
                                                |
                                                | Delivers Tasks
                                                v
                                    +-----------------------+
                                    |   Go Temporal Worker  |
                                    | (GDPR Orchesteration) |
                                    +-----------+-----------+
                                                |
                     +--------------------------+--------------------------+
                     |                          |                          |
                     v                          v                          v
         +-----------------------+  +-----------------------+  +-----------------------+
         |  MaskBigQueryData     |  |  MoveToSecureStorage  |  |  VerifyDeletion       |
         |  (BigQuery Masking)   |  |  (Cold Storage/GCS)   |  |  (Multi-System Scan)  |
         +-----------------------+  +-----------------------+  +-----------------------+
  1. Streamlit Dashboard (Python): The command center. Users submit deletion requests, and compliance officers explore the immutable verification timeline. It talks directly to the Temporal Cluster via the temporalio Python SDK.
  2. Temporal Orchestrator: Manages execution reliability. If the database is down or GCS is experiencing a transient error, Temporal auto-retries.
  3. Go Worker (Golang): Houses high-performance activities for BigQuery masking, GCS archival, and multi-system deletion validation.

🚀 How to Run the App

You can run this entire self-contained ecosystem locally.

Step 1: Start the Temporal Development Server

Ensure you have the Temporal CLI installed. In a separate terminal tab, run:

temporal server start-dev

This runs the local cluster on localhost:7233 and opens the web UI at http://localhost:8080.

Step 2: Start the Go Temporal Worker

Navigate to the temporal-go directory, and run the worker:

cd temporal-go
go run cmd/worker/main.go

This starts the Go worker which subscribes to the gdpr-deletion-tasks task queue.

Step 3: Run the Streamlit Dashboard

Open another terminal tab, navigate to the streamlit-dashboard directory, and run Streamlit using uv:

cd streamlit-dashboard
uv run streamlit run app.py

This starts the dashboard and automatically opens your browser to http://localhost:8501.


🛠️ Tech Stack & Highlights

  • Golang: Native Temporal Go SDK used for executing workflows and activities. High-speed, robust backend layer.
  • Python: Streamlit framework for real-time compliance rendering and reactive UX.
  • Temporal: Guarantees 100% execution safety, automatic exponential retries for transient failures, and outputs a certified ledger of compliance.
  • UV: Ultra-fast python packaging tool for clean virtual environments.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages