datanotes 3.4.0 → 3.4.2
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.
- package/dist/api/extension-columns.d.cts +64 -0
- package/dist/api/extension-columns.d.ts +64 -0
- package/dist/api/extension-plan.d.cts +1 -1
- package/dist/api/extension-plan.d.ts +1 -1
- package/dist/datanotes.cjs +2251 -1834
- package/dist/docs/administration/extensions.md +2 -1
- package/dist/docs/api/operations/identify_session.md +1 -0
- package/dist/docs/api/operations/record_tool_call.md +1 -0
- package/dist/docs/api.md +1 -1
- package/dist/docs/develop/write-an-extension.md +8 -2
- package/dist/docs/guides/data-quality/check-constraints.md +10 -10
- package/dist/docs/guides/data-quality/hand-edits.md +8 -8
- package/dist/docs/guides/database-objects/bases.md +11 -11
- package/dist/docs/guides/database-objects/catalogs-and-schemas.md +10 -10
- package/dist/docs/guides/database-objects/columns.md +39 -39
- package/dist/docs/guides/database-objects/relations.md +28 -28
- package/dist/docs/guides/database-objects/tables.md +26 -26
- package/dist/docs/guides/database-objects/views.md +19 -19
- package/dist/docs/guides/history/change-data-feed.md +34 -34
- package/dist/docs/guides/history/journal-and-undo.md +12 -12
- package/dist/docs/guides/history/restore.md +20 -20
- package/dist/docs/guides/history/table-history.md +31 -31
- package/dist/docs/guides/read-and-write/automatic-links.md +15 -15
- package/dist/docs/guides/read-and-write/import-notes.md +20 -20
- package/dist/docs/guides/read-and-write/write-rows.md +10 -10
- package/dist/docs/guides/search/text.md +1 -1
- package/dist/docs/guides/security/tokens.md +17 -4
- package/dist/docs/guides/security/who-did-what.md +8 -0
- package/dist/docs/reference/cli.md +1 -1
- package/dist/docs/release-notes.md +28 -0
- package/package.json +1 -1
|
@@ -89,7 +89,7 @@ Five options carry your choices. They apply to `install` and, except the last tw
|
|
|
89
89
|
| `--catalog` | Sets the catalog of created tables and views. | `--catalog work` |
|
|
90
90
|
| `--schema` | Sets the schema of created owned tables and views. | `--schema reading` |
|
|
91
91
|
|
|
92
|
-
Each option takes a comma-separated list. `--map role=catalog.schema.table` binds a table. `--map role.column=column` maps a column. A column of the extension’s own table keeps the extension’s name: you cannot map it.
|
|
92
|
+
Each option takes a comma-separated list. `--map role=catalog.schema.table` binds a table. `--map role.column=column` maps a column of a table the extension depends on. The views, CHECKs and link filters of the extension then read your column, through links too. A column of the extension’s own table keeps the extension’s name: you cannot map it.
|
|
93
93
|
|
|
94
94
|
The plan ends with a message for the AI agent that runs the install:
|
|
95
95
|
|
|
@@ -101,6 +101,7 @@ An agent never guesses. It shows the plan, asks the user, and runs the command a
|
|
|
101
101
|
* `ambiguous_dependency`: several tables could be the role. Pass `--map` or `--create`.
|
|
102
102
|
* `missing_column`: the matched table lacks a column. Map another column, or add it with `--add`.
|
|
103
103
|
* `column_differs`: a column exists with another type or rule. Map another column or table.
|
|
104
|
+
* `column_map_unsupported`: the extension names a mapped column where the installer cannot rewrite it, such as the outer clauses of a `union` view. Rename your column to the extension’s name and leave the mapping out.
|
|
104
105
|
* `table_exists`: a table the extension would create exists already. Use it with `--map`, or pick another catalog.
|
|
105
106
|
* `tool_name_taken`: a tool name is already an operation or a tool of another extension.
|
|
106
107
|
* `token_exists`: a token named `ext-<name>` exists already.
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
| 200 | Done. | `object` (application/json) |
|
|
20
20
|
| 400 | Bad input: the body is not a JSON object, or an argument is unknown, missing or of the wrong type. | `Error` (application/json) |
|
|
21
21
|
| 401 | Missing or wrong bearer token. | `Error` (application/json) |
|
|
22
|
+
| 403 | The `session` belongs to another named token: the first token to report a session owns it (compared on its first 16 characters), and only that token and the owner may report it again. Nothing is stored. | `Error` (application/json) |
|
|
22
23
|
| 500 | Unexpected error. | `Error` (application/json) |
|
|
23
24
|
|
|
24
25
|
The schemas named here are in [openapi.json](https://datanotes.dev/openapi.json) (`components.schemas`).
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
| 200 | Done. | `object` (application/json) |
|
|
33
33
|
| 400 | Bad input: the body is not a JSON object, or an argument is unknown, missing or of the wrong type. | `Error` (application/json) |
|
|
34
34
|
| 401 | Missing or wrong bearer token. | `Error` (application/json) |
|
|
35
|
+
| 403 | The `session` belongs to another named token: the first token to report a session owns it (compared on its first 16 characters), and only that token and the owner may report it again. Nothing is stored. | `Error` (application/json) |
|
|
35
36
|
| 500 | Unexpected error. | `Error` (application/json) |
|
|
36
37
|
|
|
37
38
|
The schemas named here are in [openapi.json](https://datanotes.dev/openapi.json) (`components.schemas`).
|
package/dist/docs/api.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Datanotes HTTP API
|
|
2
2
|
|
|
3
|
-
> OpenAPI 3.1.0 description of the Datanotes 3.4.
|
|
3
|
+
> OpenAPI 3.1.0 description of the Datanotes 3.4.2 HTTP API: https://datanotes.dev/openapi.json
|
|
4
4
|
|
|
5
5
|
Database of Markdown notes: tables of notes, rows, queries, history, a change feed and the vault's notes.
|
|
6
6
|
|
|
@@ -197,11 +197,17 @@ The installer compares the manifest with a table it adopts or matches:
|
|
|
197
197
|
* Instructions that differ are replaced, and the plan shows it.
|
|
198
198
|
* Tags are added. Nothing is migrated again.
|
|
199
199
|
|
|
200
|
-
|
|
200
|
+
Users may bind the columns of a dependency to theirs with `--map role.column=column`. Write the manifest and the tools so that a mapping works:
|
|
201
|
+
|
|
202
|
+
* Read and write every dependency column through `ctx.column(role, column)`, never by its manifest name.
|
|
203
|
+
* Name dependency columns in view queries, CHECKs, `ref_where` and `ref_by` freely. The installer rewrites them to the user’s columns, through links too, such as `author.name`.
|
|
204
|
+
* Expect the rows of your views to carry the user’s names. A view with the column `author.name` returns `author.full_name` once `name` is mapped to `full_name`. Aggregate names, such as `n` in `{"n": "count"}`, stay as you wrote them.
|
|
205
|
+
* Keep dependency columns out of the outer clauses of a `union` view and out of migrations. The installer does not rewrite them there: it refuses the mapping with `column_map_unsupported`, or the migration with `migration_conflict`.
|
|
206
|
+
|
|
207
|
+
Version 1 has two limits:
|
|
201
208
|
|
|
202
209
|
* A manifest cannot declare an `inverse` across two tables. Only `ref: "self"` takes `inverse`.
|
|
203
210
|
* The columns of the extension’s own tables keep the manifest’s names. Users map only dependency columns.
|
|
204
|
-
* A dotted key into a dependency, such as `project.kind`, is not mapped in CHECKs and view queries.
|
|
205
211
|
|
|
206
212
|
## Write the tools
|
|
207
213
|
|
|
@@ -29,7 +29,7 @@ Answer:
|
|
|
29
29
|
"commits": [
|
|
30
30
|
{ "table": "diary.classics.film", "version": 8, "operation": "ADD CONSTRAINT" }
|
|
31
31
|
],
|
|
32
|
-
"migration_id": "
|
|
32
|
+
"migration_id": "20261024T203007-add_constraint-add-constraint-rated_when_watc"
|
|
33
33
|
}
|
|
34
34
|
```
|
|
35
35
|
|
|
@@ -86,7 +86,7 @@ Answer:
|
|
|
86
86
|
"files_created": 1,
|
|
87
87
|
"planned_creates": ["datanotes/diary/classics/film/His Girl Friday.md"],
|
|
88
88
|
"commits": [{ "table": "diary.classics.film", "version": 10, "operation": "WRITE" }],
|
|
89
|
-
"migration_id": "
|
|
89
|
+
"migration_id": "20261024T203007-insert_row-insert-into-film-2"
|
|
90
90
|
}
|
|
91
91
|
```
|
|
92
92
|
|
|
@@ -108,7 +108,7 @@ Answer:
|
|
|
108
108
|
"commits": [
|
|
109
109
|
{ "table": "diary.classics.film", "version": 11, "operation": "DROP CONSTRAINT" }
|
|
110
110
|
],
|
|
111
|
-
"migration_id": "
|
|
111
|
+
"migration_id": "20261024T203007-drop_constraint-drop-constraint-at_most_three_"
|
|
112
112
|
}
|
|
113
113
|
```
|
|
114
114
|
|
|
@@ -149,7 +149,7 @@ Answer:
|
|
|
149
149
|
"commits": [
|
|
150
150
|
{ "table": "main.public.genre", "version": 4, "operation": "ADD CONSTRAINT" }
|
|
151
151
|
],
|
|
152
|
-
"migration_id": "
|
|
152
|
+
"migration_id": "20261024T202953-add_constraint-add-constraint-parent_by_level"
|
|
153
153
|
}
|
|
154
154
|
```
|
|
155
155
|
|
|
@@ -228,34 +228,34 @@ Answer:
|
|
|
228
228
|
"ok": true,
|
|
229
229
|
"op": "batch",
|
|
230
230
|
"dry_run": false,
|
|
231
|
-
"migration_id": "
|
|
231
|
+
"migration_id": "20261024T202953-batch-add-the-silent-era-and-slapsti",
|
|
232
232
|
"steps": [
|
|
233
233
|
{
|
|
234
234
|
"index": 0,
|
|
235
235
|
"op": "insert_row",
|
|
236
236
|
"ok": true,
|
|
237
|
-
"migration_id": "
|
|
237
|
+
"migration_id": "20261024T202953-insert_row-insert-into-genre-4",
|
|
238
238
|
"result": {
|
|
239
239
|
"ok": true,
|
|
240
240
|
"op": "insert_row",
|
|
241
241
|
"files_created": 1,
|
|
242
242
|
"planned_creates": ["datanotes/main/public/genre/Silent cinema.md"],
|
|
243
243
|
"commits": [{ "table": "main.public.genre", "version": 5, "operation": "WRITE" }],
|
|
244
|
-
"migration_id": "
|
|
244
|
+
"migration_id": "20261024T202953-insert_row-insert-into-genre-4"
|
|
245
245
|
}
|
|
246
246
|
},
|
|
247
247
|
{
|
|
248
248
|
"index": 1,
|
|
249
249
|
"op": "insert_row",
|
|
250
250
|
"ok": true,
|
|
251
|
-
"migration_id": "
|
|
251
|
+
"migration_id": "20261024T202953-insert_row-insert-into-genre-5",
|
|
252
252
|
"result": {
|
|
253
253
|
"ok": true,
|
|
254
254
|
"op": "insert_row",
|
|
255
255
|
"files_created": 1,
|
|
256
256
|
"planned_creates": ["datanotes/main/public/genre/Slapstick comedy.md"],
|
|
257
257
|
"commits": [{ "table": "main.public.genre", "version": 6, "operation": "WRITE" }],
|
|
258
|
-
"migration_id": "
|
|
258
|
+
"migration_id": "20261024T202953-insert_row-insert-into-genre-5"
|
|
259
259
|
}
|
|
260
260
|
}
|
|
261
261
|
]
|
|
@@ -343,7 +343,7 @@ Answer:
|
|
|
343
343
|
}
|
|
344
344
|
],
|
|
345
345
|
"commits": [{ "table": "main.public.genre", "version": 7, "operation": "UPDATE" }],
|
|
346
|
-
"migration_id": "
|
|
346
|
+
"migration_id": "20261024T202953-update_row-update-genre"
|
|
347
347
|
}
|
|
348
348
|
```
|
|
349
349
|
|
|
@@ -35,7 +35,7 @@ You edit `datanotes/main/public/genre/Silent film.md` by hand, outside the engin
|
|
|
35
35
|
```markdown
|
|
36
36
|
---
|
|
37
37
|
table: main.public.genre
|
|
38
|
-
id:
|
|
38
|
+
id: 01a16f9b-0740-7fa5-ae2e-145d4c576f7e
|
|
39
39
|
name: Silent film
|
|
40
40
|
kind: cinema
|
|
41
41
|
parent: "[[Cinema]]"
|
|
@@ -152,7 +152,7 @@ Answer:
|
|
|
152
152
|
}
|
|
153
153
|
],
|
|
154
154
|
"commits": [{ "table": "main.public.genre", "version": 9, "operation": "UPDATE" }],
|
|
155
|
-
"migration_id": "
|
|
155
|
+
"migration_id": "20261024T202954-update_row-update-genre"
|
|
156
156
|
}
|
|
157
157
|
```
|
|
158
158
|
|
|
@@ -167,7 +167,7 @@ You edit `datanotes/main/public/watch/2026-10-03T2130.md` by hand, outside the e
|
|
|
167
167
|
```markdown
|
|
168
168
|
---
|
|
169
169
|
table: main.public.watch
|
|
170
|
-
id:
|
|
170
|
+
id: 01a16f9a-ff01-7b92-9acf-50a3143b1b45
|
|
171
171
|
film: His Girl Friday
|
|
172
172
|
occurred_at: 2026-10-03T21:30
|
|
173
173
|
where: cinema
|
|
@@ -226,7 +226,7 @@ Answer:
|
|
|
226
226
|
}
|
|
227
227
|
],
|
|
228
228
|
"commits": [{ "table": "main.public.watch", "version": 3, "operation": "RECOMPUTE" }],
|
|
229
|
-
"migration_id": "
|
|
229
|
+
"migration_id": "20261024T202952-recompute_columns-recompute-id-day-label-of-watc"
|
|
230
230
|
}
|
|
231
231
|
```
|
|
232
232
|
|
|
@@ -292,7 +292,7 @@ Answer:
|
|
|
292
292
|
```markdown
|
|
293
293
|
---
|
|
294
294
|
table: main.public.watch
|
|
295
|
-
id:
|
|
295
|
+
id: 01a16f9b-62b9-764f-b98d-1308d3c47a9a
|
|
296
296
|
occurred_at: 2026-09-25T21:00
|
|
297
297
|
film: "[[Charade]]"
|
|
298
298
|
where: home
|
|
@@ -311,7 +311,7 @@ You edit `datanotes/main/public/film/Metropolis.md` by hand, outside the engine.
|
|
|
311
311
|
```markdown
|
|
312
312
|
---
|
|
313
313
|
table: main.public.film
|
|
314
|
-
id:
|
|
314
|
+
id: 01a16f9b-2314-790b-b772-e40f5d94e4b1
|
|
315
315
|
year: 1927
|
|
316
316
|
minutes: 153
|
|
317
317
|
status: to watch
|
|
@@ -384,7 +384,7 @@ You edit `datanotes/main/public/film/Sherlock Jr..md` by hand, outside the engin
|
|
|
384
384
|
```markdown
|
|
385
385
|
---
|
|
386
386
|
table: main.public.film
|
|
387
|
-
id:
|
|
387
|
+
id: 01a16f9b-0dcd-7c7b-8fad-290e6d566045
|
|
388
388
|
title: Sherlock Jr.: the projectionist
|
|
389
389
|
year: 1924
|
|
390
390
|
status: watched
|
|
@@ -471,7 +471,7 @@ You edit `datanotes/main/public/film/Sherlock Jr..md` by hand, outside the engin
|
|
|
471
471
|
```markdown
|
|
472
472
|
---
|
|
473
473
|
table: main.public.film
|
|
474
|
-
id:
|
|
474
|
+
id: 01a16f9b-0dcd-7c7b-8fad-290e6d566045
|
|
475
475
|
title: "Sherlock Jr.: the projectionist"
|
|
476
476
|
year: 1924
|
|
477
477
|
status: watched
|
|
@@ -30,7 +30,7 @@ Answer:
|
|
|
30
30
|
"ok": true,
|
|
31
31
|
"op": "define_base",
|
|
32
32
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
33
|
-
"migration_id": "
|
|
33
|
+
"migration_id": "20261024T203007-define_base-create-base-entry"
|
|
34
34
|
}
|
|
35
35
|
```
|
|
36
36
|
|
|
@@ -50,7 +50,7 @@ Answer:
|
|
|
50
50
|
"commits": [
|
|
51
51
|
{ "table": "diary.classics.film", "version": 6, "operation": "SET TABLE BASES" }
|
|
52
52
|
],
|
|
53
|
-
"migration_id": "
|
|
53
|
+
"migration_id": "20261024T203007-set_table_bases-diary-classics-film-extends-en"
|
|
54
54
|
}
|
|
55
55
|
```
|
|
56
56
|
|
|
@@ -118,14 +118,14 @@ Answer:
|
|
|
118
118
|
"rows": [
|
|
119
119
|
{
|
|
120
120
|
"path": "datanotes/diary/classics/actors/Max Schreck.md",
|
|
121
|
-
"id": "
|
|
121
|
+
"id": "01a16f9b-3d4b-78f5-93b7-bda800e0af7a",
|
|
122
122
|
"added_on": "2026-10-05",
|
|
123
123
|
"note": "The face of Nosferatu",
|
|
124
124
|
"_source": "diary.classics.actors"
|
|
125
125
|
},
|
|
126
126
|
{
|
|
127
127
|
"path": "datanotes/diary/classics/film/Nosferatu.md",
|
|
128
|
-
"id": "
|
|
128
|
+
"id": "01a16f9b-3cd4-7c7c-8afd-8b443206a372",
|
|
129
129
|
"added_on": "2026-10-05",
|
|
130
130
|
"note": null,
|
|
131
131
|
"_source": "diary.classics.film"
|
|
@@ -169,7 +169,7 @@ Answer:
|
|
|
169
169
|
"commits": [
|
|
170
170
|
{ "table": "diary.classics.actors", "version": 3, "operation": "DEFINE BASE" }
|
|
171
171
|
],
|
|
172
|
-
"migration_id": "
|
|
172
|
+
"migration_id": "20261024T203007-define_base-alter-base-entry"
|
|
173
173
|
}
|
|
174
174
|
```
|
|
175
175
|
|
|
@@ -246,7 +246,7 @@ Answer:
|
|
|
246
246
|
"commits": [
|
|
247
247
|
{ "table": "diary.classics.actors", "version": 4, "operation": "DEFINE BASE" }
|
|
248
248
|
],
|
|
249
|
-
"migration_id": "
|
|
249
|
+
"migration_id": "20261024T203007-define_base-alter-base-entry-2"
|
|
250
250
|
}
|
|
251
251
|
```
|
|
252
252
|
|
|
@@ -280,7 +280,7 @@ Answer:
|
|
|
280
280
|
"ok": true,
|
|
281
281
|
"op": "define_base",
|
|
282
282
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
283
|
-
"migration_id": "
|
|
283
|
+
"migration_id": "20261024T203007-define_base-create-base-credited"
|
|
284
284
|
}
|
|
285
285
|
```
|
|
286
286
|
|
|
@@ -300,7 +300,7 @@ Answer:
|
|
|
300
300
|
"commits": [
|
|
301
301
|
{ "table": "diary.classics.actors", "version": 5, "operation": "SET TABLE BASES" }
|
|
302
302
|
],
|
|
303
|
-
"migration_id": "
|
|
303
|
+
"migration_id": "20261024T203007-set_table_bases-diary-classics-actors-extends--2"
|
|
304
304
|
}
|
|
305
305
|
```
|
|
306
306
|
|
|
@@ -329,7 +329,7 @@ Answer:
|
|
|
329
329
|
"ok": true,
|
|
330
330
|
"op": "define_base",
|
|
331
331
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
332
|
-
"migration_id": "
|
|
332
|
+
"migration_id": "20261024T203007-define_base-create-base-tree"
|
|
333
333
|
}
|
|
334
334
|
```
|
|
335
335
|
|
|
@@ -369,7 +369,7 @@ Answer:
|
|
|
369
369
|
"commits": [
|
|
370
370
|
{ "table": "diary.classics.genre", "version": 1, "operation": "SET TABLE BASES" }
|
|
371
371
|
],
|
|
372
|
-
"migration_id": "
|
|
372
|
+
"migration_id": "20261024T203007-set_table_bases-diary-classics-genre-extends-t"
|
|
373
373
|
}
|
|
374
374
|
```
|
|
375
375
|
|
|
@@ -475,6 +475,6 @@ Answer:
|
|
|
475
475
|
"operation": "SET TABLE BASES"
|
|
476
476
|
}
|
|
477
477
|
],
|
|
478
|
-
"migration_id": "
|
|
478
|
+
"migration_id": "20261024T203007-set_table_bases-diary-classics-genre_draft-ext"
|
|
479
479
|
}
|
|
480
480
|
```
|
|
@@ -63,7 +63,7 @@ Answer:
|
|
|
63
63
|
"commits": [
|
|
64
64
|
{ "table": "diary.classics.film", "version": 0, "operation": "CREATE TABLE" }
|
|
65
65
|
],
|
|
66
|
-
"migration_id": "
|
|
66
|
+
"migration_id": "20261024T203007-create_table-create-table-diary-classics-fi"
|
|
67
67
|
}
|
|
68
68
|
```
|
|
69
69
|
|
|
@@ -91,7 +91,7 @@ Answer:
|
|
|
91
91
|
"files_created": 1,
|
|
92
92
|
"planned_creates": ["datanotes/diary/classics/film/Nosferatu.md"],
|
|
93
93
|
"commits": [{ "table": "diary.classics.film", "version": 1, "operation": "WRITE" }],
|
|
94
|
-
"migration_id": "
|
|
94
|
+
"migration_id": "20261024T203007-insert_row-insert-into-film"
|
|
95
95
|
}
|
|
96
96
|
```
|
|
97
97
|
|
|
@@ -127,7 +127,7 @@ Answer:
|
|
|
127
127
|
"commits": [
|
|
128
128
|
{ "table": "diary.classics.film", "version": 3, "operation": "ALTER TABLE" }
|
|
129
129
|
],
|
|
130
|
-
"migration_id": "
|
|
130
|
+
"migration_id": "20261024T203007-alter_table-alter-table-diary-classics-fil-2"
|
|
131
131
|
}
|
|
132
132
|
```
|
|
133
133
|
|
|
@@ -144,7 +144,7 @@ Answer:
|
|
|
144
144
|
"ok": true,
|
|
145
145
|
"op": "comment_on",
|
|
146
146
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
147
|
-
"migration_id": "
|
|
147
|
+
"migration_id": "20261024T203007-comment_on-comment-on-catalog-diary"
|
|
148
148
|
}
|
|
149
149
|
```
|
|
150
150
|
|
|
@@ -165,7 +165,7 @@ Answer:
|
|
|
165
165
|
"ok": true,
|
|
166
166
|
"op": "comment_on",
|
|
167
167
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
168
|
-
"migration_id": "
|
|
168
|
+
"migration_id": "20261024T203007-comment_on-comment-on-schema-diary-classi"
|
|
169
169
|
}
|
|
170
170
|
```
|
|
171
171
|
|
|
@@ -173,7 +173,7 @@ Answer:
|
|
|
173
173
|
|
|
174
174
|
```yaml
|
|
175
175
|
# Metastore (Datanotes): catalogs, schemas, tables, columns, views.
|
|
176
|
-
id:
|
|
176
|
+
id: 01a16f9b-3cc4-71df-bae2-5ff053a1ba0d
|
|
177
177
|
config:
|
|
178
178
|
history: true
|
|
179
179
|
|
|
@@ -270,7 +270,7 @@ Answer:
|
|
|
270
270
|
"commits": [
|
|
271
271
|
{ "table": "diary.classics.film", "version": 4, "operation": "ALTER TABLE" }
|
|
272
272
|
],
|
|
273
|
-
"migration_id": "
|
|
273
|
+
"migration_id": "20261024T203007-alter_table-alter-table-diary-classics-fil-3"
|
|
274
274
|
}
|
|
275
275
|
```
|
|
276
276
|
|
|
@@ -287,7 +287,7 @@ Answer:
|
|
|
287
287
|
"ok": true,
|
|
288
288
|
"op": "comment_on",
|
|
289
289
|
"planned_texts": ["datanotes/metastore.yaml"],
|
|
290
|
-
"migration_id": "
|
|
290
|
+
"migration_id": "20261024T203007-comment_on-remove-the-comment-on-schema-d"
|
|
291
291
|
}
|
|
292
292
|
```
|
|
293
293
|
|
|
@@ -309,7 +309,7 @@ Answer:
|
|
|
309
309
|
"commits": [
|
|
310
310
|
{ "table": "diary.classics.film", "version": 5, "operation": "ALTER TABLE" }
|
|
311
311
|
],
|
|
312
|
-
"migration_id": "
|
|
312
|
+
"migration_id": "20261024T203007-alter_table-alter-table-diary-classics-fil-4"
|
|
313
313
|
}
|
|
314
314
|
```
|
|
315
315
|
|
|
@@ -593,7 +593,7 @@ This is the database of this page as the engine wrote it. `metastore.yaml` holds
|
|
|
593
593
|
|
|
594
594
|
```yaml
|
|
595
595
|
# Metastore (Datanotes): catalogs, schemas, tables, columns, views.
|
|
596
|
-
id:
|
|
596
|
+
id: 01a16f9b-3cc4-71df-bae2-5ff053a1ba0d
|
|
597
597
|
config:
|
|
598
598
|
history: true
|
|
599
599
|
default_catalog: diary
|