You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -121,7 +124,8 @@ The `serialized_space` field is a JSON string containing the full space configur
121
124
122
125
-**ID format:** 32-character lowercase hex, unique across **all three lists combined** (a duplicate between e.g. `text_instructions` and `example_question_sqls` is rejected).
123
126
-**Text fields are arrays:**`question`, `sql`, and `content` are arrays of strings, not plain strings.
124
-
-**Sort order matters:**`data_sources.tables` must be sorted by `identifier`; `example_question_sqls` and `text_instructions` must be sorted by `id`. (`sample_questions` is silently re-sorted server-side.)
127
+
-**Sort order matters:**`data_sources.tables` must be sorted by `identifier`, and each table's `column_configs` must be sorted by `column_name`; `example_question_sqls` and `text_instructions` must be sorted by `id`. (`sample_questions` is silently re-sorted server-side.)
128
+
-**`text_instructions` accepts at most one item** — the API rejects more than one (`text_instructions must contain at most one item`). Merge all guidance (persona, table guide, investigation flow, answer style) into a single entry.
125
129
-**Simple ID scheme that satisfies both rules:** prefix per list + monotonic counter, total 32 hex chars — `1…0001`, `1…0002` for `sample_questions`; `2…0001`, `2…0002` for `example_question_sqls`; `3…0001` for `text_instructions`. Authoring order = sort order, no collisions.
Copy file name to clipboardExpand all lines: skills/databricks-aibi-dashboards/SKILL.md
+10-1Lines changed: 10 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ name: databricks-aibi-dashboards
3
3
description: "Create Databricks AI/BI dashboards. Must use when creating, updating, or deploying Lakeview dashboards as Databricks Dashboard have a unique json structure. CRITICAL: You MUST test ALL SQL queries via CLI BEFORE deploying. Follow guidelines strictly."
To change a dashboard that already exists, build the updated JSON with the [creation workflow](#new-dashboard-creation-workflow) above, then deploy it with `update` + `publish` on the **same**`DASHBOARD_ID` — never re-run `create`/import.
199
+
200
+
-**Don't `create`/import to update.** That mints a new dashboard id + URL and breaks any link you've already shared; `create` is for brand-new dashboards only.
201
+
-**`update` changes only the draft.** The `/published` link viewers see stays on the last snapshot until you `publish` again — so always `publish` after `update`.
202
+
203
+
---
204
+
196
205
## JSON Structure (Required Skeleton)
197
206
198
207
Every dashboard's `serialized_dashboard` content must follow this exact structure:
Copy file name to clipboardExpand all lines: skills/databricks-lakebase/SKILL.md
+18-23Lines changed: 18 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,20 @@ parent: databricks-core
13
13
14
14
Lakebase is Databricks' serverless Postgres-compatible database, available on both AWS and Azure (GA). It provides fully managed OLTP storage with autoscaling, branching, and scale-to-zero.
15
15
16
-
> **Autoscaling by Default (March 2026):** All new Lakebase instances are Autoscaling projects. The `/database/` APIs now create autoscaling instances behind the scenes. Existing provisioned instances are unchanged.
16
+
> **Provisioned Lakebase no longer exists — never create it.** The old Provisioned tier (static, non-scalable Postgres; `databricks database` CLI / `w.database` SDK) is being migrated to Autoscaling over summer 2026, with no customer action required. Lakebase today is Autoscaling-only (`databricks postgres` / `w.postgres`). Do not attempt to create Provisioned instances; if a user asks for one, tell them Provisioned instances don't exist anymore and point them to Autoscaling. Treat the legacy `database` resource key in app configs as retired — migrate to the `postgres` resource key. For the legacy DAB `synced_database_tables` resource, use the `databricks postgres create-synced-table` CLI flow instead (see the Common Issues row and `references/synced-tables.md`).
17
+
18
+
For context when reading older configs or docs, here is how the retired Provisioned tier maps to Autoscaling:
**Delete:** Protected branches must be unprotected first (`update-branch` to set `spec.is_protected` to `false`). Cannot delete branches with children. **Never delete the `production` branch.**
159
172
160
-
## Key Differences from Lakebase Provisioned
161
-
162
-
> All new instances default to Autoscaling as of March 2026. Automatic migration of Provisioned instances begins June 2026.
163
-
164
-
| Aspect | Provisioned | Autoscaling |
165
-
|--------|-------------|-------------|
166
-
| CLI group |`databricks database`|`databricks postgres`|
**Migration:** Manual via `pg_dump`/`pg_restore` (requires pausing writes). Automatic seamless upgrades (seconds of downtime) begin June 2026 -- no customer action required.
176
-
177
173
## What's Next
178
174
179
175
### Build a Databricks App
@@ -201,10 +197,9 @@ For the full app workflow, use the **`databricks-apps`** skill.
201
197
`apps init --features lakebase` (above) wires the database at scaffold time. To
202
198
attach a project to an **existing** app, update its resources.
203
199
204
-
**Use the `postgres` resource key for an Autoscaling project** — its fields are
205
-
`branch` + `database` (full resource paths from the table above). The legacy
206
-
`database` key (`instance_name` + `database_name`) is for **Provisioned**
207
-
instances only; using it for an Autoscaling project fails with
200
+
**Use the `postgres` resource key** — its fields are `branch` + `database`
201
+
(full resource paths from the table above). The legacy `database` key
202
+
(`instance_name` + `database_name`) is deprecated; using it fails with
208
203
`Database instance <name> does not exist`. Get the exact paths from
209
204
`list-branches` / `list-databases` (the DB name is often hyphenated, e.g.
210
205
`databricks-postgres`).
@@ -342,7 +337,7 @@ For vector embeddings with pgvector, see [pgvector.md](references/pgvector.md).
342
337
| Sync permissions error | Ensure `USE CATALOG`/`USE SCHEMA` on source table and `CREATE TABLE` in storage catalog |
343
338
| Synced table null bytes | Null bytes (0x00) in STRING/ARRAY/MAP/STRUCT columns cause sync failures. Sanitize source data: `REPLACE(col, CAST(CHAR(0) AS STRING), '')`|
344
339
| Synced table data modified | Only read queries, indexes, and DROP TABLE allowed on synced tables in Postgres. Modifications break sync pipeline. |
345
-
| DABs `synced_database_tables`with Autoscaling | Do NOT use — maps to the Provisioned API. Use `databricks postgres create-synced-table` CLI instead. DAB support for Autoscaling synced tables (`postgres_synced_tables`) is not yet available. |
340
+
| DABs `synced_database_tables`| Deprecated — maps to a legacy API and fails on current Lakebase. Use `databricks postgres create-synced-table` CLI instead. DAB support via `postgres_synced_tables` is not yet available. |
> **Lakebase Autoscaling only.** This package is not compatible with Lakebase Provisioned. For the full config reference, see the [`@databricks/lakebase` README](https://github.com/databricks/appkit/tree/main/packages/lakebase).
44
+
> For the full config reference, see the [`@databricks/lakebase` README](https://github.com/databricks/appkit/tree/main/packages/lakebase).
Deletes the sync pipeline and the UC table entry. The Postgres table remains and must be dropped manually if no longer needed (`DROP TABLE <schema>.<table>`).
104
104
105
-
> **DABs:** The bundle schema includes `synced_database_tables`, but it maps to the Provisioned Terraform resource (`databricks_database_synced_database_table`), not the Autoscaling API. **Do not use `synced_database_tables` in DABs with Autoscaling projects**— it routes through the Provisioned API and may create unintended Provisioned instances. DAB support for Autoscaling synced tables (`postgres_synced_tables`) is blocked on Terraform provider work and not yet available. **For Autoscaling projects, use the CLI commands above.**
105
+
> **DABs:** The bundle schema includes `synced_database_tables`, but it maps to a deprecated Terraform resource (`databricks_database_synced_database_table`) that fails on current Lakebase. **Do not use `synced_database_tables` in DABs.** DAB support via `postgres_synced_tables` is blocked on Terraform provider work and not yet available — use the CLI commands above instead.
0 commit comments