datanotes 3.3.0 → 3.4.0

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.
Files changed (72) hide show
  1. package/SECURITY.md +5 -3
  2. package/dist/api/extensions.cjs +1345 -21
  3. package/dist/api/extensions.js +1345 -21
  4. package/dist/api/index.cjs +1345 -21
  5. package/dist/api/index.js +1345 -21
  6. package/dist/api/mcp.cjs +1345 -21
  7. package/dist/api/mcp.js +1345 -21
  8. package/dist/datanotes.cjs +2927 -609
  9. package/dist/docs/administration/extensions.md +2 -2
  10. package/dist/docs/api/operations/add_column.md +1 -0
  11. package/dist/docs/api/operations/alter_table.md +4 -3
  12. package/dist/docs/api/operations/check_table.md +1 -0
  13. package/dist/docs/api/operations/create_table.md +1 -0
  14. package/dist/docs/api/operations/describe_database.md +2 -0
  15. package/dist/docs/api/operations/describe_history.md +1 -0
  16. package/dist/docs/api/operations/describe_semantic_index.md +1 -0
  17. package/dist/docs/api/operations/describe_table.md +1 -0
  18. package/dist/docs/api/operations/graph_neighbors.md +1 -0
  19. package/dist/docs/api/operations/graph_path.md +1 -0
  20. package/dist/docs/api/operations/graph_traverse.md +1 -0
  21. package/dist/docs/api/operations/infer_table.md +1 -0
  22. package/dist/docs/api/operations/list_changes.md +1 -0
  23. package/dist/docs/api/operations/list_folder.md +1 -0
  24. package/dist/docs/api/operations/list_link_targets.md +1 -0
  25. package/dist/docs/api/operations/list_migrations.md +1 -0
  26. package/dist/docs/api/operations/list_tables.md +2 -0
  27. package/dist/docs/api/operations/list_webhooks.md +1 -0
  28. package/dist/docs/api/operations/read_note.md +1 -0
  29. package/dist/docs/api/operations/search.md +39 -0
  30. package/dist/docs/api/operations/search_notes.md +1 -0
  31. package/dist/docs/api/operations/select_rows.md +1 -0
  32. package/dist/docs/api/operations/semantic_search.md +1 -0
  33. package/dist/docs/api/operations/table_changes.md +1 -0
  34. package/dist/docs/api/operations/tags/queries.md +1 -0
  35. package/dist/docs/api/operations/tags/tokens.md +1 -1
  36. package/dist/docs/api/operations/tokens_create.md +1 -0
  37. package/dist/docs/api/operations/tokens_update.md +2 -1
  38. package/dist/docs/api.md +5 -4
  39. package/dist/docs/develop/build-an-app.md +2 -1
  40. package/dist/docs/develop/change-feed-and-webhooks.md +1 -1
  41. package/dist/docs/develop/http-api.md +1 -1
  42. package/dist/docs/guides/data-quality/check-constraints.md +10 -10
  43. package/dist/docs/guides/data-quality/hand-edits.md +8 -8
  44. package/dist/docs/guides/database-objects/bases.md +11 -11
  45. package/dist/docs/guides/database-objects/catalogs-and-schemas.md +30 -10
  46. package/dist/docs/guides/database-objects/columns.md +243 -40
  47. package/dist/docs/guides/database-objects/relations.md +28 -28
  48. package/dist/docs/guides/database-objects/tables.md +167 -43
  49. package/dist/docs/guides/database-objects/views.md +44 -44
  50. package/dist/docs/guides/history/change-data-feed.md +34 -34
  51. package/dist/docs/guides/history/journal-and-undo.md +12 -12
  52. package/dist/docs/guides/history/restore.md +20 -20
  53. package/dist/docs/guides/history/table-history.md +31 -31
  54. package/dist/docs/guides/read-and-write/automatic-links.md +15 -15
  55. package/dist/docs/guides/read-and-write/import-notes.md +20 -20
  56. package/dist/docs/guides/read-and-write/joins-and-aggregates.md +7 -7
  57. package/dist/docs/guides/read-and-write/read-and-filter.md +10 -10
  58. package/dist/docs/guides/read-and-write/write-rows.md +10 -10
  59. package/dist/docs/guides/search/hybrid.md +162 -0
  60. package/dist/docs/guides/search/text.md +1 -1
  61. package/dist/docs/guides/security/security-model.md +5 -3
  62. package/dist/docs/guides/security/tokens.md +121 -8
  63. package/dist/docs/reference/cli.md +1 -1
  64. package/dist/docs/reference/glossary.md +1 -1
  65. package/dist/docs/reference/operations/auxiliary.md +3 -3
  66. package/dist/docs/reference/operations/queries.md +16 -0
  67. package/dist/docs/reference/operations/rows.md +1 -1
  68. package/dist/docs/reference/operations/schema.md +5 -5
  69. package/dist/docs/reference/operations.md +6 -5
  70. package/dist/docs/release-notes.md +59 -0
  71. package/dist/docs/start/connect-agents.md +10 -3
  72. package/package.json +1 -1
package/dist/api/mcp.cjs CHANGED
@@ -272,7 +272,7 @@ var OPERATIONS = [
272
272
  },
