Project layout
The repository is a dbt project with Databricks deployment and identity helpers.
Top-level paths
Path
Contents
dbt_project.yml
Project name, resource paths, variables, model defaults, grants, and tags
profiles.yml
Local Databricks OAuth target
databricks.yml
Databricks Asset Bundle definition and dev target
resources/bricksgdpr.job.yml
Bundle job and dbt task commands
pyproject.toml
Python version, pinned dbt packages, and development tools
uv.lock
Locked Python dependency graph
.env.example
Workspace, dbt, identity, and persona example variables
models/
Layer1, priva_map, Layer2, Layer3, and case models
seeds/
Four deterministic CSV source simulators and seed metadata
functions/
Three dbt-managed Databricks SQL functions
macros/
Seven local Jinja macros
tests/
Thirty-seven singular dbt data tests
acceptance/personas/
Three positive and six denial SQL file tasks
scripts/generate_seeds.py
Deterministic CSV generator
scripts/provision_identities.sh
Persona identity topology preflight and apply operation
scripts/validate_personas.sh
Temporary-service-principal persona acceptance runner
scripts/check_publication_safety.sh
Redacted tree and reachable-history publication checks
.github/workflows/docs.yml
Strict documentation build and GitHub Pages deployment
.github/workflows/publication-safety.yml
Automated public-release safety checks
docs/
Diataxis documentation source
Model paths
Path
dbt resources
Default materialization
models/layer1/
4 typed staging models, 3 quarantine models
Views; quarantine models override to tables
models/priva_map/
2 mapping models
Table
models/layer2/
7 ephemeral control models, 4 protected models
Table; boundary and classifier models override to ephemeral
models/layer3/
3 dimensions, 2 facts
Table
models/layer3_case/
4 controlled readable models
View
Path
Documented resources
seeds/_seeds.yml
Four seeds and their string input types
functions/_functions.yml
Function signatures and fixed placement
models/layer1/_layer1.yml
Staging and quarantine contracts
models/priva_map/_priva_map.yml
Mapping columns, tags, masks, and generic tests
models/layer2/_layer2_customer.yml
Protected customer model
models/layer2/_layer2_events.yml
Event boundary, classifier, and accepted model
models/layer2/_layer2_services.yml
Service boundary, classifier, accepted model, and two unit tests
models/layer2/_layer2_invoices.yml
Invoice boundary, classifier, and accepted model
models/layer3/_layer3_dimensions.yml
Customer, service, and date dimensions
models/layer3/_layer3_facts.yml
Event and invoice facts
models/layer3_case/_layer3_case.yml
Four case-view contracts
Generated and local-only paths
Path
Status
target/
Generated dbt artifacts; ignored by Git
logs/
dbt logs; ignored by Git
.venv/
Local uv environment; ignored by Git
.databricks/
Local bundle state; ignored by Git
.env
Local environment values; ignored by Git
The layer names are not adapter contracts. Models and controls use Databricks/Spark features,
including SQL functions, secret(), Unity Catalog tags and column masks, account-group
membership predicates, left anti join, count_if, max_by, explode(sequence()), and system
information-schema relations.
Sources: dbt_project.yml, .gitignore, models/, functions/, macros/, tests/.