diff --git a/CLAUDE.md b/CLAUDE.md index 40aac0e..923d8b5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -96,32 +96,33 @@ extract_psd ### 2. Transform Layer (`transform/sqlmesh_materia/`) SQLMesh project implementing a layered data architecture. -**Working directory:** All SQLMesh commands must be run from `transform/sqlmesh_materia/` +**Working directory:** All SQLMesh commands must be run from the project root with `-p transform/sqlmesh_materia` **Key commands:** ```bash -cd transform/sqlmesh_materia +# Load secrets and run SQLMesh commands +# Always run from project root with -p flag and uv # Local development (creates virtual environment) -sqlmesh plan dev_ +esc run beanflows/prod -- uv run sqlmesh -p transform/sqlmesh_materia plan dev_ # Production -sqlmesh plan prod +esc run beanflows/prod -- uv run sqlmesh -p transform/sqlmesh_materia plan prod # Run tests -sqlmesh test +uv run sqlmesh -p transform/sqlmesh_materia test # Validate models -sqlmesh validate +uv run sqlmesh -p transform/sqlmesh_materia validate -# Run audits -sqlmesh audit +# Run audits (requires secrets) +esc run beanflows/prod -- uv run sqlmesh -p transform/sqlmesh_materia audit # Format SQL -sqlmesh format +uv run sqlmesh -p transform/sqlmesh_materia format -# Start UI -sqlmesh ui +# Start UI (requires secrets) +esc run beanflows/prod -- uv run sqlmesh -p transform/sqlmesh_materia ui ``` **Configuration:** @@ -372,4 +373,4 @@ All data is stored in Cloudflare R2 Data Catalog (Apache Iceberg) via REST API: - The pulumi env is called beanflows/prod - NEVER hardcode secrets in plaintext - Never add ssh keys to the git repo! -- If there is a simpler more direct solution and there is no other tradeoff, always choose the simpler solution \ No newline at end of file +- If there is a simpler more direct solution and there is no other tradeoff, always choose the simpler solution