273
273
  {
274
274
  "name": "list_tables",
275
- "description": "List every table: `name`, `catalog`, `schema`, `qualified` (`personal.metrics.mood` \u2014 use it\nwherever a table is expected; `metrics.mood` or `mood` also work when unambiguous), `path` and,\nwhen declared, `description`, `aliases` (other words for what it records) and `tags`. Tables are\ndefined in `metastore.yaml` (catalog \u2192 schema \u2192 table): read it freely, but it is read-only for\nagents and changes only through the schema operations (create_table, add_column, \u2026). Returns `{tables, views}`: `views` lists the stored views (same fields, no\npath): select them like tables. `system.information_schema` is read with `select_rows`.\n\nCall this first to find the table for what the user reports (match their words against\nname, description and aliases), and before creating tables or columns so you reuse existing\nones instead of creating duplicates.",
275
+ "description": "List every table: `name`, `catalog`, `schema`, `qualified` (`personal.metrics.mood` \u2014 use it\nwherever a table is expected; `metrics.mood` or `mood` also work when unambiguous), `path` and,\nwhen declared, `description`, `aliases` (other words for what it records) and `tags`. Tables are\ndefined in `metastore.yaml` (catalog \u2192 schema \u2192 table): read it freely, but it is read-only for\nagents and changes only through the schema operations (create_table, add_column, \u2026). Returns `{tables, views}`: `views` lists the stored views (same fields, no\npath): select them like tables. `system.information_schema` is read with `select_rows`.\nA token with `read` patterns sees only the tables and views it may read.\n\nCall this first to find the table for what the user reports (match their words against\nname, description and aliases), and before creating tables or columns so you reuse existing\nones instead of creating duplicates.",
276
276
  "inputSchema": {
277
277
  "additionalProperties": false,
278
278
  "properties": {},
@@ -537,7 +537,7 @@ var OPERATIONS = [
537
537
  },
538
538
  "generated": {
539
539
  "type": "string",
540
- "description": "Expression of a generated column."
540
+ "description": 'Expression of a generated column: a column, `date(col)\xB1N`, a template like `{name} {surname}`, `link(<template>)`, or an aggregate of a json list of objects like `count(feeds, side = "left")` or `sum(feeds.min)`.'
541
541
  },
542
542
  "dense": {
543
543
  "type": "boolean",
@@ -658,7 +658,7 @@ var OPERATIONS = [
658
658
  },
659
659
  {
660
660
  "name": "create_table",
661
- "description": 'Create a table: `name`, in `catalog` and `schema` (default: the database\'s defaults); the definition\ngoes in metastore.yaml, the rows in `<root>/<catalog>/<schema>/<name>/`. Names: lowercase letters,\ndigits, `_` (no dots: pass the catalog and the schema as their own arguments).\n- `description` (required): what a row of the table records. Every column needs its own `description`\n too, what it holds: the table is refused otherwise, with every missing one listed. Descriptions are how\n agents and people understand the schema, so write them for a reader who never saw the notes. The\n engine writes those of `id` and of `identity` "uuid" / "created" columns.\n- `columns`: specs like `{"name": "kind", "type": "enum", "values": ["a","b"], "required": true,\n "description": "What kind of entry the row is"}`.\n Types: string, integer, number, boolean, date, datetime, enum, link, list (+ `items`), json.\n Attributes: required, default (`"{now}"`/`"{today}"`), min, max, step, values, `ordered` (enum in\n order: filters/avg use the position), ref (link target, full `catalog.schema.table` or "self"),\n unique, label, description, aliases, `generated` (e.g. `"date(occurred_at)"`, `"{name} {surname}"`),\n `identity` ("filename" | "created"), `vocabulary` (allowed values = names of another table\'s rows),\n `hierarchy: true` (one parent link to its own table), `acyclic: true` (links to rows of its own table that never loop back, such as tasks blocked by tasks; with `inverse`, the rule holds on both sides), `dense` (written on every row),\n `inverse` on a link column: the column of the `ref` table that links back (`friends` \u2194\n `friends`, `children` \u2194 `parents`, `partner` \u2194 `partner`); writes keep both sides in step.\n- `time_column`: rows named by that date/datetime; otherwise `filename` (e.g. `"{name}"`).\n- The table\'s options, as alter_table names them: `aliases` (how agents find it, with the\n description), `partition`, `exclude`, `archive`, `history` (keep its versions; default: the\n database\'s setting), `autolink_target` (true / false: may automatic links link its rows? default:\n yes, unless its rows are named by a date or a time, as with `time_column`).\n- `row_template`: markdown body of new rows. Shared columns come from bases: `set_table_bases`.\n- `instructions`: how to fill a row, for agents (Markdown); describe_table returns them.\n- `tags`: key/value labels of the table, strings (`{"domain": "health"}`); list_tables and\n describe_table return them, alter_table changes them.\nEnum columns: `values` and, for each, its meaning in `value_descriptions` (`{"stated": "the user said it", \u2026}`): describe_table shows them and a refused value lists them.\nGenerated link columns: `generated: "link({occurred_at:YYYY-MM-DD})"` with `ref` = the days table links each row to the row of `ref` named by the template (its folder read from the schema; the target may not exist yet).\nFiltered link targets (link columns): `ref_where` (a `where` every target must match) and `ref_by` (a column of the row picks the target level: `{"column": "kind", "levels": ["area", "project", "workstream"]}` or `{"column": "kind", "map": {"area": null, "project": ["area"]}}`; null = top level, no link; `target_column` when the target names it differently: an enum target column must have every value the map allows, a string one takes any value). A link to no row of the table, or to the row itself, is refused too. Existing rows that break them refuse the change; `list_link_targets` lists the valid targets of a row.\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
661
+ "description": 'Create a table: `name`, in `catalog` and `schema` (default: the database\'s defaults); the definition\ngoes in metastore.yaml, the rows in `<root>/<catalog>/<schema>/<name>/`. Names: lowercase letters,\ndigits, `_` (no dots: pass the catalog and the schema as their own arguments).\n- `description` (required): what a row of the table records. Every column needs its own `description`\n too, what it holds: the table is refused otherwise, with every missing one listed. Descriptions are how\n agents and people understand the schema, so write them for a reader who never saw the notes. The\n engine writes those of `id` and of `identity` "uuid" / "created" columns.\n- `columns`: specs like `{"name": "kind", "type": "enum", "values": ["a","b"], "required": true,\n "description": "What kind of entry the row is"}`.\n Types: string, integer, number, boolean, date, datetime, enum, link, list (+ `items`), json.\n Attributes: required, default (`"{now}"`/`"{today}"`), min, max, step, values, `ordered` (enum in\n order: filters/avg use the position), ref (link target, full `catalog.schema.table` or "self"),\n unique, label, description, aliases, `generated` (e.g. `"date(occurred_at)"`, `"{name} {surname}"`),\n `identity` ("filename" | "created"), `vocabulary` (allowed values = names of another table\'s rows),\n `hierarchy: true` (one parent link to its own table), `acyclic: true` (links to rows of its own table that never loop back, such as tasks blocked by tasks; with `inverse`, the rule holds on both sides), `dense` (written on every row),\n `inverse` on a link column: the column of the `ref` table that links back (`friends` \u2194\n `friends`, `children` \u2194 `parents`, `partner` \u2194 `partner`); writes keep both sides in step.\n- `time_column`: rows named by that date/datetime; otherwise `filename` (e.g. `"{name}"`).\n- The table\'s options, as alter_table names them: `aliases` (how agents find it, with the\n description), `partition`, `exclude`, `archive`, `history` (keep its versions; default: the\n database\'s setting), `autolink_target` (true / false: may automatic links link its rows? default:\n yes, unless its rows are named by a date or a time, as with `time_column`).\n- `row_template`: markdown body of new rows. Shared columns come from bases: `set_table_bases`.\n- `instructions`: how to fill a row, for agents (Markdown); describe_table returns them.\n- `tags`: key/value labels of the table, strings (`{"domain": "health"}`); list_tables and\n describe_table return them, alter_table changes them.\nEnum columns: `values` and, for each, its meaning in `value_descriptions` (`{"stated": "the user said it", \u2026}`): describe_table shows them and a refused value lists them.\nGenerated link columns: `generated: "link({occurred_at:YYYY-MM-DD})"` with `ref` = the days table links each row to the row of `ref` named by the template (its folder read from the schema; the target may not exist yet).\nGenerated aggregates of a json column holding a list of objects (integer or number columns; avg: number): `count(feeds)`, `count(feeds.min)` (the items with a min), `sum(feeds.min)`, `avg(\u2026)`, `min(\u2026)`, `max(\u2026)`, with an optional filter on one field: `count(feeds, side = "left")`, `sum(feeds.min, min > 0)` (=, !=, <, <=, >, >=; "text", a number, true or false). Recomputed on every write; no list: count and sum 0, avg/min/max empty; a field that is not a number: empty.\nFiltered link targets (link columns): `ref_where` (a `where` every target must match) and `ref_by` (a column of the row picks the target level: `{"column": "kind", "levels": ["area", "project", "workstream"]}` or `{"column": "kind", "map": {"area": null, "project": ["area"]}}`; null = top level, no link; `target_column` when the target names it differently: an enum target column must have every value the map allows, a string one takes any value). A link to no row of the table, or to the row itself, is refused too. Existing rows that break them refuse the change; `list_link_targets` lists the valid targets of a row.\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
662
662
  "inputSchema": {
663
663
  "additionalProperties": false,
664
664
  "properties": {
@@ -1227,6 +1227,50 @@ var OPERATIONS = [
1227
1227
  ]
1228
1228
  },
1229
1229
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
1230
+ },
1231
+ "schema_references": {
1232
+ "type": "array",
1233
+ "items": {
1234
+ "title": "SchemaReference",
1235
+ "type": "object",
1236
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
1237
+ "properties": {
1238
+ "table": {
1239
+ "type": "string",
1240
+ "description": "The table whose column names it (full name)."
1241
+ },
1242
+ "base": {
1243
+ "type": "string",
1244
+ "description": "The base whose column names it."
1245
+ },
1246
+ "view": {
1247
+ "type": "string",
1248
+ "description": "The view whose query names it (full name)."
1249
+ },
1250
+ "column": {
1251
+ "type": "string",
1252
+ "description": "The column of the table or base."
1253
+ },
1254
+ "key": {
1255
+ "type": "string",
1256
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
1257
+ },
1258
+ "from": {
1259
+ "type": "string",
1260
+ "description": "The name as written before."
1261
+ },
1262
+ "to": {
1263
+ "type": "string",
1264
+ "description": "The name written in its place."
1265
+ }
1266
+ },
1267
+ "required": [
1268
+ "key",
1269
+ "from",
1270
+ "to"
1271
+ ]
1272
+ },
1273
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
1230
1274
  }
1231
1275
  },
1232
1276
  "required": [
@@ -1640,6 +1684,50 @@ var OPERATIONS = [
1640
1684
  ]
1641
1685
  },
1642
1686
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
1687
+ },
1688
+ "schema_references": {
1689
+ "type": "array",
1690
+ "items": {
1691
+ "title": "SchemaReference",
1692
+ "type": "object",
1693
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
1694
+ "properties": {
1695
+ "table": {
1696
+ "type": "string",
1697
+ "description": "The table whose column names it (full name)."
1698
+ },
1699
+ "base": {
1700
+ "type": "string",
1701
+ "description": "The base whose column names it."
1702
+ },
1703
+ "view": {
1704
+ "type": "string",
1705
+ "description": "The view whose query names it (full name)."
1706
+ },
1707
+ "column": {
1708
+ "type": "string",
1709
+ "description": "The column of the table or base."
1710
+ },
1711
+ "key": {
1712
+ "type": "string",
1713
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
1714
+ },
1715
+ "from": {
1716
+ "type": "string",
1717
+ "description": "The name as written before."
1718
+ },
1719
+ "to": {
1720
+ "type": "string",
1721
+ "description": "The name written in its place."
1722
+ }
1723
+ },
1724
+ "required": [
1725
+ "key",
1726
+ "from",
1727
+ "to"
1728
+ ]
1729
+ },
1730
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
1643
1731
  }
1644
1732
  },
1645
1733
  "required": [
@@ -1664,7 +1752,7 @@ var OPERATIONS = [
1664
1752
  },
1665
1753
  {
1666
1754
  "name": "add_column",
1667
- "description": 'Add a typed column. Sparse by default (written only on rows that have a value \u2014 use for\nmetrics, e.g. `{"name": "metric_mood", "type": "integer", "min": 1, "max": 5, "label":\n"Mood", "aliases": ["mood"], "description": "Mood of the day, 1 = bad, 5 = great"}`).\n`description` is required: what the column holds, for the agents and people who read the schema\n(the engine writes it for `identity` "uuid" / "created" columns).\n`dense: true` in the spec adds it to every row with its `default`. Call `describe_table` first: never add\na column whose meaning an existing column (name/label/aliases/description) already covers.\nColumn names are permanent identifiers; only `rename_column` changes them.\nEnum columns: `values` and, for each, its meaning in `value_descriptions` (`{"stated": "the user said it", \u2026}`): describe_table shows them and a refused value lists them.\nGenerated link columns: `generated: "link({occurred_at:YYYY-MM-DD})"` with `ref` = the days table links each row to the row of `ref` named by the template (its folder read from the schema; the target may not exist yet).\nFiltered link targets (link columns): `ref_where` (a `where` every target must match) and `ref_by` (a column of the row picks the target level: `{"column": "kind", "levels": ["area", "project", "workstream"]}` or `{"column": "kind", "map": {"area": null, "project": ["area"]}}`; null = top level, no link; `target_column` when the target names it differently: an enum target column must have every value the map allows, a string one takes any value). A link to no row of the table, or to the row itself, is refused too. Existing rows that break them refuse the change; `list_link_targets` lists the valid targets of a row.\nAcyclic links: `acyclic: true` on a link (or list of links) to the table itself refuses every write that closes a cycle, on either side of an `inverse`; refused while existing rows form one (they are listed).\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
1755
+ "description": 'Add a typed column. Sparse by default (written only on rows that have a value \u2014 use for\nmetrics, e.g. `{"name": "metric_mood", "type": "integer", "min": 1, "max": 5, "label":\n"Mood", "aliases": ["mood"], "description": "Mood of the day, 1 = bad, 5 = great"}`).\n`description` is required: what the column holds, for the agents and people who read the schema\n(the engine writes it for `identity` "uuid" / "created" columns).\n`dense: true` in the spec adds it to every row with its `default`. Call `describe_table` first: never add\na column whose meaning an existing column (name/label/aliases/description) already covers.\nColumn names are permanent identifiers; only `rename_column` changes them.\nEnum columns: `values` and, for each, its meaning in `value_descriptions` (`{"stated": "the user said it", \u2026}`): describe_table shows them and a refused value lists them.\nGenerated link columns: `generated: "link({occurred_at:YYYY-MM-DD})"` with `ref` = the days table links each row to the row of `ref` named by the template (its folder read from the schema; the target may not exist yet).\nGenerated aggregates of a json column holding a list of objects (integer or number columns; avg: number): `count(feeds)`, `count(feeds.min)` (the items with a min), `sum(feeds.min)`, `avg(\u2026)`, `min(\u2026)`, `max(\u2026)`, with an optional filter on one field: `count(feeds, side = "left")`, `sum(feeds.min, min > 0)` (=, !=, <, <=, >, >=; "text", a number, true or false). Recomputed on every write; no list: count and sum 0, avg/min/max empty; a field that is not a number: empty.\nFiltered link targets (link columns): `ref_where` (a `where` every target must match) and `ref_by` (a column of the row picks the target level: `{"column": "kind", "levels": ["area", "project", "workstream"]}` or `{"column": "kind", "map": {"area": null, "project": ["area"]}}`; null = top level, no link; `target_column` when the target names it differently: an enum target column must have every value the map allows, a string one takes any value). A link to no row of the table, or to the row itself, is refused too. Existing rows that break them refuse the change; `list_link_targets` lists the valid targets of a row.\nAcyclic links: `acyclic: true` on a link (or list of links) to the table itself refuses every write that closes a cycle, on either side of an `inverse`; refused while existing rows form one (they are listed).\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
1668
1756
  "inputSchema": {
1669
1757
  "additionalProperties": false,
1670
1758
  "properties": {
@@ -2044,6 +2132,50 @@ var OPERATIONS = [
2044
2132
  ]
2045
2133
  },
2046
2134
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
2135
+ },
2136
+ "schema_references": {
2137
+ "type": "array",
2138
+ "items": {
2139
+ "title": "SchemaReference",
2140
+ "type": "object",
2141
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
2142
+ "properties": {
2143
+ "table": {
2144
+ "type": "string",
2145
+ "description": "The table whose column names it (full name)."
2146
+ },
2147
+ "base": {
2148
+ "type": "string",
2149
+ "description": "The base whose column names it."
2150
+ },
2151
+ "view": {
2152
+ "type": "string",
2153
+ "description": "The view whose query names it (full name)."
2154
+ },
2155
+ "column": {
2156
+ "type": "string",
2157
+ "description": "The column of the table or base."
2158
+ },
2159
+ "key": {
2160
+ "type": "string",
2161
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
2162
+ },
2163
+ "from": {
2164
+ "type": "string",
2165
+ "description": "The name as written before."
2166
+ },
2167
+ "to": {
2168
+ "type": "string",
2169
+ "description": "The name written in its place."
2170
+ }
2171
+ },
2172
+ "required": [
2173
+ "key",
2174
+ "from",
2175
+ "to"
2176
+ ]
2177
+ },
2178
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
2047
2179
  }
2048
2180
  },
2049
2181
  "required": [
@@ -2450,6 +2582,50 @@ var OPERATIONS = [
2450
2582
  ]
2451
2583
  },
2452
2584
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
2585
+ },
2586
+ "schema_references": {
2587
+ "type": "array",
2588
+ "items": {
2589
+ "title": "SchemaReference",
2590
+ "type": "object",
2591
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
2592
+ "properties": {
2593
+ "table": {
2594
+ "type": "string",
2595
+ "description": "The table whose column names it (full name)."
2596
+ },
2597
+ "base": {
2598
+ "type": "string",
2599
+ "description": "The base whose column names it."
2600
+ },
2601
+ "view": {
2602
+ "type": "string",
2603
+ "description": "The view whose query names it (full name)."
2604
+ },
2605
+ "column": {
2606
+ "type": "string",
2607
+ "description": "The column of the table or base."
2608
+ },
2609
+ "key": {
2610
+ "type": "string",
2611
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
2612
+ },
2613
+ "from": {
2614
+ "type": "string",
2615
+ "description": "The name as written before."
2616
+ },
2617
+ "to": {
2618
+ "type": "string",
2619
+ "description": "The name written in its place."
2620
+ }
2621
+ },
2622
+ "required": [
2623
+ "key",
2624
+ "from",
2625
+ "to"
2626
+ ]
2627
+ },
2628
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
2453
2629
  }
2454
2630
  },
