@weave-kit/engine 1.5.0 → 1.7.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 (101) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/adapters/auth/index.d.ts +4 -0
  3. package/dist/adapters/auth/index.d.ts.map +1 -1
  4. package/dist/adapters/auth/index.js +2 -0
  5. package/dist/adapters/auth/index.js.map +1 -1
  6. package/dist/adapters/auth/oauth-metadata.d.ts +23 -0
  7. package/dist/adapters/auth/oauth-metadata.d.ts.map +1 -0
  8. package/dist/adapters/auth/oauth-metadata.js +26 -0
  9. package/dist/adapters/auth/oauth-metadata.js.map +1 -0
  10. package/dist/adapters/auth/oidc.d.ts +49 -0
  11. package/dist/adapters/auth/oidc.d.ts.map +1 -0
  12. package/dist/adapters/auth/oidc.js +92 -0
  13. package/dist/adapters/auth/oidc.js.map +1 -0
  14. package/dist/adapters/auth/source.d.ts +3 -2
  15. package/dist/adapters/auth/source.d.ts.map +1 -1
  16. package/dist/adapters/auth/source.js.map +1 -1
  17. package/dist/adapters/auth/verify.d.ts +7 -5
  18. package/dist/adapters/auth/verify.d.ts.map +1 -1
  19. package/dist/adapters/mcp/http.d.ts +3 -0
  20. package/dist/adapters/mcp/http.d.ts.map +1 -1
  21. package/dist/adapters/mcp/http.js +10 -1
  22. package/dist/adapters/mcp/http.js.map +1 -1
  23. package/dist/adapters/mcp/index.d.ts +3 -1
  24. package/dist/adapters/mcp/index.d.ts.map +1 -1
  25. package/dist/adapters/mcp/index.js +2 -1
  26. package/dist/adapters/mcp/index.js.map +1 -1
  27. package/dist/adapters/rest/errorHandler.d.ts +6 -2
  28. package/dist/adapters/rest/errorHandler.d.ts.map +1 -1
  29. package/dist/adapters/rest/errorHandler.js +5 -2
  30. package/dist/adapters/rest/errorHandler.js.map +1 -1
  31. package/dist/cli/commands/deploy.d.ts.map +1 -1
  32. package/dist/cli/commands/deploy.js +5 -4
  33. package/dist/cli/commands/deploy.js.map +1 -1
  34. package/dist/cli/commands/dev.js +4 -4
  35. package/dist/cli/commands/dev.js.map +1 -1
  36. package/dist/cli/commands/doctor.d.ts.map +1 -1
  37. package/dist/cli/commands/doctor.js +7 -3
  38. package/dist/cli/commands/doctor.js.map +1 -1
  39. package/dist/cli/commands/migrate.d.ts.map +1 -1
  40. package/dist/cli/commands/migrate.js +3 -2
  41. package/dist/cli/commands/migrate.js.map +1 -1
  42. package/dist/cli/commands/workflow-switch.js +2 -2
  43. package/dist/cli/commands/workflow-switch.js.map +1 -1
  44. package/dist/core/storage/diff.d.ts +4 -2
  45. package/dist/core/storage/diff.d.ts.map +1 -1
  46. package/dist/core/storage/diff.js +14 -12
  47. package/dist/core/storage/diff.js.map +1 -1
  48. package/dist/core/storage/index.d.ts +3 -1
  49. package/dist/core/storage/index.d.ts.map +1 -1
  50. package/dist/core/storage/index.js +2 -1
  51. package/dist/core/storage/index.js.map +1 -1
  52. package/dist/core/storage/inspect.d.ts +6 -0
  53. package/dist/core/storage/inspect.d.ts.map +1 -1
  54. package/dist/core/storage/inspect.js +19 -18
  55. package/dist/core/storage/inspect.js.map +1 -1
  56. package/dist/core/storage/link-table.d.ts +3 -2
  57. package/dist/core/storage/link-table.d.ts.map +1 -1
  58. package/dist/core/storage/link-table.js +5 -4
  59. package/dist/core/storage/link-table.js.map +1 -1
  60. package/dist/core/storage/meta.d.ts +3 -2
  61. package/dist/core/storage/meta.d.ts.map +1 -1
  62. package/dist/core/storage/meta.js +5 -4
  63. package/dist/core/storage/meta.js.map +1 -1
  64. package/dist/core/storage/migrate.d.ts +8 -0
  65. package/dist/core/storage/migrate.d.ts.map +1 -1
  66. package/dist/core/storage/migrate.js +39 -27
  67. package/dist/core/storage/migrate.js.map +1 -1
  68. package/dist/core/storage/object-rls.d.ts +2 -0
  69. package/dist/core/storage/object-rls.d.ts.map +1 -1
  70. package/dist/core/storage/object-rls.js +4 -3
  71. package/dist/core/storage/object-rls.js.map +1 -1
  72. package/dist/core/storage/pool.d.ts +7 -0
  73. package/dist/core/storage/pool.d.ts.map +1 -1
  74. package/dist/core/storage/pool.js +9 -0
  75. package/dist/core/storage/pool.js.map +1 -1
  76. package/dist/core/storage/record-meta.d.ts +2 -1
  77. package/dist/core/storage/record-meta.d.ts.map +1 -1
  78. package/dist/core/storage/record-meta.js +3 -1
  79. package/dist/core/storage/record-meta.js.map +1 -1
  80. package/dist/core/storage/schema-scope.d.ts +33 -0
  81. package/dist/core/storage/schema-scope.d.ts.map +1 -0
  82. package/dist/core/storage/schema-scope.js +45 -0
  83. package/dist/core/storage/schema-scope.js.map +1 -0
  84. package/dist/core/storage/system-tables.d.ts +3 -2
  85. package/dist/core/storage/system-tables.d.ts.map +1 -1
  86. package/dist/core/storage/system-tables.js +7 -4
  87. package/dist/core/storage/system-tables.js.map +1 -1
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +3 -2
  90. package/dist/index.js.map +1 -1
  91. package/dist/runtime/engine.d.ts +19 -4
  92. package/dist/runtime/engine.d.ts.map +1 -1
  93. package/dist/runtime/engine.js +19 -9
  94. package/dist/runtime/engine.js.map +1 -1
  95. package/dist/runtime/git/sync.d.ts +2 -0
  96. package/dist/runtime/git/sync.d.ts.map +1 -1
  97. package/dist/runtime/git/sync.js +1 -0
  98. package/dist/runtime/git/sync.js.map +1 -1
  99. package/dist/version.d.ts +1 -1
  100. package/dist/version.js +1 -1
  101. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../../src/core/storage/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE/B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,yEAAyE;IACzE,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,mGAAmG;IACnG,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC/C,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,GAAG,EAAE,QAAQ,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oFAAoF;IACpF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAWD,wEAAwE;AACxE,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAmJ/G"}
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../../src/core/storage/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE/B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,yEAAyE;IACzE,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,mGAAmG;IACnG,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC/C,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,EAAE,EAAE,MAAM,EAAE,CAAC;IACb,GAAG,EAAE,QAAQ,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oFAAoF;IACpF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,+DAA+D;IAC/D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAWD,wEAAwE;AACxE,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CA2J/G"}
@@ -9,10 +9,11 @@ const FK_DELETE_ACTIONS = {
9
9
  /** read the current schema of every table in the connection's schema */
10
10
  export async function inspectSchema(pool, options = {}) {
11
11
  const tables = new Map();
12
+ const schemaParam = options.schema ?? null;
12
13
  const cols = await pool.query(`SELECT table_name, column_name, data_type, is_nullable, column_default,
13
14
  udt_name, numeric_precision, numeric_scale, character_maximum_length
14
15
  FROM information_schema.columns
15
- WHERE table_schema = current_schema()`);
16
+ WHERE table_schema = COALESCE($1::text, current_schema())`, [schemaParam]);
16
17
  for (const row of cols.rows) {
17
18
  const t = tables.get(row.table_name) ?? {
18
19
  name: row.table_name,
@@ -41,8 +42,8 @@ export async function inspectSchema(pool, options = {}) {
41
42
  FROM information_schema.table_constraints tc
42
43
  JOIN information_schema.key_column_usage kcu
43
44
  ON tc.constraint_name = kcu.constraint_name AND tc.constraint_schema = kcu.constraint_schema
44
- WHERE tc.constraint_type = 'PRIMARY KEY' AND tc.table_schema = current_schema()
45
- ORDER BY tc.table_name, kcu.ordinal_position`);
45
+ WHERE tc.constraint_type = 'PRIMARY KEY' AND tc.table_schema = COALESCE($1::text, current_schema())
46
+ ORDER BY tc.table_name, kcu.ordinal_position`, [schemaParam]);
46
47
  for (const row of pkRows.rows) {
47
48
  tables.get(row.table_name)?.pk.push(row.column_name);
48
49
  }
@@ -59,8 +60,8 @@ export async function inspectSchema(pool, options = {}) {
59
60
  JOIN pg_attribute a ON a.attrelid = con.conrelid AND a.attnum = k.attnum
60
61
  JOIN unnest(con.confkey) WITH ORDINALITY AS fk(attnum, ord) ON fk.ord = k.ord
61
62
  JOIN pg_attribute fa ON fa.attrelid = con.confrelid AND fa.attnum = fk.attnum
62
- WHERE con.contype = 'f' AND n.nspname = current_schema()
63
- GROUP BY c.relname, rc.relname, con.conname, con.confdeltype`);
63
+ WHERE con.contype = 'f' AND n.nspname = COALESCE($1::text, current_schema())
64
+ GROUP BY c.relname, rc.relname, con.conname, con.confdeltype`, [schemaParam]);
64
65
  for (const row of fkRows.rows) {
65
66
  tables.get(row.table_name)?.fks.push({
66
67
  columns: row.columns,
@@ -69,7 +70,7 @@ export async function inspectSchema(pool, options = {}) {
69
70
  onDelete: FK_DELETE_ACTIONS[row.confdeltype] ?? 'restrict',
70
71
  });
71
72
  }
72
- const idxRows = await pool.query(`SELECT tablename, indexname FROM pg_indexes WHERE schemaname = current_schema()`);
73
+ const idxRows = await pool.query(`SELECT tablename, indexname FROM pg_indexes WHERE schemaname = COALESCE($1::text, current_schema())`, [schemaParam]);
73
74
  for (const row of idxRows.rows) {
74
75
  tables.get(row.tablename)?.indexNames.push(row.indexname);
75
76
  }
@@ -77,7 +78,7 @@ export async function inspectSchema(pool, options = {}) {
77
78
  const rlsRows = await pool.query(`SELECT c.relname, c.relrowsecurity, r.rolname AS owner
