Skip to content

Commit 52bcb84

Browse files
suryaiyer95claudeanandgupta42
authored
chore: remove cost estimation and complexity scoring bindings (#31)
* chore: remove `guard_complexity_score` and `guard_estimate_cost` - Remove both functions from guard.py (bindings removed in altimate-core-internal) - Remove complexity_score and estimate_cost endpoints from server.py - Replace `guard_complexity_score` call in feedback_store.py with length heuristic - Remove associated tests from test_guard_new.py Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: remove static cost heuristic from feedback store Remove `_static_heuristic` method and dialect-specific cost profiles that depended on the now-removed `guard_complexity_score`. Tier 4 now returns a `no_data` response instead of fabricating estimates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: remove complexity/cost dispatch tests, fix tier3 assertion - Remove `TestSqlGuardComplexityDispatch` (2 tests for removed endpoint) - Remove `TestSqlGuardCostDispatch` (2 tests for removed endpoint) - Fix tier3 test to handle no_data fallback when table extraction fails Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: remove `FeedbackStore` and cost prediction system Remove the entire `sql.predict_cost` / `sql.record_feedback` system: - Delete `feedback_store.py` and its tests - Remove `SqlPredictCostTool` and `SqlRecordFeedbackTool` TypeScript tools - Remove protocol types, agent permissions, and bridge methods - Clean up all prompt files, docs, and progress references The static cost heuristic depended on the now-removed Rust `complexity_score` binding. The observation-based tiers (1-3) had no production usage. Removing entirely. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: remove dead `sqlguard_cost`, `sqlguard_complexity`, and `ci_cost_gate` tools These tools called bridge methods whose server-side handlers were already removed (they depended on the Rust `estimate_cost` and `complexity_score` bindings). - Delete 3 TypeScript tools and their registry entries - Delete `ci/cost_gate.py` module and tests - Remove protocol types and Pydantic models - Clean up docs references Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor: rename `sqlguard` to `altimate-core` across entire codebase - Rename 33 TypeScript tool files: `sqlguard-*.ts` → `altimate-core-*.ts` - Update class names: `SqlGuard*Tool` → `AltimateCore*Tool` - Update tool IDs: `sqlguard_*` → `altimate_core_*` - Update bridge methods: `"sqlguard.*"` → `"altimate_core.*"` - Update protocol interfaces: `SqlGuard*Params` → `AltimateCore*Params` - Update agent permissions in all 4 agent configs - Update Python constant: `SQLGUARD_AVAILABLE` → `ALTIMATE_CORE_AVAILABLE` - Update Python models and server dispatch method names - Update all test files (test_guard, test_guard_new, test_server_guard, test_server_guard_new) - Update prompt files, docs, and dbt lineage module comments 51 files changed, 654 substitutions (zero remaining `sqlguard` references) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: update cost-report skill to use finops tools instead of removed predict/feedback tools Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> Co-authored-by: anandgupta42 <anand@altimate.ai>
1 parent 05b3d42 commit 52bcb84

File tree

74 files changed

+705
-2603
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+705
-2603
lines changed

.altimate-code/skills/cost-report/SKILL.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ description: Analyze Snowflake query costs and identify optimization opportuniti
77

88
## Requirements
99
**Agent:** any (read-only analysis)
10-
**Tools used:** sql_execute, sql_analyze, sql_predict_cost, sql_record_feedback
10+
**Tools used:** sql_execute, sql_analyze, finops_analyze_credits, finops_expensive_queries, finops_warehouse_advice
1111

1212
Analyze Snowflake warehouse query costs, identify the most expensive queries, detect anti-patterns, and recommend optimizations.
1313

@@ -47,7 +47,6 @@ Analyze Snowflake warehouse query costs, identify the most expensive queries, de
4747

4848
3. **Analyze the top offenders** - For each of the top 10 most expensive queries:
4949
- Run `sql_analyze` on the query text to detect anti-patterns (SELECT *, missing LIMIT, cartesian products, correlated subqueries, etc.)
50-
- Run `sql_predict_cost` to get the cost tier prediction based on historical feedback data
5150
- Summarize anti-patterns found and their severity
5251

5352
4. **Classify each query into a cost tier**:
@@ -59,8 +58,7 @@ Analyze Snowflake warehouse query costs, identify the most expensive queries, de
5958
| 3 | $1.00 - $100.00 | Expensive | Optimize or review warehouse sizing |
6059
| 4 | > $100.00 | Dangerous | Immediate review required |
6160

62-
5. **Record feedback** - For each query analyzed, call `sql_record_feedback` to store the execution metrics so future predictions improve:
63-
- Pass `bytes_scanned`, `execution_time_ms`, `credits_used`, and `warehouse_size` from the query history results
61+
5. **Warehouse analysis** - Run `finops_warehouse_advice` to check if warehouses used by the top offenders are right-sized.
6462

6563
6. **Output the final report** as a structured markdown document:
6664

@@ -97,7 +95,7 @@ Analyze Snowflake warehouse query costs, identify the most expensive queries, de
9795
2. Add LIMIT clause
9896
3. Consider partitioning strategy
9997
100-
**Cost prediction:** Tier 1 (fingerprint match, high confidence)
98+
**Cost tier:** Tier 1 (based on credits used)
10199
102100
...
103101
@@ -113,4 +111,4 @@ The user invokes this skill with:
113111
- `/cost-report` -- Analyze the last 30 days
114112
- `/cost-report 7` -- Analyze the last 7 days (adjust the DATEADD interval)
115113

116-
Use the tools: `sql_execute`, `sql_analyze`, `sql_predict_cost`, `sql_record_feedback`.
114+
Use the tools: `sql_execute`, `sql_analyze`, `finops_analyze_credits`, `finops_expensive_queries`, `finops_warehouse_advice`.

PROGRESS.md

Lines changed: 29 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Last updated: 2026-02-27 00:40
2020
- [x] Phase 1 TODO: ConfidenceTracker with 7 AST detection rules — all 7 working
2121
- [x] Phase 1 TODO: Confidence signals on lineage.check — 4 signal types
2222
- [x] Phase 2A: Snowflake connector — password + key-pair auth, registered in ConnectionRegistry
23-
- [x] Phase 2B: Feedback store + cost report skill — SQLite-based, 4-tier prediction, bridge methods working
23+
- [x] Phase 2B: Cost report skill
2424
- [x] Phase 2C: dbt manifest parser — columns, sources, test/snapshot/seed counting
2525
- [x] Phase 3A: Impact analysis skill — downstream dependency graph + column-level impact classification
2626
- [x] Phase 3C: SQL translation skill — sqlglot transpile, 10 dialect-pair warnings, TS tool + skill
@@ -52,10 +52,9 @@ Last updated: 2026-02-27 00:40
5252
| 0 | Rules with known accuracy | **19/19** | 19/19 |
5353
| 0 | Analyzer overall accuracy | **100.00%** | measured |
5454
| 0 | Lineage edge match rate | **100.0%** | measured |
55-
| 1-7 | Working bridge methods | **34/34** | 34/34 |
55+
| 1-7 | Working bridge methods | **32/32** | 32/32 |
5656
| 1 | ConfidenceTracker rules | **7/7** | 7/7 |
5757
| 2 | Snowflake connector | **imports OK** | live test |
58-
| 2 | Feedback store observations | **working** | >0 |
5958
| 3 | Skills functional end-to-end | **6** | 5+ |
6059
| 4 | Rules with published benchmarks | **19/19** | 19/19 |
6160
| 5 | Schema cache tests | **20/20** | 20/20 |
@@ -110,14 +109,13 @@ UNUSED_CTE, WINDOW_WITHOUT_PARTITION
110109
- `packages/altimate-engine/src/altimate_engine/sql/analyzer.py` — 19 rules + ConfidenceTracker
111110
- `packages/altimate-engine/src/altimate_engine/sql/confidence.py` — 7 AST detection rules
112111
- `packages/altimate-engine/src/altimate_engine/lineage/check.py` — lineage + 4 confidence signals + Func/Window/Case edges
113-
- `packages/altimate-engine/src/altimate_engine/server.py` — JSON-RPC dispatch (34 methods)
112+
- `packages/altimate-engine/src/altimate_engine/server.py` — JSON-RPC dispatch (32 methods)
114113
- `packages/altimate-engine/src/altimate_engine/models.py` — All Pydantic models
115114

116115
**Phase 2 (connectors + parsers + feedback):**
117116
- `packages/altimate-engine/src/altimate_engine/connectors/snowflake.py` — password + key-pair auth
118117
- `packages/altimate-engine/src/altimate_engine/connections.py` — ConnectionRegistry with Snowflake
119118
- `packages/altimate-engine/src/altimate_engine/dbt/manifest.py` — Enhanced manifest parser
120-
- `packages/altimate-engine/src/altimate_engine/sql/feedback_store.py` — SQLite feedback + 4-tier prediction
121119

122120
**Phase 3 (skills + tools):**
123121
- `packages/altimate-engine/src/altimate_engine/sql/translator.py` — sqlglot transpile with lossy warnings
@@ -185,41 +183,39 @@ UNUSED_CTE, WINDOW_WITHOUT_PARTITION
185183
- `experiments/BENCHMARKS.md` — Published benchmark report
186184
- `experiments/benchmark_report.json` — Machine-readable benchmark data
187185

188-
### Bridge Methods (34 total)
186+
### Bridge Methods (32 total)
189187
1. `ping` — Health check
190188
2. `sql.validate` — SQL syntax validation
191189
3. `sql.check` — Read-only/mutation safety check
192190
4. `sql.execute` — SQL execution (PG/DuckDB)
193191
5. `sql.analyze` — 19 anti-pattern checks with confidence
194192
6. `sql.translate` — Cross-dialect SQL translation
195193
7. `sql.optimize` — Query optimization with suggestions
196-
8. `sql.record_feedback` — Record query execution metrics
197-
9. `sql.predict_cost` — Predict query cost (4-tier hierarchy)
198-
10. `schema.inspect` — Table schema inspection
199-
11. `lineage.check` — Column-level lineage with confidence
200-
12. `dbt.run` — dbt CLI execution
201-
13. `dbt.manifest` — Manifest parsing
202-
14. `warehouse.list` — List configured warehouses
203-
15. `warehouse.test` — Test warehouse connection
204-
16. `schema.index` — Index warehouse metadata into SQLite cache
205-
17. `schema.search` — Search indexed metadata (tables/columns) with natural language
206-
18. `schema.cache_status` — Show cache status (warehouses indexed, counts, timestamps)
207-
19. `sql.explain` — Run EXPLAIN on a query (Snowflake/PG/DuckDB dialect-specific syntax)
208-
20. `sql.format` — Format/beautify SQL via sqlglot pretty-print
209-
21. `sql.fix` — Diagnose SQL errors and suggest fixes (syntax, patterns, resolution)
210-
22. `sql.autocomplete` — Schema-aware auto-complete suggestions from cache
211-
23. `sql.diff` — Compare two SQL queries (unified diff, similarity score)
212-
24. `finops.query_history` — Query execution history (Snowflake QUERY_HISTORY, PG pg_stat_statements)
213-
25. `finops.analyze_credits` — Credit consumption analysis with recommendations
214-
26. `finops.expensive_queries` — Identify most expensive queries by bytes scanned
215-
27. `finops.warehouse_advice` — Warehouse sizing recommendations (scale up/down/burst)
216-
28. `finops.unused_resources` — Find stale tables and idle warehouses
217-
29. `finops.role_grants` — Query RBAC grants on objects/roles
218-
30. `finops.role_hierarchy` — Map role inheritance hierarchy
219-
31. `finops.user_roles` — List user-to-role assignments
220-
32. `schema.detect_pii` — Scan columns for PII patterns (30+ regex, 15 categories)
221-
33. `schema.tags` — Query metadata/governance tags on objects (Snowflake TAG_REFERENCES)
222-
34. `schema.tags_list` — List all available tags with usage counts
194+
8. `schema.inspect` — Table schema inspection
195+
9. `lineage.check` — Column-level lineage with confidence
196+
10. `dbt.run` — dbt CLI execution
197+
11. `dbt.manifest` — Manifest parsing
198+
12. `warehouse.list` — List configured warehouses
199+
13. `warehouse.test` — Test warehouse connection
200+
14. `schema.index` — Index warehouse metadata into SQLite cache
201+
15. `schema.search` — Search indexed metadata (tables/columns) with natural language
202+
16. `schema.cache_status` — Show cache status (warehouses indexed, counts, timestamps)
203+
17. `sql.explain` — Run EXPLAIN on a query (Snowflake/PG/DuckDB dialect-specific syntax)
204+
18. `sql.format` — Format/beautify SQL via sqlglot pretty-print
205+
19. `sql.fix` — Diagnose SQL errors and suggest fixes (syntax, patterns, resolution)
206+
20. `sql.autocomplete` — Schema-aware auto-complete suggestions from cache
207+
21. `sql.diff` — Compare two SQL queries (unified diff, similarity score)
208+
22. `finops.query_history` — Query execution history (Snowflake QUERY_HISTORY, PG pg_stat_statements)
209+
23. `finops.analyze_credits` — Credit consumption analysis with recommendations
210+
24. `finops.expensive_queries` — Identify most expensive queries by bytes scanned
211+
25. `finops.warehouse_advice` — Warehouse sizing recommendations (scale up/down/burst)
212+
26. `finops.unused_resources` — Find stale tables and idle warehouses
213+
27. `finops.role_grants` — Query RBAC grants on objects/roles
214+
28. `finops.role_hierarchy` — Map role inheritance hierarchy
215+
29. `finops.user_roles` — List user-to-role assignments
216+
30. `schema.detect_pii` — Scan columns for PII patterns (30+ regex, 15 categories)
217+
31. `schema.tags` — Query metadata/governance tags on objects (Snowflake TAG_REFERENCES)
218+
32. `schema.tags_list` — List all available tags with usage counts
223219

224220
### Skills (11 total)
225221
1. `generate-tests` — Generate dbt test definitions

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ Trace data flow at the column level through complex SQL transformations. Works s
7171

7272
### Warehouse Connectivity
7373

74-
Connect directly to your data warehouse -- the AI can query schemas, run SQL, predict costs, and analyze query history:
74+
Connect directly to your data warehouse -- the AI can query schemas, run SQL, and analyze query history:
7575

7676
- Snowflake (with IAM auth)
7777
- BigQuery (service account + ADC)

docs/docs/data-engineering/agent-modes.md

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,8 @@ altimate-code --agent builder
1313
Builder mode follows a strict pre-execution protocol for every SQL operation:
1414

1515
1. `sql_analyze` — Check for anti-patterns
16-
2. `sql_predict_cost` — Estimate execution cost
17-
3. `sql_validate` — Verify syntax and schema references
18-
4. `sql_execute` — Run the query
19-
5. `sql_record_feedback` — Store metrics for future cost predictions
16+
2. `sql_validate` — Verify syntax and schema references
17+
3. `sql_execute` — Run the query
2018

2119
### Example: Create a staging model
2220

@@ -79,7 +77,7 @@ altimate-code --agent analyst
7977

8078
Analyst mode enforces strict guardrails:
8179

82-
- **SELECT only** — INSERT, UPDATE, DELETE, DROP are blocked by SQLGuard
80+
- **SELECT only** — INSERT, UPDATE, DELETE, DROP are blocked by altimate-core
8381
- **Cost-first** — Every query gets a cost prediction before execution
8482
- **LIMIT enforced** — Large scans are automatically limited
8583
- **No file writes** — Cannot modify your codebase
@@ -156,10 +154,6 @@ Validator:
156154
~ Modified column: total_revenue FLOAT → DECIMAL(18,2)
157155
Severity: medium (type change may affect downstream)
158156
159-
> sql_predict_cost [fct_revenue.sql]
160-
Tier 2 match: ~12.3 credits per run (medium confidence)
161-
Previous version: ~11.8 credits — marginal increase
162-
163157
Issues found:
164158
1. FUNCTION_IN_FILTER on line 23 — use a pre-computed date column instead
165159
2. Type change from FLOAT to DECIMAL(18,2) — verify downstream consumers

docs/docs/data-engineering/guides/cost-optimization.md

Lines changed: 0 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -87,44 +87,6 @@ This finds:
8787
- Warehouses with no queries in 7+ days
8888
- Temporary tables from old migrations
8989

90-
## Step 5: Predict before you execute
91-
92-
Every query goes through cost prediction before execution:
93-
94-
```
95-
You: How much will this query cost?
96-
97-
> sql_predict_cost "SELECT * FROM raw_clickstream"
98-
99-
Tier 3 estimate: ~45 credits
100-
Table size: 890GB, 12B rows
101-
Recommendation: Add date filter + column pruning → estimated 2-3 credits
102-
```
103-
104-
## Step 6: Build a cost feedback loop
105-
106-
After each query, `sql_record_feedback` stores actual execution metrics. This trains the cost prediction model to be more accurate over time.
107-
108-
```
109-
Query executed: 0.84 credits (predicted: 0.79, Tier 2)
110-
Feedback recorded → next prediction will be more accurate
111-
```
112-
113-
## Automation: CI cost gate
114-
115-
Use `ci_cost_gate` in your CI/CD pipeline to block expensive queries from reaching production:
116-
117-
```
118-
> ci_cost_gate --threshold 10 models/marts/fct_revenue.sql
119-
120-
Cost Gate Results:
121-
fct_revenue.sql: 2.3 credits (PASS — under 10 credit threshold)
122-
fct_orders.sql: 0.8 credits (PASS)
123-
fct_daily_snapshot.sql: 45.1 credits (FAIL — exceeds threshold)
124-
125-
1 model blocked. Fix fct_daily_snapshot.sql before deploying.
126-
```
127-
12890
## Quick wins checklist
12991

13092
| Action | Typical savings | Effort |

docs/docs/data-engineering/guides/using-with-claude-code.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ Claude Code: I see changes to models/marts/fct_revenue.sql. Let me check
3333
3434
altimate-code:
3535
sql_analyze: No anti-patterns detected ✓
36-
sql_predict_cost: ~2.3 credits per run (Tier 2, medium confidence)
3736
lineage_check: Sources stg_orders.amount, dim_products.category
3837
schema_diff: Added column revenue_category (low severity)
3938
```

docs/docs/data-engineering/tools/sql-tools.md

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -76,36 +76,6 @@ Each rule includes a **confidence score** (high/medium/low) based on AST complex
7676

7777
---
7878

79-
## sql_predict_cost
80-
81-
Estimate query cost before execution using a 4-tier prediction system.
82-
83-
```
84-
> sql_predict_cost "SELECT * FROM events WHERE event_date > '2026-01-01'"
85-
86-
Cost Prediction:
87-
Tier: 2 (template match)
88-
Estimated bytes scanned: 4.2 GB
89-
Estimated credits: 0.84
90-
Confidence: medium
91-
92-
Similar queries averaged 0.79 credits over 23 executions.
93-
Recommendation: Add column pruning to reduce scan by ~60%
94-
```
95-
96-
### How it works
97-
98-
| Tier | Method | Confidence |
99-
|---|---|---|
100-
| **1 — Fingerprint** | Exact query found in history | High |
101-
| **2 — Template** | Similar query structure matched | Medium |
102-
| **3 — Table scan** | Estimate from table metadata | Low |
103-
| **4 — Heuristic** | No data available, worst-case estimate | Very low |
104-
105-
The system improves over time. After each query execution, `sql_record_feedback` stores actual metrics to train better predictions.
106-
107-
---
108-
10979
## sql_optimize
11080

11181
Get optimization suggestions with rewritten SQL.

packages/altimate-code/src/agent/agent.ts

Lines changed: 20 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,6 @@ export namespace Agent {
109109
sql_analyze: "allow",
110110
sql_translate: "allow",
111111
sql_optimize: "allow",
112-
sql_predict_cost: "allow",
113-
sql_record_feedback: "allow",
114112
lineage_check: "allow",
115113
warehouse_list: "allow",
116114
warehouse_test: "allow",
@@ -135,11 +133,11 @@ export namespace Agent {
135133
schema_detect_pii: "allow",
136134
schema_tags: "allow",
137135
schema_tags_list: "allow",
138-
sqlguard_validate: "allow",
139-
sqlguard_lint: "allow",
140-
sqlguard_safety: "allow",
141-
sqlguard_transpile: "allow",
142-
sqlguard_check: "allow",
136+
altimate_core_validate: "allow",
137+
altimate_core_lint: "allow",
138+
altimate_core_safety: "allow",
139+
altimate_core_transpile: "allow",
140+
altimate_core_check: "allow",
143141
read: "allow",
144142
grep: "allow",
145143
glob: "allow",
@@ -166,8 +164,6 @@ export namespace Agent {
166164
sql_analyze: "allow",
167165
sql_translate: "allow",
168166
sql_optimize: "allow",
169-
sql_predict_cost: "allow",
170-
sql_record_feedback: "allow",
171167
lineage_check: "allow",
172168
warehouse_list: "allow",
173169
warehouse_test: "allow",
@@ -192,11 +188,11 @@ export namespace Agent {
192188
schema_detect_pii: "allow",
193189
schema_tags: "allow",
194190
schema_tags_list: "allow",
195-
sqlguard_validate: "allow",
196-
sqlguard_lint: "allow",
197-
sqlguard_safety: "allow",
198-
sqlguard_transpile: "allow",
199-
sqlguard_check: "allow",
191+
altimate_core_validate: "allow",
192+
altimate_core_lint: "allow",
193+
altimate_core_safety: "allow",
194+
altimate_core_transpile: "allow",
195+
altimate_core_check: "allow",
200196
read: "allow",
201197
grep: "allow",
202198
glob: "allow",
@@ -223,8 +219,6 @@ export namespace Agent {
223219
sql_analyze: "allow",
224220
sql_translate: "allow",
225221
sql_optimize: "allow",
226-
sql_predict_cost: "allow",
227-
sql_record_feedback: "allow",
228222
lineage_check: "allow",
229223
warehouse_list: "allow",
230224
warehouse_test: "allow",
@@ -249,11 +243,11 @@ export namespace Agent {
249243
schema_detect_pii: "allow",
250244
schema_tags: "allow",
251245
schema_tags_list: "allow",
252-
sqlguard_validate: "allow",
253-
sqlguard_lint: "allow",
254-
sqlguard_safety: "allow",
255-
sqlguard_transpile: "allow",
256-
sqlguard_check: "allow",
246+
altimate_core_validate: "allow",
247+
altimate_core_lint: "allow",
248+
altimate_core_safety: "allow",
249+
altimate_core_transpile: "allow",
250+
altimate_core_check: "allow",
257251
read: "allow",
258252
grep: "allow",
259253
glob: "allow",
@@ -277,8 +271,6 @@ export namespace Agent {
277271
sql_validate: "allow",
278272
sql_translate: "allow",
279273
sql_optimize: "allow",
280-
sql_predict_cost: "allow",
281-
sql_record_feedback: "allow",
282274
lineage_check: "allow",
283275
warehouse_list: "allow",
284276
warehouse_test: "allow",
@@ -302,11 +294,11 @@ export namespace Agent {
302294
schema_detect_pii: "allow",
303295
schema_tags: "allow",
304296
schema_tags_list: "allow",
305-
sqlguard_validate: "allow",
306-
sqlguard_lint: "allow",
307-
sqlguard_safety: "allow",
308-
sqlguard_transpile: "allow",
309-
sqlguard_check: "allow",
297+
altimate_core_validate: "allow",
298+
altimate_core_lint: "allow",
299+
altimate_core_safety: "allow",
300+
altimate_core_transpile: "allow",
301+
altimate_core_check: "allow",
310302
read: "allow",
311303
write: "allow",
312304
edit: "allow",

0 commit comments

Comments
 (0)