2455
2631
  "required": [
@@ -2853,6 +3029,50 @@ var OPERATIONS = [
2853
3029
  ]
2854
3030
  },
2855
3031
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
3032
+ },
3033
+ "schema_references": {
3034
+ "type": "array",
3035
+ "items": {
3036
+ "title": "SchemaReference",
3037
+ "type": "object",
3038
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
3039
+ "properties": {
3040
+ "table": {
3041
+ "type": "string",
3042
+ "description": "The table whose column names it (full name)."
3043
+ },
3044
+ "base": {
3045
+ "type": "string",
3046
+ "description": "The base whose column names it."
3047
+ },
3048
+ "view": {
3049
+ "type": "string",
3050
+ "description": "The view whose query names it (full name)."
3051
+ },
3052
+ "column": {
3053
+ "type": "string",
3054
+ "description": "The column of the table or base."
3055
+ },
3056
+ "key": {
3057
+ "type": "string",
3058
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
3059
+ },
3060
+ "from": {
3061
+ "type": "string",
3062
+ "description": "The name as written before."
3063
+ },
3064
+ "to": {
3065
+ "type": "string",
3066
+ "description": "The name written in its place."
3067
+ }
3068
+ },
3069
+ "required": [
3070
+ "key",
3071
+ "from",
3072
+ "to"
3073
+ ]
3074
+ },
3075
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
2856
3076
  }
2857
3077
  },
2858
3078
  "required": [
@@ -3261,6 +3481,50 @@ var OPERATIONS = [
3261
3481
  ]
3262
3482
  },