78
79
  FROM pg_class c
79
80
  JOIN pg_roles r ON c.relowner = r.oid
80
- WHERE c.relkind = 'r' AND c.relnamespace = current_schema()::regnamespace`);
81
+ WHERE c.relkind = 'r' AND c.relnamespace = to_regnamespace(COALESCE($1::text, current_schema()))`, [schemaParam]);
81
82
  for (const row of rlsRows.rows) {
82
83
  const t = tables.get(row.relname);
83
84
  if (t !== undefined) {
@@ -89,7 +90,7 @@ export async function inspectSchema(pool, options = {}) {
89
90
  FROM pg_policy p
90
91
  JOIN pg_class c ON c.oid = p.polrelid
91
92
  LEFT JOIN pg_description d ON d.objoid = p.oid AND d.classoid = 'pg_policy'::regclass
92
- WHERE c.relnamespace = current_schema()::regnamespace`);
93
+ WHERE c.relnamespace = to_regnamespace(COALESCE($1::text, current_schema()))`, [schemaParam]);
93
94
  for (const row of policyRows.rows) {
94
95
  const t = tables.get(row.tablename);
95
96
  if (t !== undefined) {
@@ -104,7 +105,7 @@ export async function inspectSchema(pool, options = {}) {
104
105
  JOIN pg_namespace n ON c.relnamespace = n.oid
105
106
  CROSS JOIN LATERAL aclexplode(COALESCE(c.relacl, acldefault('r', c.relowner))) acl
106
107
  JOIN pg_roles r ON r.oid = acl.grantee
107
- WHERE n.nspname = current_schema()`);
108
+ WHERE n.nspname = COALESCE($1::text, current_schema())`, [schemaParam]);
108
109
  for (const row of grantRows.rows) {
109
110
  const t = tables.get(row.table_name);
110
111
  if (t === undefined)
@@ -114,7 +115,7 @@ export async function inspectSchema(pool, options = {}) {
114
115
  (t.selectGrantedTo ??= []).push(row.role);
115
116
  }
116
117
  if (options.detail === true) {
117
- await loadDetail(pool, tables);
118
+ await loadDetail(pool, tables, schemaParam);
118
119
  }
119
120
  return tables;
120
121
  }
@@ -123,15 +124,15 @@ export async function inspectSchema(pool, options = {}) {
123
124
  * unique constraints, FK on-delete actions). Runs only when `detail` is set so
124
125
  * `migrate`/drift checks stay query-lean.
125
126
  */
126
- async function loadDetail(pool, tables) {
127
+ async function loadDetail(pool, tables, schemaParam) {
127
128
  const enumRows = await pool.query(`SELECT c.relname AS table_name, a.attname AS column_name, e.enumlabel AS label
128
129
  FROM pg_attribute a
129
130
  JOIN pg_class c ON a.attrelid = c.oid
130
131
  JOIN pg_namespace n ON c.relnamespace = n.oid
131
132
  JOIN pg_type t ON a.atttypid = t.oid
132
133
  JOIN pg_enum e ON e.enumtypid = t.oid
133
- WHERE n.nspname = current_schema() AND a.attnum > 0 AND NOT a.attisdropped
134
- ORDER BY c.relname, a.attnum, e.enumsortorder`);
134
+ WHERE n.nspname = COALESCE($1::text, current_schema()) AND a.attnum > 0 AND NOT a.attisdropped
135
+ ORDER BY c.relname, a.attnum, e.enumsortorder`, [schemaParam]);
135
136
  for (const row of enumRows.rows) {
136
137
  const col = tables.get(row.table_name)?.columns.find((c) => c.name === row.column_name);
137
138
  if (col !== undefined)
@@ -145,8 +146,8 @@ async function loadDetail(pool, tables) {
145
146
  JOIN pg_type at ON a.atttypid = at.oid
146
147
  JOIN pg_type et ON at.typelem = et.oid
147
148
  JOIN pg_enum e ON e.enumtypid = et.oid
148
- WHERE n.nspname = current_schema() AND a.attnum > 0 AND NOT a.attisdropped
149
- ORDER BY c.relname, a.attnum, e.enumsortorder`);
149
+ WHERE n.nspname = COALESCE($1::text, current_schema()) AND a.attnum > 0 AND NOT a.attisdropped
150
+ ORDER BY c.relname, a.attnum, e.enumsortorder`, [schemaParam]);
150
151
  for (const row of arrayEnumRows.rows) {
151
152
  const col = tables.get(row.table_name)?.columns.find((c) => c.name === row.column_name);
152
153
  if (col === undefined)
@@ -157,7 +158,7 @@ async function loadDetail(pool, tables) {
157
158
  const tableComments = await pool.query(`SELECT c.relname AS table_name, obj_description(c.oid, 'pg_class') AS comment
158
159
  FROM pg_class c
159
160
  JOIN pg_namespace n ON c.relnamespace = n.oid
160
- WHERE n.nspname = current_schema() AND c.relkind = 'r'`);
161
+ WHERE n.nspname = COALESCE($1::text, current_schema()) AND c.relkind = 'r'`, [schemaParam]);
161
162
  for (const row of tableComments.rows) {
162
163
  const t = tables.get(row.table_name);
163
164
  if (t !== undefined && row.comment !== null)
@@ -167,7 +168,7 @@ async function loadDetail(pool, tables) {
167
168
  FROM pg_class c
168
169
  JOIN pg_namespace n ON c.relnamespace = n.oid
169
170
  JOIN pg_attribute a ON a.attrelid = c.oid AND a.attnum > 0 AND NOT a.attisdropped
170
- WHERE n.nspname = current_schema() AND c.relkind = 'r'`);
171
+ WHERE n.nspname = COALESCE($1::text, current_schema()) AND c.relkind = 'r'`, [schemaParam]);
171
172
  for (const row of columnComments.rows) {
172
173
  const col = tables.get(row.table_name)?.columns.find((c) => c.name === row.column_name);
173
174
  if (col !== undefined && row.comment !== null)
@@ -178,7 +179,7 @@ async function loadDetail(pool, tables) {
178
179
  JOIN pg_class c ON i.indrelid = c.oid
179
180
  JOIN pg_namespace n ON c.relnamespace = n.oid
180
181
  JOIN pg_attribute a ON a.attrelid = c.oid AND a.attnum = ANY(i.indkey)
181
- WHERE n.nspname = current_schema() AND i.indisunique AND NOT i.indisprimary AND i.indnkeyatts = 1`);
182
+ WHERE n.nspname = COALESCE($1::text, current_schema()) AND i.indisunique AND NOT i.indisprimary AND i.indnkeyatts = 1`, [schemaParam]);
182
183
  for (const row of uniqueRows.rows) {
183
184
  const t = tables.get(row.table_name);
184
185
  if (t !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/core/storage/inspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/core/storage/inspect.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { FIELD_TYPES, type FieldTypeRegistry, type ObjectDefinition } from '../types/index.js';
2
2
  import type { ExpectedTable } from './diff.js';
3
+ import type { SchemaScope } from './schema-scope.js';
3
4
  /**
4
5
  * Engine-owned many-to-many **link tables** backing `multiRelation` fields.
5
6
  *
@@ -41,7 +42,7 @@ export declare function multiRelationsOf(owner: ObjectDefinition, defs: Readonly
41
42
  /** the expected (DDL) shape of one multiRelation link table */
42
43
  export declare function buildLinkTable(owner: ObjectDefinition, field: Extract<ObjectDefinition['fields'][number], {
43
44
  type: typeof FIELD_TYPES.MULTI_RELATION;
44
- }>, target: ObjectDefinition, registry?: FieldTypeRegistry): ExpectedTable;
45
+ }>, target: ObjectDefinition, registry?: FieldTypeRegistry, scope?: SchemaScope): ExpectedTable;
45
46
  /** every link table implied by the given object definitions, in stable order */
46
- export declare function buildLinkTables(defs: ReadonlyMap<string, ObjectDefinition>, registry?: FieldTypeRegistry): ExpectedTable[];
47
+ export declare function buildLinkTables(defs: ReadonlyMap<string, ObjectDefinition>, registry?: FieldTypeRegistry, scope?: SchemaScope): ExpectedTable[];
47
48
  //# sourceMappingURL=link-table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"link-table.d.ts","sourceRoot":"","sources":["../../../src/core/storage/link-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAEX,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAA6C,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1F;;;;;;;;;;;;GAYG;AAEH,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,qEAAqE;AACrE,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,4EAA4E;AAC5E,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,WAAW,CAAC,cAAc,CAAA;KAAE,CAAC,CAAC;IAChG,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAC1C,qBAAqB,EAAE,CAQzB;AAED,+DAA+D;AAC/D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,gBAAgB,EACvB,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;IAAE,IAAI,EAAE,OAAO,WAAW,CAAC,cAAc,CAAA;CAAE,CAAC,EAC/F,MAAM,EAAE,gBAAgB,EACxB,QAAQ,GAAE,iBAA+C,GACxD,aAAa,CAmDf;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAC3C,QAAQ,GAAE,iBAA+C,GACxD,aAAa,EAAE,CAQjB"}
1
+ {"version":3,"file":"link-table.d.ts","sourceRoot":"","sources":["../../../src/core/storage/link-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAEX,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAA6C,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;;;;;;GAYG;AAEH,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAElD,qEAAqE;AACrE,eAAO,MAAM,eAAe,QAAQ,CAAC;AAErC,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED,4EAA4E;AAC5E,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,WAAW,CAAC,cAAc,CAAA;KAAE,CAAC,CAAC;IAChG,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAC1C,qBAAqB,EAAE,CAQzB;AAED,+DAA+D;AAC/D,wBAAgB,cAAc,CAC5B,KAAK,EAAE,gBAAgB,EACvB,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;IAAE,IAAI,EAAE,OAAO,WAAW,CAAC,cAAc,CAAA;CAAE,CAAC,EAC/F,MAAM,EAAE,gBAAgB,EACxB,QAAQ,GAAE,iBAA+C,EACzD,KAAK,CAAC,EAAE,WAAW,GAClB,aAAa,CAoDf;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAC3C,QAAQ,GAAE,iBAA+C,EACzD,KAAK,CAAC,EAAE,WAAW,GAClB,aAAa,EAAE,CAQjB"}
@@ -50,8 +50,9 @@ export function multiRelationsOf(owner, defs) {
50
50
  return out;
51
51
  }
52
52
  /** the expected (DDL) shape of one multiRelation link table */
53
- export function buildLinkTable(owner, field, target, registry = DEFAULT_FIELD_TYPE_REGISTRY) {
53
+ export function buildLinkTable(owner, field, target, registry = DEFAULT_FIELD_TYPE_REGISTRY, scope) {
54
54
  const name = linkTableName(owner.name, field.name);
55
+ const schema = scope?.systemSchema;
55
56
  const ownerPks = primaryFieldsOf(owner);
56
57
  const targetPks = primaryFieldsOf(target);
57
58
  const ownerCols = ownerPks.map((pk) => ({ pk, column: linkOwnerColumn(pk.name) }));
@@ -95,14 +96,14 @@ export function buildLinkTable(owner, field, target, registry = DEFAULT_FIELD_TY
95
96
  const indexes = [
96
97
  { name: `${name}_target_idx`, method: 'btree', columns: targetCols.map((c) => c.column) },
97
98
  ];
98
- return { name, columns, fks, indexes, uniques: [] };
99
+ return { name, ...(schema === undefined ? {} : { schema }), columns, fks, indexes, uniques: [] };
99
100
  }
100
101
  /** every link table implied by the given object definitions, in stable order */
101
- export function buildLinkTables(defs, registry = DEFAULT_FIELD_TYPE_REGISTRY) {
102
+ export function buildLinkTables(defs, registry = DEFAULT_FIELD_TYPE_REGISTRY, scope) {
102
103
  const tables = [];
103
104
  for (const owner of defs.values()) {
104
105
  for (const { field, target } of multiRelationsOf(owner, defs)) {
105
- tables.push(buildLinkTable(owner, field, target, registry));
106
+ tables.push(buildLinkTable(owner, field, target, registry, scope));
106
107
  }
107
108
  }
108
109
  return tables;
@@ -1 +1 @@
1
- {"version":3,"file":"link-table.js","sourceRoot":"","sources":["../../../src/core/storage/link-table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"link-table.js","sourceRoot":"","sources":["../../../src/core/storage/link-table.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import type { SqlQueryable } from './queryable.js';
2
+ import { type SchemaScope } from './schema-scope.js';
2
3
  /**
3
4
  * Upsert a meta record (e.g. `schema.applied.<object>` -> applied_at).
4
5
  * The table is created by `weave migrate` — the runtime never runs DDL.
5
6
  * Takes any {@link SqlQueryable} so it can run inside the deploy transaction.
6
7
  */
7
- export declare function setMeta(db: SqlQueryable, key: string, value: string): Promise<void>;
8
+ export declare function setMeta(db: SqlQueryable, key: string, value: string, scope?: SchemaScope): Promise<void>;
8
9
  /** read a meta value (null when the key is absent) */
9
- export declare function getMeta(db: SqlQueryable, key: string): Promise<string | null>;
10
+ export declare function getMeta(db: SqlQueryable, key: string, scope?: SchemaScope): Promise<string | null>;
10
11
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/core/storage/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAInD;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMzF;AAED,sDAAsD;AACtD,wBAAsB,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGnF"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/core/storage/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAInE;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAM9G;AAED,sDAAsD;AACtD,wBAAsB,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxG"}
@@ -1,16 +1,17 @@
1
+ import { qualifyTable } from './schema-scope.js';
1
2
  const META_TABLE = 'weavekit_meta';
2
3
  /**
3
4
  * Upsert a meta record (e.g. `schema.applied.<object>` -> applied_at).
4
5
  * The table is created by `weave migrate` — the runtime never runs DDL.
5
6
  * Takes any {@link SqlQueryable} so it can run inside the deploy transaction.
6
7
  */
7
- export async function setMeta(db, key, value) {
8
- await db.query(`INSERT INTO ${META_TABLE} (key, value) VALUES ($1, $2)
8
+ export async function setMeta(db, key, value, scope) {
9
+ await db.query(`INSERT INTO ${qualifyTable(META_TABLE, scope)} (key, value) VALUES ($1, $2)
9
10
  ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value`, [key, value]);
10
11
  }
11
12
  /** read a meta value (null when the key is absent) */
12
- export async function getMeta(db, key) {
13
- const res = await db.query(`SELECT value FROM ${META_TABLE} WHERE key = $1`, [key]);
13
+ export async function getMeta(db, key, scope) {
14
+ const res = await db.query(`SELECT value FROM ${qualifyTable(META_TABLE, scope)} WHERE key = $1`, [key]);
14
15
  return res.rows[0]?.value ?? null;
15
16
  }
16
17
  //# sourceMappingURL=meta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/core/storage/meta.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAG,eAAe,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,EAAgB,EAAE,GAAW,EAAE,KAAa;IACxE,MAAM,EAAE,CAAC,KAAK,CACZ,eAAe,UAAU;4DAC+B,EACxD,CAAC,GAAG,EAAE,KAAK,CAAC,CACb,CAAC;AACJ,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,EAAgB,EAAE,GAAW;IACzD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,UAAU,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,OAAQ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAmC,EAAE,KAAK,IAAI,IAAI,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/core/storage/meta.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAoB,MAAM,mBAAmB,CAAC;AAEnE,MAAM,UAAU,GAAG,eAAe,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,EAAgB,EAAE,GAAW,EAAE,KAAa,EAAE,KAAmB;IAC7F,MAAM,EAAE,CAAC,KAAK,CACZ,eAAe,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC;4DACU,EACxD,CAAC,GAAG,EAAE,KAAK,CAAC,CACb,CAAC;AACJ,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,EAAgB,EAAE,GAAW,EAAE,KAAmB;IAC9E,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzG,OAAQ,GAAG,CAAC,IAAI,CAAC,CAAC,CAAmC,EAAE,KAAK,IAAI,IAAI,CAAC;AACvE,CAAC"}
@@ -24,6 +24,14 @@ export interface MigrateOptions {
24
24
  objectRls?: {
25
25
  role: string;
26
26
  };
27
+ /**
28
+ * dedicated schema for the engine's own tables (`weavekit_*` system tables,
29
+ * `weavekit_record__<object>` side tables, `weavekit_m2m__*` link tables).
30
+ * Default undefined = create them in the connection's `current_schema()`
31
+ * (legacy). When set, `migrate` creates the schema and qualifies those tables;
32
+ * customer/identity object tables stay in the object schema.
33
+ */
34
+ systemSchema?: string;
27
35
  /**
28
36
  * Run additional writes in the SAME transaction as the DDL (after DDL +
29
37
  * `schema.applied.*` meta + workflow-definition registration, before COMMIT).
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/core/storage/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAsBrC,MAAM,WAAW,cAAc;IAC7B,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,sDAAsD;IACtD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAsHD;;;;;;;;;;;;GAYG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CA+J9G"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/core/storage/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAuBrC,MAAM,WAAW,cAAc;IAC7B,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,sDAAsD;IACtD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AA4HD;;;;;;;;;;;;GAYG;AACH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAsK9G"}
@@ -6,10 +6,11 @@ import { buildExpectedTable, diffAll, diffRls, diffTable } from './diff.js';
6
6
  import { inspectSchema } from './inspect.js';
7
7
  import { buildLinkTables } from './link-table.js';
8
8
  import { setMeta } from './meta.js';
9
- import { createPool } from './pool.js';
9
+ import { createPool, searchPathOptions } from './pool.js';
10
10
  import { buildRecordMetaTable } from './record-meta.js';
11
11
  import { sqlIdent, sqlLiteral } from './sql-literals.js';
12
12
  import { SYSTEM_TABLES, buildSystemTables, systemHardeningStatements } from './system-tables.js';
13
+ import { createSchemaScope, qualifyTable } from './schema-scope.js';
13
14
  import { isSafeRlsRole } from '../rbac/index.js';
14
15
  import { planObjectRls } from './object-rls.js';
15
16
  /**
@@ -95,18 +96,23 @@ async function provisionRlsRole(pool, role, warnings) {
95
96
  return true;
96
97
  }
97
98
  /** object-path RLS DDL (role provisioned first; skipped tables become warnings) */
98
- async function objectRlsStatements(pool, registry, actual, objectRls, warnings) {
99
+ async function objectRlsStatements(pool, registry, actual, objectRls, warnings, scope) {
99
100
  if (objectRls === undefined)
100
101
  return [];
101
102
  if (!(await provisionRlsRole(pool, objectRls.role, warnings)))
102
103
  return [];
103
104
  const { rows } = await pool.query('SELECT current_user AS u');
104
105
  const owner = String(rows[0].u);
105
- const plan = planObjectRls(registry, actual, objectRls.role, { owner });
106
+ const plan = planObjectRls(registry, actual, objectRls.role, { owner, scope });
106
107
  for (const name of plan.skipped) {
107
108
  warnings.push(`skip object RLS on "${name}": existing table needs "alter": true and ownership by ${owner}`);
108
109
  }
109
- return plan.statements;
110
+ const stmts = [...plan.statements];
111
+ // the RLS role must be able to resolve engine tables that live in the system schema
112
+ if (scope?.systemSchema !== undefined) {
113
+ stmts.unshift(`GRANT USAGE ON SCHEMA ${q(scope.systemSchema)} TO ${sqlIdent(objectRls.role)};`);
114
+ }
115
+ return stmts;
110
116
  }
111
117
  /**
112
118
  * True when `PUBLIC` still holds `TRUNCATE` on `table`, i.e. the append-only
@@ -140,10 +146,14 @@ export async function migrate(registry, options = {}) {
140
146
  throw new Error('DATABASE_URL is not set');
141
147
  const dryRun = options.dryRun ?? false;
142
148
  const warnings = [];
143
- const pool = createPool(url);
149
+ const scope = createSchemaScope(options.systemSchema);
150
+ const pool = createPool(url, searchPathOptions(scope.systemSchema));
144
151
  try {
145
152
  const defs = new Map([...systemObjects(), ...registry.list()].map((d) => [d.name, d]));
146
- const actual = await inspectSchema(pool);
153
+ const objectActual = await inspectSchema(pool);
154
+ const systemActual = scope.systemSchema === undefined ? objectActual : await inspectSchema(pool, { schema: scope.systemSchema });
155
+ // merged view for object-RLS planning (spans object + system tables)
156
+ const actual = systemActual === objectActual ? objectActual : new Map([...objectActual, ...systemActual]);
147
157
  if (options.rls !== undefined && !isSafeRlsRole(options.rls.role)) {
148
158
  throw new Error(`invalid RLS role name "${options.rls.role}"`);
149
159
  }
@@ -154,40 +164,40 @@ export async function migrate(registry, options = {}) {
154
164
  // that opted in via `alter: true` are diffed against their existing table
155
165
  // too (additive ALTER DDL only)
156
166
  const expected = [...defs.values()]
157
- .filter((d) => d.alter === true || actual.get(d.name) === undefined)
167
+ .filter((d) => d.alter === true || objectActual.get(d.name) === undefined)
158
168
  .map((d) => buildExpectedTable(d, defs, registry.fieldTypes));
159
- const statements = diffAll(expected, actual);
169
+ const statements = diffAll(expected, objectActual);
160
170
  // native enum types must exist before the tables that reference them
161
171
  const enumStatements = await buildEnumStatements(pool, defs, new Set(expected.map((t) => t.name)));
162
172
  // engine-owned per-object record metadata side tables: one per object (R1),
163
173
  // created idempotently for every object regardless of `alter`/ownership —
164
174
  // they never touch the customer's own table
165
- const metaTables = [...defs.keys()].map((name) => buildRecordMetaTable(name));
166
- const metaStatements = diffAll(metaTables, actual);
175
+ const metaTables = [...defs.keys()].map((name) => buildRecordMetaTable(name, scope));
176
+ const metaStatements = diffAll(metaTables, systemActual);
167
177
  // engine-owned many-to-many link tables for every `multiRelation` field:
168
178
  // one per (object, field), created idempotently regardless of `alter`.
169
- const linkTables = buildLinkTables(defs, registry.fieldTypes);
170
- const linkStatements = diffAll(linkTables, actual);
179
+ const linkTables = buildLinkTables(defs, registry.fieldTypes, scope);
180
+ const linkStatements = diffAll(linkTables, systemActual);
171
181
  // engine-owned system tables (metadata cache / seq / audit / approvals /
172
182
  // timers / counters) + their ACL hardening: provisioned here (and only
173
183
  // here) so the runtime never runs DDL and can be least-privileged.
174
184
  // one-time reshape of the legacy workflow timer table
175
185
  // (id/state/workflow_version -> record_key/node_id): engine-owned and
176
186
  // transient, so drop+recreate is safe (there are no users yet).
177
- const legacyTimers = actual.get(SYSTEM_TABLES.WORKFLOW_TIMERS);
187
+ const legacyTimers = systemActual.get(SYSTEM_TABLES.WORKFLOW_TIMERS);
178
188
  const dropLegacyTimers = legacyTimers !== undefined &&
179
189
  legacyTimers.columns.some((c) => c.name === 'state') &&
180
190
  !legacyTimers.columns.some((c) => c.name === 'record_key');
181
191
  if (dropLegacyTimers)
182
- actual.delete(SYSTEM_TABLES.WORKFLOW_TIMERS);
183
- const systemStatements = diffAll(buildSystemTables(), actual);
184
- const hardening = (await publicHasTruncate(pool, SYSTEM_TABLES.AUDIT)) ? systemHardeningStatements() : [];
192
+ systemActual.delete(SYSTEM_TABLES.WORKFLOW_TIMERS);
193
+ const systemStatements = diffAll(buildSystemTables(scope), systemActual);
194
+ const hardening = (await publicHasTruncate(pool, qualifyTable(SYSTEM_TABLES.AUDIT, scope))) ? systemHardeningStatements(scope) : [];
185
195
  // existing tables are read-only unless the object opted in (`alter: true`):
186
196
  // verify every declared field is a live column (prevents REST/MCP pointing
187
197
  // at ghost columns). With `alter: true`, missing fields become ADD COLUMN
188
198
  // instead of throwing.
189
199
  for (const def of defs.values()) {
190
- const actualTable = actual.get(def.name);
200
+ const actualTable = objectActual.get(def.name);
191
201
  if (actualTable === undefined)
192
202
  continue; // new object, handled above
193
203
  const cols = new Set(actualTable.columns.map((c) => c.name));
@@ -210,7 +220,7 @@ export async function migrate(registry, options = {}) {
210
220
  }
211
221
  }
212
222
  }
213
- const applied = expected.filter((t) => diffTable(t, actual.get(t.name)).length > 0).map((t) => t.name);
223
+ const applied = expected.filter((t) => diffTable(t, objectActual.get(t.name)).length > 0).map((t) => t.name);
214
224
  // row-level security for the restricted-SQL role: provision the role
215
225
  // (non-transactional) then diff the policy against the live RLS state.
216
226
  // New tables always; existing tables only under `alter` and when the
@@ -223,7 +233,7 @@ export async function migrate(registry, options = {}) {
223
233
  const { rows } = await pool.query('SELECT current_user AS u');
224
234
  const currentUser = String(rows[0].u);
225
235
  for (const def of registry.list()) {
226
- const actualTable = actual.get(def.name);
236
+ const actualTable = objectActual.get(def.name);
227
237
  const applies = actualTable === undefined || (def.alter === true && actualTable.owner === currentUser);
228
238
  if (!applies) {
229
239
  if (actualTable !== undefined) {
@@ -238,21 +248,23 @@ export async function migrate(registry, options = {}) {
238
248
  // ever granted, a second layer behind the sql-gate. The engine runs as
239
249
  // the owner and bypasses RLS, so its own reads are unaffected.
240
250
  for (const table of linkTables) {
241
- if (actual.get(table.name)?.rlsEnabled !== true) {
242
- rlsStatements.push(`ALTER TABLE ${q(table.name)} ENABLE ROW LEVEL SECURITY;`);
251
+ if (systemActual.get(table.name)?.rlsEnabled !== true) {
252
+ rlsStatements.push(`ALTER TABLE ${qualifyTable(table.name, scope)} ENABLE ROW LEVEL SECURITY;`);
243
253
  }
244
254
  }
245
255
  }
246
256
  }
257
+ const sysSchema = scope.systemSchema;
247
258
  const allStatements = [
259
+ ...(sysSchema === undefined ? [] : [`CREATE SCHEMA IF NOT EXISTS ${q(sysSchema)};`]),
248
260
  ...enumStatements,
249
- ...(dropLegacyTimers ? [`DROP TABLE ${q(SYSTEM_TABLES.WORKFLOW_TIMERS)};`] : []),
261
+ ...(dropLegacyTimers ? [`DROP TABLE ${qualifyTable(SYSTEM_TABLES.WORKFLOW_TIMERS, scope)};`] : []),
250
262
  ...statements,
251
263
  ...metaStatements,
252
264
  ...linkStatements,
253
265
  ...systemStatements,
254
266
  ...rlsStatements,
255
- ...(await objectRlsStatements(pool, registry, actual, options.objectRls, warnings)),
267
+ ...(await objectRlsStatements(pool, registry, actual, options.objectRls, warnings, scope)),
256
268
  ...hardening,
257
269
  ];
258
270
  // One transaction for DDL + `schema.applied.*` meta + workflow-definition
@@ -267,8 +279,8 @@ export async function migrate(registry, options = {}) {
267
279
  await applyStatementsOn(client, allStatements);
268
280
  const ts = new Date().toISOString();
269
281
  for (const name of applied)
270
- await setMeta(client, `schema.applied.${name}`, ts);
271
- await registerWorkflowDefinitions(client, defs);
282
+ await setMeta(client, `schema.applied.${name}`, ts, scope);
283
+ await registerWorkflowDefinitions(client, defs, scope);
272
284
  if (options.onCommit !== undefined)
273
285
  await options.onCommit(client);
274
286
  await client.query('COMMIT');
@@ -293,8 +305,8 @@ export async function migrate(registry, options = {}) {
293
305
  * `version_seq` is a monotonic display/switch ordinal. Never rewrites or drops
294
306
  * an existing row (append-only revision history for instance pinning).
295
307
  */
296
- async function registerWorkflowDefinitions(db, defs) {
297
- const table = q(SYSTEM_TABLES.WORKFLOW_DEFINITIONS);
308
+ async function registerWorkflowDefinitions(db, defs, scope) {
309
+ const table = qualifyTable(SYSTEM_TABLES.WORKFLOW_DEFINITIONS, scope);
298
310
  for (const def of defs.values()) {
299
311
  if (def.workflow === undefined || def.workflowHash === undefined)
300
312
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/core/storage/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/core/storage/migrate.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { ObjectRegistry } from '../object/index.js';
2
2
  import type { ActualTable } from './inspect.js';
3
+ import type { SchemaScope } from './schema-scope.js';
3
4
  export interface ObjectRlsPlan {
4
5
  statements: string[];
5
6
  /** objects whose existing table cannot take RLS (not opted into `alter`, or not owned by the migrating role) */
@@ -19,5 +20,6 @@ export interface ObjectRlsPlan {
19
20
  */
20
21
  export declare function planObjectRls(registry: ObjectRegistry, actual: ReadonlyMap<string, ActualTable>, role: string, options?: {
21
22
  owner?: string;
23
+ scope?: SchemaScope;
22
24
  }): ObjectRlsPlan;
23
25
  //# sourceMappingURL=object-rls.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"object-rls.d.ts","sourceRoot":"","sources":["../../../src/core/storage/object-rls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAOhD,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gHAAgH;IAChH,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,EACxC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,aAAa,CAuBf"}
1
+ {"version":3,"file":"object-rls.d.ts","sourceRoot":"","sources":["../../../src/core/storage/object-rls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKrD,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gHAAgH;IAChH,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,EACxC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,WAAW,CAAA;CAAO,GACpD,aAAa,CAwBf"}
@@ -20,6 +20,7 @@ const OBJECT_PRIVILEGES = ['SELECT', 'UPDATE', 'DELETE'];
20
20
  export function planObjectRls(registry, actual, role, options = {}) {
21
21
  const statements = [];
22
22
  const skipped = [];
23
+ const systemSchema = options.scope?.systemSchema;
23
24
  for (const def of registry.list()) {
24
25
  const table = actual.get(def.name);
25
26
  if (table !== undefined && options.owner !== undefined && !(def.alter === true && table.owner === options.owner)) {
@@ -28,7 +29,7 @@ export function planObjectRls(registry, actual, role, options = {}) {
28
29
  }
29
30
  statements.push(...diffObjectRls(def.name, table, role, buildObjectRlsPolicies(registry, def), OBJECT_PRIVILEGES));
30
31
  const meta = recordMetaTableName(def.name);
31
- statements.push(...diffGrants(meta, actual.get(meta), role, ['SELECT']));
32
+ statements.push(...diffGrants(meta, actual.get(meta), role, ['SELECT'], systemSchema));
32
33
  }
33
34
  for (const name of SYSTEM_OBJECT_NAMES) {
34
35
  statements.push(...diffGrants(name, actual.get(name), role, ['SELECT']));
@@ -36,8 +37,8 @@ export function planObjectRls(registry, actual, role, options = {}) {
36
37
  const defs = new Map([...systemObjects(), ...registry.list()].map((d) => [d.name, d]));
37
38
  // link rows are scoped by the target-visibility predicate the query carries
38
39
  const linkPolicy = [{ name: OBJECT_RLS_POLICIES.SELECT, command: 'SELECT', using: 'true' }];
39
- for (const link of buildLinkTables(defs, registry.fieldTypes)) {
40
- statements.push(...diffObjectRls(link.name, actual.get(link.name), role, linkPolicy, ['SELECT']));
40
+ for (const link of buildLinkTables(defs, registry.fieldTypes, options.scope)) {
41
+ statements.push(...diffObjectRls(link.name, actual.get(link.name), role, linkPolicy, ['SELECT'], systemSchema));
41
42
  }
42
43
  return { statements, skipped };
43
44
  }