refactor: multi-dashboard structural migration
Some checks failed
CI / lint-and-test (pull_request) Has been cancelled
Some checks failed
CI / lint-and-test (pull_request) Has been cancelled
- Rename dbt project from toronto_housing to portfolio - Restructure dbt models into domain subdirectories: - shared/ for cross-domain dimensions (dim_time) - staging/toronto/, intermediate/toronto/, marts/toronto/ - Update SQLAlchemy models for raw_toronto schema - Add explicit cross-schema FK relationships for FactRentals - Namespace figure factories under figures/toronto/ - Namespace notebooks under notebooks/toronto/ - Update Makefile with domain-specific targets and env loading - Update all documentation for multi-dashboard structure This enables adding new dashboard projects (e.g., /football, /energy) without structural conflicts or naming collisions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
33
dbt/models/shared/_shared.yml
Normal file
33
dbt/models/shared/_shared.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
version: 2
|
||||
|
||||
models:
|
||||
- name: stg_dimensions__time
|
||||
description: "Staged time dimension - shared across all projects"
|
||||
columns:
|
||||
- name: date_key
|
||||
description: "Primary key (YYYYMM format)"
|
||||
data_tests:
|
||||
- unique
|
||||
- not_null
|
||||
- name: full_date
|
||||
description: "First day of month"
|
||||
data_tests:
|
||||
- not_null
|
||||
- name: year
|
||||
description: "Calendar year"
|
||||
data_tests:
|
||||
- not_null
|
||||
- name: month
|
||||
description: "Month number (1-12)"
|
||||
data_tests:
|
||||
- not_null
|
||||
- name: quarter
|
||||
description: "Quarter (1-4)"
|
||||
data_tests:
|
||||
- not_null
|
||||
- name: month_name
|
||||
description: "Month name"
|
||||
data_tests:
|
||||
- not_null
|
||||
- name: is_month_start
|
||||
description: "Always true (monthly grain)"
|
||||
Reference in New Issue
Block a user