3263
3483
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
3484
+ },
3485
+ "schema_references": {
3486
+ "type": "array",
3487
+ "items": {
3488
+ "title": "SchemaReference",
3489
+ "type": "object",
3490
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
3491
+ "properties": {
3492
+ "table": {
3493
+ "type": "string",
3494
+ "description": "The table whose column names it (full name)."
3495
+ },
3496
+ "base": {
3497
+ "type": "string",
3498
+ "description": "The base whose column names it."
3499
+ },
3500
+ "view": {
3501
+ "type": "string",
3502
+ "description": "The view whose query names it (full name)."
3503
+ },
3504
+ "column": {
3505
+ "type": "string",
3506
+ "description": "The column of the table or base."
3507
+ },
3508
+ "key": {
3509
+ "type": "string",
3510
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
3511
+ },
3512
+ "from": {
3513
+ "type": "string",
3514
+ "description": "The name as written before."
3515
+ },
3516
+ "to": {
3517
+ "type": "string",
3518
+ "description": "The name written in its place."
3519
+ }
3520
+ },
3521
+ "required": [
3522
+ "key",
3523
+ "from",
3524
+ "to"
3525
+ ]
3526
+ },
3527
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
3264
3528
  }
3265
3529
  },
3266
3530
  "required": [
@@ -3285,7 +3549,7 @@ var OPERATIONS = [
3285
3549
  },
3286
3550
  {
3287
3551
  "name": "alter_table",
3288
- "description": 'Alter a table: move it (`catalog`, `schema`), rename it (`name`), change\n`partition` / `filename` patterns, `description` (changes, never goes: "" is refused), `aliases`,\n`exclude` folders, `row_template`\n("" removes it), `instructions` (how to fill a row, for agents; "" removes them), `history` (true | false | "default"), `autolink_target`\n(true | false | "default": may automatic links link its rows? default: yes, unless its rows are named by\na date or a time) or `tags` (key/value\nlabels merged into the table\'s, e.g. `{"domain": "health"}`; a `null` value removes that tag;\n`clear_tags: true` removes every tag first, so with `tags` the table keeps exactly those),\n`archive` (folder name inside the table folder) or `fields` (untyped fields, name \u2192 default; a\n`null` value removes one). Rows, archive and transaction log follow; links are updated; renamed\nrows keep their old name in `aliases`. A change of metadata only (tags, description, aliases,\nhistory, autolink_target, row_template, instructions, fields) rewrites the table entry alone: no row is moved or rewritten. Refused\nwhen a row cannot fill a pattern. Renaming or moving the table is refused while a CHECK that follows\nlinks, or a `ref_where` / `ref_by`, of another table reads it through a link (link targets are not\nrewritten): the conflicts name them. Use `dry_run` to see `planned_moves`; undo with undo_migration.\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
3552
+ "description": 'Alter a table: move it (`catalog`, `schema`), rename it (`name`), change\n`partition` / `filename` patterns, `description` (changes, never goes: "" is refused), `aliases`,\n`exclude` folders, `row_template`\n("" removes it), `instructions` (how to fill a row, for agents; "" removes them), `history` (true | false | "default"), `autolink_target`\n(true | false | "default": may automatic links link its rows? default: yes, unless its rows are named by\na date or a time) or `tags` (key/value\nlabels merged into the table\'s, e.g. `{"domain": "health"}`; a `null` value removes that tag;\n`clear_tags: true` removes every tag first, so with `tags` the table keeps exactly those),\n`archive` (folder name inside the table folder) or `fields` (untyped fields, name \u2192 default; a\n`null` value removes one). Rows, archive and transaction log follow; links are updated; renamed\nrows keep their old name in `aliases`. A change of metadata only (tags, description, aliases,\nhistory, autolink_target, row_template, instructions, fields) rewrites the table entry alone: no row is moved or rewritten. Refused\nwhen a row cannot fill a pattern. Renaming or moving the table rewrites what names it in other\ndefinitions: the `ref` and `vocabulary` of the columns of other tables and bases (lists of links\nincluded) and the tables of views (`table`, `union[].table`, `join.table`); `schema_references`\nlists them. CHECKs and `ref_where` / `ref_by` that read it through a link follow the new `ref`. Use `dry_run` to see `planned_moves`; undo with undo_migration.\n\nThe schema changes only through operations like this one: never edit metastore.yaml by hand (no validation, no undo).',
3289
3553
  "inputSchema": {
3290
3554
  "additionalProperties": false,
3291
3555
  "properties": {
@@ -3866,6 +4130,50 @@ var OPERATIONS = [
3866
4130
  ]
3867
4131
  },
3868
4132
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
4133
+ },
4134
+ "schema_references": {
4135
+ "type": "array",
4136
+ "items": {
4137
+ "title": "SchemaReference",
4138
+ "type": "object",
4139
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
4140
+ "properties": {
4141
+ "table": {
4142
+ "type": "string",
4143
+ "description": "The table whose column names it (full name)."
4144
+ },
4145
+ "base": {
4146
+ "type": "string",
4147
+ "description": "The base whose column names it."
4148
+ },
4149
+ "view": {
4150
+ "type": "string",
4151
+ "description": "The view whose query names it (full name)."
4152
+ },
4153
+ "column": {
4154
+ "type": "string",
4155
+ "description": "The column of the table or base."
4156
+ },
4157
+ "key": {
4158
+ "type": "string",
4159
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
4160
+ },
4161
+ "from": {
4162
+ "type": "string",
4163
+ "description": "The name as written before."
4164
+ },
4165
+ "to": {
4166
+ "type": "string",
4167
+ "description": "The name written in its place."
4168
+ }
4169
+ },
4170
+ "required": [
4171
+ "key",
4172
+ "from",
4173
+ "to"
4174
+ ]
4175
+ },
4176
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
3869
4177
  }
3870
4178
  },
3871
4179
  "required": [
@@ -4326,6 +4634,50 @@ var OPERATIONS = [
4326
4634
  ]
4327
4635
  },
4328
4636
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
4637
+ },
4638
+ "schema_references": {
4639
+ "type": "array",
4640
+ "items": {
4641
+ "title": "SchemaReference",
4642
+ "type": "object",
4643
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
4644
+ "properties": {
4645
+ "table": {
4646
+ "type": "string",
4647
+ "description": "The table whose column names it (full name)."
4648
+ },
4649
+ "base": {
4650
+ "type": "string",
4651
+ "description": "The base whose column names it."
4652
+ },
4653
+ "view": {
4654
+ "type": "string",
4655
+ "description": "The view whose query names it (full name)."
4656
+ },
4657
+ "column": {
4658
+ "type": "string",
4659
+ "description": "The column of the table or base."
4660
+ },
4661
+ "key": {
4662
+ "type": "string",
4663
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
4664
+ },
4665
+ "from": {
4666
+ "type": "string",
4667
+ "description": "The name as written before."
4668
+ },
4669
+ "to": {
4670
+ "type": "string",
4671
+ "description": "The name written in its place."
4672
+ }
4673
+ },
4674
+ "required": [
4675
+ "key",
4676
+ "from",
4677
+ "to"
4678
+ ]
4679
+ },
4680
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
4329
4681
  }
4330
4682
  },
4331
4683
  "required": [
@@ -4731,6 +5083,50 @@ var OPERATIONS = [
4731
5083
  ]
4732
5084
  },
4733
5085
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
5086
+ },
5087
+ "schema_references": {
5088
+ "type": "array",
5089
+ "items": {
5090
+ "title": "SchemaReference",
5091
+ "type": "object",
5092
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
5093
+ "properties": {
5094
+ "table": {
5095
+ "type": "string",
5096
+ "description": "The table whose column names it (full name)."
5097
+ },
5098
+ "base": {
5099
+ "type": "string",
5100
+ "description": "The base whose column names it."
5101
+ },
5102
+ "view": {
5103
+ "type": "string",
5104
+ "description": "The view whose query names it (full name)."
5105
+ },
5106
+ "column": {
5107
+ "type": "string",
5108
+ "description": "The column of the table or base."
5109
+ },
5110
+ "key": {
5111
+ "type": "string",
5112
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
5113
+ },
5114
+ "from": {
5115
+ "type": "string",
5116
+ "description": "The name as written before."
5117
+ },
5118
+ "to": {
5119
+ "type": "string",
5120
+ "description": "The name written in its place."
5121
+ }
5122
+ },
5123
+ "required": [
5124
+ "key",
5125
+ "from",
5126
+ "to"
5127
+ ]
5128
+ },
5129
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
4734
5130
  }
4735
5131
  },
