dbt-conceptual 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- dbt_conceptual-0.4.0/.claude/COLLABORATION_NOTES.md +37 -0
- dbt_conceptual-0.4.0/.claude/INSTRUCTIONS.md +210 -0
- dbt_conceptual-0.4.0/.claude/POST_MERGE_CHECKLIST.md +66 -0
- dbt_conceptual-0.4.0/.claude/settings.local.json +89 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/APPLICATION.md +1165 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/MOCKUPS.html +2113 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/POSITIONING.md +210 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/dbt-conceptual-final-mockups.html +2113 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/dbt-conceptual-specs.zip +0 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/spec-application.md +1165 -0
- dbt_conceptual-0.4.0/.claude/spec/take2/spec-positioning.md +243 -0
- dbt_conceptual-0.4.0/.devcontainer/devcontainer.json +36 -0
- dbt_conceptual-0.4.0/.devcontainer/post-create.sh +33 -0
- dbt_conceptual-0.4.0/.devcontainer/starship.toml +61 -0
- dbt_conceptual-0.4.0/.github/BRANCH_PROTECTION.md +91 -0
- dbt_conceptual-0.4.0/.github/workflows/ci.yml +62 -0
- dbt_conceptual-0.4.0/.github/workflows/codecov.yml +34 -0
- dbt_conceptual-0.4.0/.github/workflows/feature.yml +171 -0
- dbt_conceptual-0.4.0/.github/workflows/pr.yml +264 -0
- dbt_conceptual-0.4.0/.github/workflows/publish.yml +34 -0
- dbt_conceptual-0.4.0/.gitignore +155 -0
- dbt_conceptual-0.4.0/CHANGELOG.md +118 -0
- dbt_conceptual-0.4.0/CLAUDE.md +71 -0
- dbt_conceptual-0.4.0/CODE_OF_CONDUCT.md +7 -0
- dbt_conceptual-0.4.0/CONTRIBUTING.md +131 -0
- dbt_conceptual-0.4.0/LICENSE +21 -0
- dbt_conceptual-0.4.0/PKG-INFO +583 -0
- dbt_conceptual-0.4.0/README.md +525 -0
- dbt_conceptual-0.4.0/SECURITY.md +34 -0
- dbt_conceptual-0.4.0/build-frontend.sh +39 -0
- dbt_conceptual-0.4.0/examples/README.md +53 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/dbt_project.yml +6 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/conceptual/conceptual.yml +48 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/conceptual/layout.yml +8 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/gold/dim_customer.yml +7 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/gold/dim_product.yml +7 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/gold/fact_orders.yml +10 -0
- dbt_conceptual-0.4.0/examples/sample-dbt-project/models/silver/dim_customer_crm.yml +7 -0
- dbt_conceptual-0.4.0/frontend/.gitignore +24 -0
- dbt_conceptual-0.4.0/frontend/README.md +73 -0
- dbt_conceptual-0.4.0/frontend/eslint.config.js +23 -0
- dbt_conceptual-0.4.0/frontend/index.html +13 -0
- dbt_conceptual-0.4.0/frontend/package-lock.json +3517 -0
- dbt_conceptual-0.4.0/frontend/package.json +32 -0
- dbt_conceptual-0.4.0/frontend/public/vite.svg +1 -0
- dbt_conceptual-0.4.0/frontend/src/App.css +42 -0
- dbt_conceptual-0.4.0/frontend/src/App.tsx +18 -0
- dbt_conceptual-0.4.0/frontend/src/assets/react.svg +1 -0
- dbt_conceptual-0.4.0/frontend/src/components/Canvas.tsx +152 -0
- dbt_conceptual-0.4.0/frontend/src/components/ConceptNode.tsx +94 -0
- dbt_conceptual-0.4.0/frontend/src/components/Modal.tsx +62 -0
- dbt_conceptual-0.4.0/frontend/src/components/ModelsTab.tsx +100 -0
- dbt_conceptual-0.4.0/frontend/src/components/PropertiesTab.tsx +255 -0
- dbt_conceptual-0.4.0/frontend/src/components/PropertyPanel.tsx +68 -0
- dbt_conceptual-0.4.0/frontend/src/components/RelationshipEdge.tsx +85 -0
- dbt_conceptual-0.4.0/frontend/src/components/SettingsModal.tsx +223 -0
- dbt_conceptual-0.4.0/frontend/src/components/Toolbar.tsx +28 -0
- dbt_conceptual-0.4.0/frontend/src/index.css +68 -0
- dbt_conceptual-0.4.0/frontend/src/main.tsx +10 -0
- dbt_conceptual-0.4.0/frontend/src/store.ts +139 -0
- dbt_conceptual-0.4.0/frontend/src/tokens.css +976 -0
- dbt_conceptual-0.4.0/frontend/src/types.ts +91 -0
- dbt_conceptual-0.4.0/frontend/tsconfig.app.json +28 -0
- dbt_conceptual-0.4.0/frontend/tsconfig.json +7 -0
- dbt_conceptual-0.4.0/frontend/tsconfig.node.json +26 -0
- dbt_conceptual-0.4.0/frontend/vite.config.ts +15 -0
- dbt_conceptual-0.4.0/pyproject.toml +129 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/__init__.py +3 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/cli.py +782 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/config.py +157 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/__init__.py +15 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/bus_matrix.py +341 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/coverage.py +552 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/excalidraw.py +272 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/mermaid.py +80 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/exporter/png.py +235 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/parser.py +267 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/scanner.py +158 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/server.py +454 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/state.py +138 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/assets/index-D2daszby.js +40 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/assets/index-cQhhTu-I.css +1 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon-16x16.png +0 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon-32x32.png +0 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon-48x48.png +0 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon.ico +0 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon.png +0 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/favicon.svg +26 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/static/index.html +18 -0
- dbt_conceptual-0.4.0/src/dbt_conceptual/validator.py +387 -0
- dbt_conceptual-0.4.0/tests/__init__.py +1 -0
- dbt_conceptual-0.4.0/tests/test_cli.py +882 -0
- dbt_conceptual-0.4.0/tests/test_config.py +151 -0
- dbt_conceptual-0.4.0/tests/test_exporter.py +765 -0
- dbt_conceptual-0.4.0/tests/test_parser.py +329 -0
- dbt_conceptual-0.4.0/tests/test_scanner.py +198 -0
- dbt_conceptual-0.4.0/tests/test_server.py +330 -0
- dbt_conceptual-0.4.0/tests/test_state.py +136 -0
- dbt_conceptual-0.4.0/tests/test_validator.py +172 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Collaboration Guidelines
|
|
2
|
+
|
|
3
|
+
## Communication Protocol
|
|
4
|
+
|
|
5
|
+
### When to Pause and Consult
|
|
6
|
+
|
|
7
|
+
**CRITICAL**: When encountering technical issues, architectural decisions, or design patterns, PAUSE and communicate with the user BEFORE implementing solutions.
|
|
8
|
+
|
|
9
|
+
The user is an architect with 30+ years of experience and may have:
|
|
10
|
+
- Established patterns to follow
|
|
11
|
+
- Architectural preferences
|
|
12
|
+
- Better solutions based on deep system knowledge
|
|
13
|
+
- Context that isn't visible in the code
|
|
14
|
+
|
|
15
|
+
### Examples of When to Pause:
|
|
16
|
+
1. **Mysterious/unexpected errors** - Like the duplicate key error we encountered
|
|
17
|
+
2. **Multiple solution approaches** - Present options rather than choosing
|
|
18
|
+
3. **Architectural decisions** - Database patterns, code organization, etc.
|
|
19
|
+
4. **Performance issues** - May have existing patterns or constraints
|
|
20
|
+
5. **Refactoring** - Discuss scope and approach first
|
|
21
|
+
6. **Breaking changes** - Get approval before proceeding
|
|
22
|
+
|
|
23
|
+
### Pattern: Pause → Discuss → Implement
|
|
24
|
+
1. Identify the problem clearly
|
|
25
|
+
2. Present 2-3 potential approaches (if obvious)
|
|
26
|
+
3. Ask for guidance/preferences
|
|
27
|
+
4. Implement the chosen solution
|
|
28
|
+
|
|
29
|
+
## Lessons Learned
|
|
30
|
+
|
|
31
|
+
### Orchestrator Pattern (Issue #40)
|
|
32
|
+
**Problem**: Multiple INSERT statements in one `run_query()` caused DuckDB parser confusion
|
|
33
|
+
**Solution**: User suggested orchestrator pattern - split into table-by-table sequential execution
|
|
34
|
+
**Takeaway**: User's architectural experience immediately identified the right pattern. Should have consulted earlier rather than debugging alone.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
Last Updated: 2026-01-17
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
# Claude Code Instructions
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
This project uses a spec-driven development workflow. Specs define what to build, GitHub Issues track the work, and all changes go through PRs with human approval.
|
|
6
|
+
|
|
7
|
+
**Your working context is in `.claude/`** - specs, and this instructions file.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## First Time Setup
|
|
12
|
+
|
|
13
|
+
If the GitHub repo doesn't exist yet, run:
|
|
14
|
+
```bash
|
|
15
|
+
.claude/bootstrap.sh
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
This creates the repo, labels, milestones, and branch protection.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Workflow Rules
|
|
23
|
+
|
|
24
|
+
### 0. CRITICAL: Never Commit to Main
|
|
25
|
+
- **NEVER commit directly to main branch**
|
|
26
|
+
- **ALWAYS create a feature branch first**
|
|
27
|
+
- **ALL changes must go through PR workflow**
|
|
28
|
+
- This applies to documentation, code, scripts - everything
|
|
29
|
+
- Exception: Only during initial bootstrap (before branch protection)
|
|
30
|
+
|
|
31
|
+
### 1. Issue-First Development
|
|
32
|
+
- **NEVER code without a GitHub Issue**
|
|
33
|
+
- Read the spec for the current phase
|
|
34
|
+
- Create Issues from the spec using `gh issue create`
|
|
35
|
+
- Reference spec section in issue body
|
|
36
|
+
|
|
37
|
+
### 2. Branch Strategy
|
|
38
|
+
```
|
|
39
|
+
main (protected)
|
|
40
|
+
└── feature/<issue-number>-<short-description>
|
|
41
|
+
└── fix/<issue-number>-<short-description>
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Examples:
|
|
45
|
+
- `feature/1-add-pr-workflow`
|
|
46
|
+
- `feature/5-devcontainer`
|
|
47
|
+
- `fix/12-update-workflow-docs`
|
|
48
|
+
|
|
49
|
+
### 3. Pre-Commit Checklist
|
|
50
|
+
Before ANY commit:
|
|
51
|
+
```bash
|
|
52
|
+
# Lint shell scripts
|
|
53
|
+
shellcheck scripts/*.sh scripts/**/*.sh 2>/dev/null || true
|
|
54
|
+
|
|
55
|
+
# Lint YAML
|
|
56
|
+
yamllint .github/workflows/*.yml .yamllint.yml 2>/dev/null || true
|
|
57
|
+
|
|
58
|
+
# Check JSON
|
|
59
|
+
find . -name "*.json" -exec python -m json.tool {} \; >/dev/null
|
|
60
|
+
|
|
61
|
+
# Ensure scripts are executable
|
|
62
|
+
find . -name "*.sh" -exec chmod +x {} \;
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 4. Commit Messages
|
|
66
|
+
```
|
|
67
|
+
<type>(<scope>): <subject>
|
|
68
|
+
|
|
69
|
+
<body>
|
|
70
|
+
|
|
71
|
+
Closes #<issue-number>
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Types: `feat`, `fix`, `docs`, `style`, `refactor`, `test`, `chore`
|
|
75
|
+
|
|
76
|
+
Examples:
|
|
77
|
+
- `feat(devcontainer): add GitHub Codespaces support`
|
|
78
|
+
- `docs(readme): add quick start guide`
|
|
79
|
+
- `chore(ci): add shellcheck to PR workflow`
|
|
80
|
+
|
|
81
|
+
### 5. Pull Request Process
|
|
82
|
+
```bash
|
|
83
|
+
# Create PR
|
|
84
|
+
gh pr create --title "feat: <description>" --body "Closes #<issue>"
|
|
85
|
+
|
|
86
|
+
# Check status
|
|
87
|
+
gh pr checks
|
|
88
|
+
|
|
89
|
+
# STOP - Wait for human approval
|
|
90
|
+
# NEVER merge without approval
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### 6. Post-Merge Workflow
|
|
94
|
+
**IMMEDIATELY after PR is merged:**
|
|
95
|
+
|
|
96
|
+
See [POST_MERGE_CHECKLIST.md](.claude/POST_MERGE_CHECKLIST.md) for full details.
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
# 1. Pull latest changes
|
|
100
|
+
git checkout main
|
|
101
|
+
git pull
|
|
102
|
+
|
|
103
|
+
# 2. Update STATUS.md
|
|
104
|
+
# - Mark completed tasks with ✅
|
|
105
|
+
# - Update "Current Phase" if phase is complete
|
|
106
|
+
# - Update "Next Steps" section
|
|
107
|
+
# - Update "Last Updated" date
|
|
108
|
+
|
|
109
|
+
# 3. Commit status update
|
|
110
|
+
git add .claude/STATUS.md
|
|
111
|
+
git commit -m "docs(status): update progress after PR #<number>
|
|
112
|
+
|
|
113
|
+
Updates STATUS.md to reflect completion of <task description>."
|
|
114
|
+
git push
|
|
115
|
+
|
|
116
|
+
# This keeps STATUS.md in sync and provides continuity across sessions
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Working Through Phases
|
|
122
|
+
|
|
123
|
+
### Current Status
|
|
124
|
+
**Check STATUS.md first:** `cat .claude/STATUS.md` or run `.claude/check-status.sh`
|
|
125
|
+
|
|
126
|
+
Also check milestones: `gh issue list --milestone "Phase 00: Bootstrap"`
|
|
127
|
+
|
|
128
|
+
### Phase Order
|
|
129
|
+
1. `00_bootstrap.md` - Repo setup, CI, templates
|
|
130
|
+
2. `01_project_structure.md` - Devcontainer, common.sh
|
|
131
|
+
3. `02_azure_provisioning.md` - Azure CLI scripts
|
|
132
|
+
4. `03_database_configuration.md` - Schemas, users, CT
|
|
133
|
+
5. `04_seed_data.md` - Baseline data
|
|
134
|
+
6. `05_delta_scripts.md` - Change simulation
|
|
135
|
+
7. `06_utilities.md` - Reset, verify scripts
|
|
136
|
+
8. `07_databricks_integration.md` - Lakeflow setup
|
|
137
|
+
9. `08_documentation_polish.md` - Final docs
|
|
138
|
+
|
|
139
|
+
### Starting a Phase
|
|
140
|
+
```bash
|
|
141
|
+
# 0. Check current status
|
|
142
|
+
cat .claude/STATUS.md
|
|
143
|
+
|
|
144
|
+
# 1. Read the spec
|
|
145
|
+
cat .claude/specs/XX_name.md
|
|
146
|
+
|
|
147
|
+
# 2. Update STATUS.md - mark phase as "IN PROGRESS"
|
|
148
|
+
# Create a feature branch for the STATUS.md update
|
|
149
|
+
git checkout -b fix/<issue-num>-update-status
|
|
150
|
+
# Edit .claude/STATUS.md to update current phase
|
|
151
|
+
# Commit and create PR for status update
|
|
152
|
+
|
|
153
|
+
# 3. Create issues for that phase
|
|
154
|
+
gh issue create --title "..." --label "enhancement,phase-XX" --milestone "Phase XX: Name"
|
|
155
|
+
|
|
156
|
+
# 4. Work each issue - ALWAYS on a feature branch
|
|
157
|
+
git checkout -b feature/<issue-num>-<desc>
|
|
158
|
+
# ... implement ...
|
|
159
|
+
git add . && git commit -m "feat(scope): description
|
|
160
|
+
|
|
161
|
+
Closes #<issue>"
|
|
162
|
+
git push -u origin HEAD
|
|
163
|
+
gh pr create
|
|
164
|
+
# WAIT for approval
|
|
165
|
+
|
|
166
|
+
# 5. After PR merged - Update STATUS.md (see "Post-Merge Workflow")
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Quick Reference
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# Check project status
|
|
175
|
+
cat .claude/STATUS.md
|
|
176
|
+
./.claude/check-status.sh
|
|
177
|
+
|
|
178
|
+
# List open issues
|
|
179
|
+
gh issue list
|
|
180
|
+
|
|
181
|
+
# List issues for current phase
|
|
182
|
+
gh issue list --milestone "Phase 00: Bootstrap"
|
|
183
|
+
|
|
184
|
+
# Create issue
|
|
185
|
+
gh issue create --title "Title" --body "Description" --label "enhancement"
|
|
186
|
+
|
|
187
|
+
# Create branch
|
|
188
|
+
git checkout -b feature/42-short-description
|
|
189
|
+
|
|
190
|
+
# Create PR
|
|
191
|
+
gh pr create --fill
|
|
192
|
+
|
|
193
|
+
# Check PR status
|
|
194
|
+
gh pr checks
|
|
195
|
+
|
|
196
|
+
# View PR
|
|
197
|
+
gh pr view --web
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Important Notes
|
|
203
|
+
|
|
204
|
+
- **NEVER commit directly to main** - always use feature/fix branches and PRs
|
|
205
|
+
- **Human (F) must approve all PRs** - never merge yourself
|
|
206
|
+
- **Always update STATUS.md after PR merge** - this ensures continuity across container rebuilds and sessions
|
|
207
|
+
- If unsure about spec details, ask via Issue comment
|
|
208
|
+
- Keep PRs focused - one issue per PR
|
|
209
|
+
- Write tests alongside implementation
|
|
210
|
+
- Document as you go
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Post-Merge Checklist
|
|
2
|
+
|
|
3
|
+
Run this checklist **IMMEDIATELY** after every PR merge to maintain project continuity.
|
|
4
|
+
|
|
5
|
+
## Steps
|
|
6
|
+
|
|
7
|
+
### 1. Pull Latest Changes
|
|
8
|
+
```bash
|
|
9
|
+
git checkout main
|
|
10
|
+
git pull
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
### 2. Update STATUS.md
|
|
14
|
+
Open [.claude/STATUS.md](.claude/STATUS.md) and update:
|
|
15
|
+
|
|
16
|
+
- [ ] Mark completed task with ✅
|
|
17
|
+
- [ ] Update "Last Updated" date to today
|
|
18
|
+
- [ ] If issue closes a phase, update "Current Phase" section
|
|
19
|
+
- [ ] Update "Next Steps" section with next tasks
|
|
20
|
+
- [ ] Add any relevant notes about the work completed
|
|
21
|
+
|
|
22
|
+
### 3. Commit Status Update
|
|
23
|
+
```bash
|
|
24
|
+
git add .claude/STATUS.md
|
|
25
|
+
git commit -m "docs(status): update progress after PR #<number>
|
|
26
|
+
|
|
27
|
+
Updates STATUS.md to reflect completion of <brief task description>."
|
|
28
|
+
git push
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 4. Verify Update
|
|
32
|
+
```bash
|
|
33
|
+
# Quick check that status is updated
|
|
34
|
+
cat .claude/STATUS.md
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Why This Matters
|
|
38
|
+
|
|
39
|
+
**STATUS.md provides continuity across:**
|
|
40
|
+
- Container rebuilds (local or Codespaces)
|
|
41
|
+
- Different Claude Code sessions
|
|
42
|
+
- Context switches (you leave and come back later)
|
|
43
|
+
- Handoffs between human and AI
|
|
44
|
+
|
|
45
|
+
Without this discipline, we lose track of progress and may duplicate work or miss tasks.
|
|
46
|
+
|
|
47
|
+
## Template for STATUS.md Updates
|
|
48
|
+
|
|
49
|
+
When marking a phase section:
|
|
50
|
+
```markdown
|
|
51
|
+
### Phase XX: Name ✅
|
|
52
|
+
- [x] Task description (#issue-number)
|
|
53
|
+
- [x] Another task (#issue-number)
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
When updating Next Steps:
|
|
57
|
+
```markdown
|
|
58
|
+
## Next Steps
|
|
59
|
+
|
|
60
|
+
### Phase XX: Name
|
|
61
|
+
Status: **IN PROGRESS** | **READY TO START** | **BLOCKED** (reason)
|
|
62
|
+
|
|
63
|
+
Tasks to create:
|
|
64
|
+
1. Description
|
|
65
|
+
2. Description
|
|
66
|
+
```
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
{
|
|
2
|
+
"permissions": {
|
|
3
|
+
"allow": [
|
|
4
|
+
"Bash(python3 -m pip install:*)",
|
|
5
|
+
"Bash(python3 -m pytest:*)",
|
|
6
|
+
"Bash(dbt-conceptual:*)",
|
|
7
|
+
"Bash(wc:*)",
|
|
8
|
+
"Bash(black --check:*)",
|
|
9
|
+
"Bash(black:*)",
|
|
10
|
+
"Bash(ruff check:*)",
|
|
11
|
+
"Bash(mypy:*)",
|
|
12
|
+
"Bash(python3 -m build:*)",
|
|
13
|
+
"Bash(pytest:*)",
|
|
14
|
+
"Bash(python3:*)",
|
|
15
|
+
"Bash(python -m pytest:*)",
|
|
16
|
+
"Bash(open htmlcov/index.html)",
|
|
17
|
+
"Bash(pip3 index:*)",
|
|
18
|
+
"Bash(git add:*)",
|
|
19
|
+
"Bash(git commit:*)",
|
|
20
|
+
"Bash(git push:*)",
|
|
21
|
+
"Bash(gh release create:*)",
|
|
22
|
+
"Bash(gh run view:*)",
|
|
23
|
+
"Bash(git checkout:*)",
|
|
24
|
+
"Bash(gh pr create:*)",
|
|
25
|
+
"Bash(git remote:*)",
|
|
26
|
+
"Bash(brew install:*)",
|
|
27
|
+
"Bash(grep:*)",
|
|
28
|
+
"Bash(chmod:*)",
|
|
29
|
+
"Bash(tar czf:*)",
|
|
30
|
+
"Bash(git merge:*)",
|
|
31
|
+
"Bash(git pull:*)",
|
|
32
|
+
"Bash(git tag:*)",
|
|
33
|
+
"Bash(npm install:*)",
|
|
34
|
+
"Bash(curl:*)",
|
|
35
|
+
"Bash(bash)",
|
|
36
|
+
"Bash(export NVM_DIR=\"$HOME/.nvm\")",
|
|
37
|
+
"Bash([ -s \"$NVM_DIR/nvm.sh\" ])",
|
|
38
|
+
"Bash(. \"$NVM_DIR/nvm.sh\")",
|
|
39
|
+
"Bash(nvm install:*)",
|
|
40
|
+
"Bash(nvm use:*)",
|
|
41
|
+
"Bash(npm run build:*)",
|
|
42
|
+
"Bash(./build-frontend.sh:*)",
|
|
43
|
+
"Bash(pkill:*)",
|
|
44
|
+
"Bash(source ~/.nvm/nvm.sh)",
|
|
45
|
+
"Bash(/Users/feriksen/repos/dbt-conceptual/build-frontend.sh)",
|
|
46
|
+
"Bash(perl -i -pe:*)",
|
|
47
|
+
"Bash(dbt parse:*)",
|
|
48
|
+
"Bash(/opt/homebrew/bin/npm run build)",
|
|
49
|
+
"Bash(ls:*)",
|
|
50
|
+
"Bash(~/.nvm/versions/node/v18.20.8/bin/npm run build)",
|
|
51
|
+
"Bash(PATH=~/.nvm/versions/node/v18.20.8/bin:$PATH npm run build:*)",
|
|
52
|
+
"Bash(PATH=~/.nvm/versions/node/v18.20.8/bin:$PATH ~/.nvm/versions/node/v18.20.8/bin/node ~/.nvm/versions/node/v18.20.8/lib/node_modules/npm/bin/npm-cli.js run build:*)",
|
|
53
|
+
"Bash(SHELL=/bin/zsh PATH=~/.nvm/versions/node/v18.20.8/bin:/bin:/usr/bin:$PATH ~/.nvm/versions/node/v18.20.8/bin/npm run build:*)",
|
|
54
|
+
"Bash(PATH=~/.nvm/versions/node/v18.20.8/bin:$PATH SHELL=/bin/zsh ~/.nvm/versions/node/v18.20.8/bin/node:*)",
|
|
55
|
+
"Bash(source ~/.zshrc)",
|
|
56
|
+
"Bash(dbt list:*)",
|
|
57
|
+
"Bash(open:*)",
|
|
58
|
+
"Bash(Interactive Conceptual Modeler\"\n- Always display all three medallion badges \\(bronze/silver/gold\\) even at count 0\n- Move status indicator to top-right corner of concept boxes\n\nThe Databricks logo usage is for educational/descriptive purposes to represent\nmedallion architecture patterns. Custom green favicon provides distinct brand\nidentity while avoiding trademark issues.\n\nCo-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>\nEOF\n\\)\")",
|
|
59
|
+
"Bash(bash:*)",
|
|
60
|
+
"Bash(sh)",
|
|
61
|
+
"Bash(export PATH=\"$HOME/.local/bin:$PATH\")",
|
|
62
|
+
"Bash(gh:*)",
|
|
63
|
+
"Bash($HOME/.local/bin/gh auth status)",
|
|
64
|
+
"Bash(/usr/bin/git remote -v)",
|
|
65
|
+
"Bash(/usr/bin/git status)",
|
|
66
|
+
"Bash(/usr/bin/git add src/dbt_conceptual/exporter/png.py)",
|
|
67
|
+
"Bash(/usr/bin/git commit:*)",
|
|
68
|
+
"Bash(/usr/bin/git push origin feature/model-management)",
|
|
69
|
+
"Bash($HOME/.local/bin/gh pr list --head feature/model-management)",
|
|
70
|
+
"Bash($HOME/.local/bin/gh:*)",
|
|
71
|
+
"Bash(/usr/bin/git log main..HEAD --oneline)",
|
|
72
|
+
"Bash(~/.local/bin/gh run view 21068086918 --log-failed)",
|
|
73
|
+
"Bash(~/.local/bin/gh pr checks 3 --watch)",
|
|
74
|
+
"Bash(~/.local/bin/gh run view 21070050063 --log-failed)",
|
|
75
|
+
"Bash(/usr/bin/git add -A)",
|
|
76
|
+
"Bash(~/.local/bin/gh run view 21070102277 --log-failed)",
|
|
77
|
+
"Bash(~/.local/bin/gh run view 21070171744 --log-failed)",
|
|
78
|
+
"Bash(~/.local/bin/gh pr view 3 --json state,statusCheckRollup)",
|
|
79
|
+
"Bash(~/.local/bin/gh run view 21070862964 --log-failed)",
|
|
80
|
+
"Bash(~/.local/bin/gh pr checks 3)",
|
|
81
|
+
"Bash(~/.local/bin/gh run view 21071522933 --log-failed)",
|
|
82
|
+
"Bash(git fetch:*)",
|
|
83
|
+
"Bash(npm create:*)",
|
|
84
|
+
"Bash(node:*)",
|
|
85
|
+
"Bash(npm --version:*)",
|
|
86
|
+
"Bash(apt-get install:*)"
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
}
|