4736
5132
  "required": [
@@ -4755,7 +5151,7 @@ var OPERATIONS = [
4755
5151
  },
4756
5152
  {
4757
5153
  "name": "describe_database",
4758
- "description": "Describe the database: its folder (`root`), `metastore` (`metastore.yaml`: read it freely,\nbut it is read-only for agents and changes only through the schema operations), configuration\n(default catalog and schema, row partition and file-name formats, archive folder, time zone,\nhistory, automatic links),\njournal folder, `bases` (shared column sets and the tables using them), `catalogs` \u2192 `schemas` \u2192 `tables` (with `row_count`, `tags`, and `unreadable_count` when some rows' front matter cannot be read) and `views`;\ncatalogs and schemas show their `comment` (set with `comment_on`). A table or base defined before\ndescriptions were required has `missing_descriptions`: what lacks one, for alter_table / alter_column\n(define_base for a base) to fill, so every table and column says what it holds.",
5154
+ "description": "Describe the database: its folder (`root`), `metastore` (`metastore.yaml`: read it freely,\nbut it is read-only for agents and changes only through the schema operations), configuration\n(default catalog and schema, row partition and file-name formats, archive folder, time zone,\nhistory, automatic links),\njournal folder, `bases` (shared column sets and the tables using them), `catalogs` \u2192 `schemas` \u2192 `tables` (with `row_count`, `tags`, and `unreadable_count` when some rows' front matter cannot be read) and `views`;\ncatalogs and schemas show their `comment` (set with `comment_on`). A table or base defined before\ndescriptions were required has `missing_descriptions`: what lacks one, for alter_table / alter_column\n(define_base for a base) to fill, so every table and column says what it holds.\nA token with `read` patterns sees only the tables, views and bases it may read.",
4759
5155
  "inputSchema": {
4760
5156
  "additionalProperties": false,
4761
5157
  "properties": {},
@@ -5797,10 +6193,54 @@ var OPERATIONS = [
5797
6193
  ]
5798
6194
  },
5799
6195
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
5800
- }
5801
- },
5802
- "required": [
5803
- "ok",
6196
+ },
6197
+ "schema_references": {
6198
+ "type": "array",
6199
+ "items": {
6200
+ "title": "SchemaReference",
6201
+ "type": "object",
6202
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
6203
+ "properties": {
6204
+ "table": {
6205
+ "type": "string",
6206
+ "description": "The table whose column names it (full name)."
6207
+ },
6208
+ "base": {
6209
+ "type": "string",
6210
+ "description": "The base whose column names it."
6211
+ },
6212
+ "view": {
6213
+ "type": "string",
6214
+ "description": "The view whose query names it (full name)."
6215
+ },
6216
+ "column": {
6217
+ "type": "string",
6218
+ "description": "The column of the table or base."
6219
+ },
6220
+ "key": {
6221
+ "type": "string",
6222
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
6223
+ },
6224
+ "from": {
6225
+ "type": "string",
6226
+ "description": "The name as written before."
6227
+ },
6228
+ "to": {
6229
+ "type": "string",
6230
+ "description": "The name written in its place."
6231
+ }
6232
+ },
6233
+ "required": [
6234
+ "key",
6235
+ "from",
6236
+ "to"
6237
+ ]
6238
+ },
6239
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
6240
+ }
6241
+ },
6242
+ "required": [
6243
+ "ok",
5804
6244
  "op",
5805
6245
  "dry_run",
5806
6246
  "notes_changed",
@@ -6207,6 +6647,50 @@ var OPERATIONS = [
6207
6647
  ]
6208
6648
  },
6209
6649
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
6650
+ },
6651
+ "schema_references": {
6652
+ "type": "array",
6653
+ "items": {
6654
+ "title": "SchemaReference",
6655
+ "type": "object",
6656
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
6657
+ "properties": {
6658
+ "table": {
6659
+ "type": "string",
6660
+ "description": "The table whose column names it (full name)."
6661
+ },
6662
+ "base": {
6663
+ "type": "string",
6664
+ "description": "The base whose column names it."
6665
+ },
6666
+ "view": {
6667
+ "type": "string",
6668
+ "description": "The view whose query names it (full name)."
6669
+ },
6670
+ "column": {
6671
+ "type": "string",
6672
+ "description": "The column of the table or base."
6673
+ },
6674
+ "key": {
6675
+ "type": "string",
6676
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
6677
+ },
6678
+ "from": {
6679
+ "type": "string",
6680
+ "description": "The name as written before."
6681
+ },
6682
+ "to": {
6683
+ "type": "string",
6684
+ "description": "The name written in its place."
6685
+ }
6686
+ },
6687
+ "required": [
6688
+ "key",
6689
+ "from",
6690
+ "to"
6691
+ ]
6692
+ },
6693
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
6210
6694
  }
6211
6695
  },
6212
6696
  "required": [
@@ -6645,6 +7129,50 @@ var OPERATIONS = [
6645
7129
  ]
6646
7130
  },
6647
7131
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
7132
+ },
7133
+ "schema_references": {
7134
+ "type": "array",
7135
+ "items": {
7136
+ "title": "SchemaReference",
7137
+ "type": "object",
7138
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
7139
+ "properties": {
7140
+ "table": {
7141
+ "type": "string",
7142
+ "description": "The table whose column names it (full name)."
7143
+ },
7144
+ "base": {
7145
+ "type": "string",
7146
+ "description": "The base whose column names it."
7147
+ },
7148
+ "view": {
7149
+ "type": "string",
7150
+ "description": "The view whose query names it (full name)."
7151
+ },
7152
+ "column": {
7153
+ "type": "string",
7154
+ "description": "The column of the table or base."
7155
+ },
7156
+ "key": {
7157
+ "type": "string",
7158
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
7159
+ },
7160
+ "from": {
7161
+ "type": "string",
7162
+ "description": "The name as written before."
7163
+ },
7164
+ "to": {
7165
+ "type": "string",
7166
+ "description": "The name written in its place."
7167
+ }
7168
+ },
7169
+ "required": [
7170
+ "key",
7171
+ "from",
7172
+ "to"
7173
+ ]
7174
+ },
7175
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
6648
7176
  }
6649
7177
  },
6650
7178
  "required": [
@@ -7087,6 +7615,50 @@ var OPERATIONS = [
7087
7615
  ]
7088
7616
  },
7089
7617
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
7618
+ },
7619
+ "schema_references": {
7620
+ "type": "array",
7621
+ "items": {
7622
+ "title": "SchemaReference",
7623
+ "type": "object",
7624
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
7625
+ "properties": {
7626
+ "table": {
7627
+ "type": "string",
7628
+ "description": "The table whose column names it (full name)."
7629
+ },
7630
+ "base": {
7631
+ "type": "string",
7632
+ "description": "The base whose column names it."
7633
+ },
7634
+ "view": {
7635
+ "type": "string",
7636
+ "description": "The view whose query names it (full name)."
7637
+ },
7638
+ "column": {
7639
+ "type": "string",
7640
+ "description": "The column of the table or base."
7641
+ },
7642
+ "key": {
7643
+ "type": "string",
7644
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
7645
+ },
7646
+ "from": {
7647
+ "type": "string",
7648
+ "description": "The name as written before."
7649
+ },
7650
+ "to": {
7651
+ "type": "string",
7652
+ "description": "The name written in its place."
7653
+ }
7654
+ },
7655
+ "required": [
7656
+ "key",
7657
+ "from",
7658
+ "to"
7659
+ ]
7660
+ },
7661
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
7090
7662
  }
7091
7663
  },
7092
7664
  "required": [
@@ -7604,6 +8176,50 @@ var OPERATIONS = [
7604
8176
  ]
7605
8177
  },
7606
8178
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
8179
+ },
8180
+ "schema_references": {
8181
+ "type": "array",
8182
+ "items": {
8183
+ "title": "SchemaReference",
8184
+ "type": "object",
8185
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
8186
+ "properties": {
8187
+ "table": {
8188
+ "type": "string",
8189
+ "description": "The table whose column names it (full name)."
8190
+ },
8191
+ "base": {
8192
+ "type": "string",
8193
+ "description": "The base whose column names it."
8194
+ },
8195
+ "view": {
8196
+ "type": "string",
8197
+ "description": "The view whose query names it (full name)."
8198
+ },
8199
+ "column": {
8200
+ "type": "string",
8201
+ "description": "The column of the table or base."
8202
+ },
8203
+ "key": {
8204
+ "type": "string",
8205
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
8206
+ },
8207
+ "from": {
8208
+ "type": "string",
8209
+ "description": "The name as written before."
8210
+ },
8211
+ "to": {
8212
+ "type": "string",
8213
+ "description": "The name written in its place."
8214
+ }
8215
+ },
8216
+ "required": [
8217
+ "key",
8218
+ "from",
8219
+ "to"
8220
+ ]
8221
+ },
8222
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
7607
8223
  }
7608
8224
  },
7609
8225
  "required": [
@@ -8039,6 +8655,50 @@ var OPERATIONS = [
8039
8655
  ]
8040
8656
  },
8041
8657
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
8658
+ },
8659
+ "schema_references": {
8660
+ "type": "array",
8661
+ "items": {
8662
+ "title": "SchemaReference",
8663
+ "type": "object",
8664
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
8665
+ "properties": {
8666
+ "table": {
8667
+ "type": "string",
8668
+ "description": "The table whose column names it (full name)."
8669
+ },
8670
+ "base": {
8671
+ "type": "string",
8672
+ "description": "The base whose column names it."
8673
+ },
8674
+ "view": {
8675
+ "type": "string",
8676
+ "description": "The view whose query names it (full name)."
8677
+ },
8678
+ "column": {
8679
+ "type": "string",
8680
+ "description": "The column of the table or base."
8681
+ },
8682
+ "key": {
8683
+ "type": "string",
8684
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
8685
+ },
8686
+ "from": {
8687
+ "type": "string",
8688
+ "description": "The name as written before."
8689
+ },
8690
+ "to": {
8691
+ "type": "string",
8692
+ "description": "The name written in its place."
8693
+ }
8694
+ },
8695
+ "required": [
8696
+ "key",
8697
+ "from",
8698
+ "to"
8699
+ ]
8700
+ },
8701
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
8042
8702
  }
8043
8703
  },
8044
8704
  "required": [
@@ -8491,6 +9151,50 @@ var OPERATIONS = [
8491
9151
  ]
8492
9152
  },
8493
9153
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
9154
+ },
9155
+ "schema_references": {
9156
+ "type": "array",
9157
+ "items": {
9158
+ "title": "SchemaReference",
9159
+ "type": "object",
9160
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
9161
+ "properties": {
9162
+ "table": {
9163
+ "type": "string",
9164
+ "description": "The table whose column names it (full name)."
9165
+ },
9166
+ "base": {
9167
+ "type": "string",
9168
+ "description": "The base whose column names it."
9169
+ },
9170
+ "view": {
9171
+ "type": "string",
9172
+ "description": "The view whose query names it (full name)."
9173
+ },
9174
+ "column": {
9175
+ "type": "string",
9176
+ "description": "The column of the table or base."
9177
+ },
9178
+ "key": {
9179
+ "type": "string",
9180
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
9181
+ },
9182
+ "from": {
9183
+ "type": "string",
9184
+ "description": "The name as written before."
9185
+ },
9186
+ "to": {
9187
+ "type": "string",
9188
+ "description": "The name written in its place."
9189
+ }
9190
+ },
9191
+ "required": [
9192
+ "key",
9193
+ "from",
9194
+ "to"
9195
+ ]
9196
+ },
9197
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
8494
9198
  }
8495
9199
  },
8496
9200
  "required": [
@@ -8955,6 +9659,50 @@ var OPERATIONS = [
8955
9659
  ]
8956
9660
  },
8957
9661
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
9662
+ },
9663
+ "schema_references": {
9664
+ "type": "array",
9665
+ "items": {
9666
+ "title": "SchemaReference",
9667
+ "type": "object",
9668
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
9669
+ "properties": {
9670
+ "table": {
9671
+ "type": "string",
9672
+ "description": "The table whose column names it (full name)."
9673
+ },
9674
+ "base": {
9675
+ "type": "string",
9676
+ "description": "The base whose column names it."
9677
+ },
9678
+ "view": {
9679
+ "type": "string",
9680
+ "description": "The view whose query names it (full name)."
9681
+ },
9682
+ "column": {
9683
+ "type": "string",
9684
+ "description": "The column of the table or base."
9685
+ },
9686
+ "key": {
9687
+ "type": "string",
9688
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
9689
+ },
9690
+ "from": {
9691
+ "type": "string",
9692
+ "description": "The name as written before."
9693
+ },
9694
+ "to": {
9695
+ "type": "string",
9696
+ "description": "The name written in its place."
9697
+ }
9698
+ },
9699
+ "required": [
9700
+ "key",
9701
+ "from",
9702
+ "to"
9703
+ ]
9704
+ },
9705
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
8958
9706
  }
8959
9707
  },
8960
9708
  "required": [
@@ -10037,6 +10785,50 @@ var OPERATIONS = [
10037
10785
  ]
10038
10786
  },
10039
10787
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
10788
+ },
10789
+ "schema_references": {
10790
+ "type": "array",
10791
+ "items": {
10792
+ "title": "SchemaReference",
10793
+ "type": "object",
10794
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
10795
+ "properties": {
10796
+ "table": {
10797
+ "type": "string",
10798
+ "description": "The table whose column names it (full name)."
10799
+ },
10800
+ "base": {
10801
+ "type": "string",
10802
+ "description": "The base whose column names it."
10803
+ },
10804
+ "view": {
10805
+ "type": "string",
10806
+ "description": "The view whose query names it (full name)."
10807
+ },
10808
+ "column": {
10809
+ "type": "string",
10810
+ "description": "The column of the table or base."
10811
+ },
10812
+ "key": {
10813
+ "type": "string",
10814
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
10815
+ },
10816
+ "from": {
10817
+ "type": "string",
10818
+ "description": "The name as written before."
10819
+ },
10820
+ "to": {
10821
+ "type": "string",
10822
+ "description": "The name written in its place."
10823
+ }
10824
+ },
10825
+ "required": [
10826
+ "key",
10827
+ "from",
10828
+ "to"
10829
+ ]
10830
+ },
10831
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
10040
10832
  }
10041
10833
  },
10042
10834
  "required": [
@@ -10484,6 +11276,50 @@ var OPERATIONS = [
10484
11276
  ]
10485
11277
  },
10486
11278
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
11279
+ },
11280
+ "schema_references": {
11281
+ "type": "array",
11282
+ "items": {
11283
+ "title": "SchemaReference",
11284
+ "type": "object",
11285
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
11286
+ "properties": {
11287
+ "table": {
11288
+ "type": "string",
11289
+ "description": "The table whose column names it (full name)."
11290
+ },
11291
+ "base": {
11292
+ "type": "string",
11293
+ "description": "The base whose column names it."
11294
+ },
11295
+ "view": {
11296
+ "type": "string",
11297
+ "description": "The view whose query names it (full name)."
11298
+ },
11299
+ "column": {
11300
+ "type": "string",
11301
+ "description": "The column of the table or base."
11302
+ },
11303
+ "key": {
11304
+ "type": "string",
11305
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
11306
+ },
11307
+ "from": {
11308
+ "type": "string",
11309
+ "description": "The name as written before."
11310
+ },
11311
+ "to": {
11312
+ "type": "string",
11313
+ "description": "The name written in its place."
11314
+ }
11315
+ },
11316
+ "required": [
11317
+ "key",
11318
+ "from",
11319
+ "to"
11320
+ ]
11321
+ },
11322
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
10487
11323
  }
10488
11324
  },
10489
11325
  "required": [
@@ -10772,8 +11608,116 @@ var OPERATIONS = [
10772
11608
  }
10773
11609
  },
10774
11610
  {
10775
- "name": "semantic_search",
10776
- "description": 'Find notes by meaning, not exact words: `{query, results: [{path, score, heading, snippet,\ntable?}]}`, one result per note (its best passage), best first. Use it for vague questions\n("the dinner where we talked about moving", "what did I decide about the car") and to find the\nrows to read or update; then read_note / select_rows for the details. Filters: `tables`\n(qualified or short names), `folder`, `min_score` (cosine 0\u20131; ~0.5+ is usually relevant).\n`limit`: default 10, max 100. Fails with a clear message when semantic search is not enabled in\nthe engine settings.',
11611
+ "name": "semantic_search",
11612
+ "description": 'Find notes by meaning, not exact words: `{query, results: [{path, score, heading, snippet,\ntable?}]}`, one result per note (its best passage), best first. Use it for vague questions\n("the dinner where we talked about moving", "what did I decide about the car") and to find the\nrows to read or update; then read_note / select_rows for the details. Filters: `tables`\n(qualified or short names), `folder`, `min_score` (cosine 0\u20131; ~0.5+ is usually relevant).\n`limit`: default 10, max 100. Fails with a clear message when semantic search is not enabled in\nthe engine settings.',
11613
+ "inputSchema": {
11614
+ "additionalProperties": false,
11615
+ "properties": {
11616
+ "query": {
11617
+ "type": "string"
11618
+ },
11619
+ "limit": {
11620
+ "default": 10,
11621
+ "type": "integer"
11622
+ },
11623
+ "tables": {
11624
+ "anyOf": [
11625
+ {
11626
+ "items": {
11627
+ "type": "string"
11628
+ },
11629
+ "type": "array"
11630
+ },
11631
+ {
11632
+ "type": "null"
11633
+ }
11634
+ ],
11635
+ "default": null
11636
+ },
11637
+ "folder": {
11638
+ "anyOf": [
11639
+ {
11640
+ "type": "string"
11641
+ },
11642
+ {
11643
+ "type": "null"
11644
+ }
11645
+ ],
11646
+ "default": null
11647
+ },
11648
+ "min_score": {
11649
+ "anyOf": [
11650
+ {
11651
+ "type": "number"
11652
+ },
11653
+ {
11654
+ "type": "null"
11655
+ }
11656
+ ],
11657
+ "default": null
11658
+ }
11659
+ },
11660
+ "required": [
11661
+ "query"
11662
+ ],
11663
+ "type": "object"
11664
+ },
11665
+ "annotations": {
11666
+ "title": "Semantic Search",
11667
+ "readOnlyHint": true,
11668
+ "destructiveHint": false,
11669
+ "idempotentHint": true,
11670
+ "openWorldHint": false
11671
+ },
11672
+ "responseSchema": {
11673
+ "type": "object",
11674
+ "properties": {
11675
+ "query": {
11676
+ "type": "string"
11677
+ },
11678
+ "results": {
11679
+ "type": "array",
11680
+ "items": {
11681
+ "type": "object",
11682
+ "properties": {
11683
+ "path": {
11684
+ "type": "string"
11685
+ },
11686
+ "score": {
11687
+ "type": "number",
11688
+ "description": "Similarity, 0..1."
11689
+ },
11690
+ "heading": {
11691
+ "type": "string",
11692
+ "description": "Heading of the best passage."
11693
+ },
11694
+ "snippet": {
11695
+ "type": "string"
11696
+ },
11697
+ "table": {
11698
+ "type": "string",
11699
+ "description": "Qualified table of a row note."
11700
+ }
11701
+ },
11702
+ "required": [
11703
+ "path",
11704
+ "score",
11705
+ "heading",
11706
+ "snippet"
11707
+ ]
11708
+ },
11709
+ "description": "One result per note, best first."
11710
+ }
11711
+ },
11712
+ "required": [
11713
+ "query",
11714
+ "results"
11715
+ ]
11716
+ }
11717
+ },
11718
+ {
11719
+ "name": "search",
11720
+ "description": "Search the notes by their words and, when semantic search is on, by their meaning:\n`{query, results: [{path, table?, score, heading, snippet, matched_by}], meaning}`, one result per\nnote, best first. It always works: with semantic search off it ranks by words alone (BM25:\nrare words count more; a word in the note's name or properties counts more), with it on it fuses\nboth rankings (Reciprocal Rank Fusion), so a note found only by its words or only by its meaning\nis still there. `matched_by` says which (`words`, `meaning`); `meaning` is `on`, `off` or `failed`\n(the embedding provider failed: words only, `meaning_error` says why). Query syntax as search_docs:\n`\"a phrase\"` and `+word` must appear, `-word` must not (both rankings); words in any language,\ncase and accents ignored, no stemming. Filters: `tables` (qualified or short names), `folder`,\n`min_score` (the meaning ranking's cosine floor). `limit`: default 10, max 100. Then read_note /\nselect_rows for the details.",
10777
11721
  "inputSchema": {
10778
11722
  "additionalProperties": false,
10779
11723
  "properties": {
@@ -10827,7 +11771,7 @@ var OPERATIONS = [
10827
11771
  "type": "object"
10828
11772
  },
10829
11773
  "annotations": {
10830
- "title": "Semantic Search",
11774
+ "title": "Search",
10831
11775
  "readOnlyHint": true,
10832
11776
  "destructiveHint": false,
10833
11777
  "idempotentHint": true,
@@ -10847,35 +11791,62 @@ var OPERATIONS = [
10847
11791
  "path": {
10848
11792
  "type": "string"
10849
11793
  },
11794
+ "table": {
11795
+ "type": "string",
11796
+ "description": "Qualified table of a row note."
11797
+ },
10850
11798
  "score": {
10851
11799
  "type": "number",
10852
- "description": "Similarity, 0..1."
11800
+ "description": "BM25 when ranked by words alone; the Reciprocal Rank Fusion score when fused."
10853
11801
  },
10854
11802
  "heading": {
10855
11803
  "type": "string",
10856
- "description": "Heading of the best passage."
11804
+ "description": "Heading above the match (empty before the first heading)."
10857
11805
  },
10858
11806
  "snippet": {
10859
- "type": "string"
10860
- },
10861
- "table": {
10862
11807
  "type": "string",
10863
- "description": "Qualified table of a row note."
11808
+ "description": "About 200 characters around the first match, or the best passage by meaning."
11809
+ },
11810
+ "matched_by": {
11811
+ "type": "array",
11812
+ "items": {
11813
+ "type": "string",
11814
+ "enum": [
11815
+ "words",
11816
+ "meaning"
11817
+ ]
11818
+ },
11819
+ "description": "The rankings the note is in."
10864
11820
  }
10865
11821
  },
10866
11822
  "required": [
10867
11823
  "path",
10868
11824
  "score",
10869
11825
  "heading",
10870
- "snippet"
11826
+ "snippet",
11827
+ "matched_by"
10871
11828
  ]
10872
11829
  },
10873
11830
  "description": "One result per note, best first."
11831
+ },
11832
+ "meaning": {
11833
+ "type": "string",
11834
+ "enum": [
11835
+ "on",
11836
+ "off",
11837
+ "failed"
11838
+ ],
11839
+ "description": "on: words and meaning fused; off: semantic search is off, words only; failed: the embedding provider failed, words only."
11840
+ },
11841
+ "meaning_error": {
11842
+ "type": "string",
11843
+ "description": "Why the meaning ranking failed (with meaning: failed)."
10874
11844
  }
10875
11845
  },
10876
11846
  "required": [
10877
11847
  "query",
10878
- "results"
11848
+ "results",
11849
+ "meaning"
10879
11850
  ]
10880
11851
  }
10881
11852
  },
@@ -11571,6 +12542,50 @@ var OPERATIONS = [
11571
12542
  ]
11572
12543
  },
11573
12544
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
12545
+ },
12546
+ "schema_references": {
12547
+ "type": "array",
12548
+ "items": {
12549
+ "title": "SchemaReference",
12550
+ "type": "object",
12551
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
12552
+ "properties": {
12553
+ "table": {
12554
+ "type": "string",
12555
+ "description": "The table whose column names it (full name)."
12556
+ },
12557
+ "base": {
12558
+ "type": "string",
12559
+ "description": "The base whose column names it."
12560
+ },
12561
+ "view": {
12562
+ "type": "string",
12563
+ "description": "The view whose query names it (full name)."
12564
+ },
12565
+ "column": {
12566
+ "type": "string",
12567
+ "description": "The column of the table or base."
12568
+ },
12569
+ "key": {
12570
+ "type": "string",
12571
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
12572
+ },
12573
+ "from": {
12574
+ "type": "string",
12575
+ "description": "The name as written before."
12576
+ },
12577
+ "to": {
12578
+ "type": "string",
12579
+ "description": "The name written in its place."
12580
+ }
12581
+ },
12582
+ "required": [
12583
+ "key",
12584
+ "from",
12585
+ "to"
12586
+ ]
12587
+ },
12588
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
11574
12589
  }
11575
12590
  },
11576
12591
  "required": [
@@ -13012,6 +14027,50 @@ var OPERATIONS = [
13012
14027
  ]
13013
14028
  },
13014
14029
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
14030
+ },
14031
+ "schema_references": {
14032
+ "type": "array",
14033
+ "items": {
14034
+ "title": "SchemaReference",
14035
+ "type": "object",
14036
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
14037
+ "properties": {
14038
+ "table": {
14039
+ "type": "string",
14040
+ "description": "The table whose column names it (full name)."
14041
+ },
14042
+ "base": {
14043
+ "type": "string",
14044
+ "description": "The base whose column names it."
14045
+ },
14046
+ "view": {
14047
+ "type": "string",
14048
+ "description": "The view whose query names it (full name)."
14049
+ },
14050
+ "column": {
14051
+ "type": "string",
14052
+ "description": "The column of the table or base."
14053
+ },
14054
+ "key": {
14055
+ "type": "string",
14056
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
14057
+ },
14058
+ "from": {
14059
+ "type": "string",
14060
+ "description": "The name as written before."
14061
+ },
14062
+ "to": {
14063
+ "type": "string",
14064
+ "description": "The name written in its place."
14065
+ }
14066
+ },
14067
+ "required": [
14068
+ "key",
14069
+ "from",
14070
+ "to"
14071
+ ]
14072
+ },
14073
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
13015
14074
  }
13016
14075
  },
13017
14076
  "required": [
@@ -14032,6 +15091,50 @@ var OPERATIONS = [
14032
15091
  ]
14033
15092
  },
14034
15093
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
15094
+ },
15095
+ "schema_references": {
15096
+ "type": "array",
15097
+ "items": {
15098
+ "title": "SchemaReference",
15099
+ "type": "object",
15100
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
15101
+ "properties": {
15102
+ "table": {
15103
+ "type": "string",
15104
+ "description": "The table whose column names it (full name)."
15105
+ },
15106
+ "base": {
15107
+ "type": "string",
15108
+ "description": "The base whose column names it."
15109
+ },
15110
+ "view": {
15111
+ "type": "string",
15112
+ "description": "The view whose query names it (full name)."
15113
+ },
15114
+ "column": {
15115
+ "type": "string",
15116
+ "description": "The column of the table or base."
15117
+ },
15118
+ "key": {
15119
+ "type": "string",
15120
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
15121
+ },
15122
+ "from": {
15123
+ "type": "string",
15124
+ "description": "The name as written before."
15125
+ },
15126
+ "to": {
15127
+ "type": "string",
15128
+ "description": "The name written in its place."
15129
+ }
15130
+ },
15131
+ "required": [
15132
+ "key",
15133
+ "from",
15134
+ "to"
15135
+ ]
15136
+ },
15137
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
14035
15138
  }
14036
15139
  },
14037
15140
  "required": [
@@ -14434,6 +15537,50 @@ var OPERATIONS = [
14434
15537
  ]
14435
15538
  },
14436
15539
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
15540
+ },
15541
+ "schema_references": {
15542
+ "type": "array",
15543
+ "items": {
15544
+ "title": "SchemaReference",
15545
+ "type": "object",
15546
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
15547
+ "properties": {
15548
+ "table": {
15549
+ "type": "string",
15550
+ "description": "The table whose column names it (full name)."
15551
+ },
15552
+ "base": {
15553
+ "type": "string",
15554
+ "description": "The base whose column names it."
15555
+ },
15556
+ "view": {
15557
+ "type": "string",
15558
+ "description": "The view whose query names it (full name)."
15559
+ },
15560
+ "column": {
15561
+ "type": "string",
15562
+ "description": "The column of the table or base."
15563
+ },
15564
+ "key": {
15565
+ "type": "string",
15566
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
15567
+ },
15568
+ "from": {
15569
+ "type": "string",
15570
+ "description": "The name as written before."
15571
+ },
15572
+ "to": {
15573
+ "type": "string",
15574
+ "description": "The name written in its place."
15575
+ }
15576
+ },
15577
+ "required": [
15578
+ "key",
15579
+ "from",
15580
+ "to"
15581
+ ]
15582
+ },
15583
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
14437
15584
  }
14438
15585
  },
14439
15586
  "required": [
@@ -14903,6 +16050,50 @@ var OPERATIONS = [
14903
16050
  ]
14904
16051
  },
14905
16052
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
16053
+ },
16054
+ "schema_references": {
16055
+ "type": "array",
16056
+ "items": {
16057
+ "title": "SchemaReference",
16058
+ "type": "object",
16059
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
16060
+ "properties": {
16061
+ "table": {
16062
+ "type": "string",
16063
+ "description": "The table whose column names it (full name)."
16064
+ },
16065
+ "base": {
16066
+ "type": "string",
16067
+ "description": "The base whose column names it."
16068
+ },
16069
+ "view": {
16070
+ "type": "string",
16071
+ "description": "The view whose query names it (full name)."
16072
+ },
16073
+ "column": {
16074
+ "type": "string",
16075
+ "description": "The column of the table or base."
16076
+ },
16077
+ "key": {
16078
+ "type": "string",
16079
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
16080
+ },
16081
+ "from": {
16082
+ "type": "string",
16083
+ "description": "The name as written before."
16084
+ },
16085
+ "to": {
16086
+ "type": "string",
16087
+ "description": "The name written in its place."
16088
+ }
16089
+ },
16090
+ "required": [
16091
+ "key",
16092
+ "from",
16093
+ "to"
16094
+ ]
16095
+ },
16096
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
14906
16097
  }
14907
16098
  },
14908
16099
  "required": [
@@ -15301,6 +16492,50 @@ var OPERATIONS = [
15301
16492
  ]
15302
16493
  },
15303
16494
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
16495
+ },
16496
+ "schema_references": {
16497
+ "type": "array",
16498
+ "items": {
16499
+ "title": "SchemaReference",
16500
+ "type": "object",
16501
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
16502
+ "properties": {
16503
+ "table": {
16504
+ "type": "string",
16505
+ "description": "The table whose column names it (full name)."
16506
+ },
16507
+ "base": {
16508
+ "type": "string",
16509
+ "description": "The base whose column names it."
16510
+ },
16511
+ "view": {
16512
+ "type": "string",
16513
+ "description": "The view whose query names it (full name)."
16514
+ },
16515
+ "column": {
16516
+ "type": "string",
16517
+ "description": "The column of the table or base."
16518
+ },
16519
+ "key": {
16520
+ "type": "string",
16521
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
16522
+ },
16523
+ "from": {
16524
+ "type": "string",
16525
+ "description": "The name as written before."
16526
+ },
16527
+ "to": {
16528
+ "type": "string",
16529
+ "description": "The name written in its place."
16530
+ }
16531
+ },
16532
+ "required": [
16533
+ "key",
16534
+ "from",
16535
+ "to"
16536
+ ]
16537
+ },
16538
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
15304
16539
  }
15305
16540
  },
15306
16541
  "required": [
@@ -15730,6 +16965,50 @@ var OPERATIONS = [
15730
16965
  ]
15731
16966
  },
15732
16967
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
16968
+ },
16969
+ "schema_references": {
16970
+ "type": "array",
16971
+ "items": {
16972
+ "title": "SchemaReference",
16973
+ "type": "object",
16974
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
16975
+ "properties": {
16976
+ "table": {
16977
+ "type": "string",
16978
+ "description": "The table whose column names it (full name)."
16979
+ },
16980
+ "base": {
16981
+ "type": "string",
16982
+ "description": "The base whose column names it."
16983
+ },
16984
+ "view": {
16985
+ "type": "string",
16986
+ "description": "The view whose query names it (full name)."
16987
+ },
16988
+ "column": {
16989
+ "type": "string",
16990
+ "description": "The column of the table or base."
16991
+ },
16992
+ "key": {
16993
+ "type": "string",
16994
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
16995
+ },
16996
+ "from": {
16997
+ "type": "string",
16998
+ "description": "The name as written before."
16999
+ },
17000
+ "to": {
17001
+ "type": "string",
17002
+ "description": "The name written in its place."
17003
+ }
17004
+ },
17005
+ "required": [
17006
+ "key",
17007
+ "from",
17008
+ "to"
17009
+ ]
17010
+ },
17011
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
15733
17012
  }
15734
17013
  },
15735
17014
  "required": [
@@ -16146,6 +17425,50 @@ var OPERATIONS = [
16146
17425
  ]
16147
17426
  },
16148
17427
  "description": "Mentions left as text because the engine is not sure which note they name. Present when there is one: read the candidates and the context, then link the right one with update_row and autolink: false, or leave the text."
17428
+ },
17429
+ "schema_references": {
17430
+ "type": "array",
17431
+ "items": {
17432
+ "title": "SchemaReference",
17433
+ "type": "object",
17434
+ "description": "A name of the moved table in another definition, rewritten to the new name.",
17435
+ "properties": {
17436
+ "table": {
17437
+ "type": "string",
17438
+ "description": "The table whose column names it (full name)."
17439
+ },
17440
+ "base": {
17441
+ "type": "string",
17442
+ "description": "The base whose column names it."
17443
+ },
17444
+ "view": {
17445
+ "type": "string",
17446
+ "description": "The view whose query names it (full name)."
17447
+ },
17448
+ "column": {
17449
+ "type": "string",
17450
+ "description": "The column of the table or base."
17451
+ },
17452
+ "key": {
17453
+ "type": "string",
17454
+ "description": "Where the name is: ref or vocabulary of the column, or table, union[N].table or join.table of the view's query."
17455
+ },
17456
+ "from": {
17457
+ "type": "string",
17458
+ "description": "The name as written before."
17459
+ },
17460
+ "to": {
17461
+ "type": "string",
17462
+ "description": "The name written in its place."
17463
+ }
17464
+ },
17465
+ "required": [
17466
+ "key",
17467
+ "from",
17468
+ "to"
17469
+ ]
17470
+ },
17471
+ "description": "alter_table that moves or renames a table: the references to it in other definitions that it rewrites (on a dry run, would rewrite): the ref and vocabulary of the columns of other tables and of bases, and the tables the views' queries read. Present when there is one."
16149
17472
  }
16150
17473
  },
16151
17474
  "required": [
@@ -16652,6 +17975,7 @@ var OPERATION_KIND = {
16652
17975
  list_folder: "queries",
16653
17976
  search_notes: "queries",
16654
17977
  semantic_search: "queries",
17978
+ search: "queries",
16655
17979
  graph_neighbors: "queries",
16656
17980
  graph_traverse: "queries",
16657
17981
  graph_path: "queries",