@stardeck-customer-apps/compose 0.14.1 → 0.15.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.
- package/SKILL.md +16 -0
- package/dist/cli.js +709 -416
- package/dist/index.js +177 -154
- package/dist/index.mjs +177 -154
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1149,16 +1149,16 @@ var require_range = __commonJS({
|
|
|
1149
1149
|
};
|
|
1150
1150
|
var replaceTilde = (comp, options) => {
|
|
1151
1151
|
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
|
|
1152
|
-
const
|
|
1152
|
+
const z11 = options.includePrerelease ? "-0" : "";
|
|
1153
1153
|
return comp.replace(r, (_, M, m, p, pr) => {
|
|
1154
1154
|
debug("tilde", comp, _, M, m, p, pr);
|
|
1155
1155
|
let ret;
|
|
1156
1156
|
if (isX(M)) {
|
|
1157
1157
|
ret = "";
|
|
1158
1158
|
} else if (isX(m)) {
|
|
1159
|
-
ret = `>=${M}.0.0${
|
|
1159
|
+
ret = `>=${M}.0.0${z11} <${+M + 1}.0.0-0`;
|
|
1160
1160
|
} else if (isX(p)) {
|
|
1161
|
-
ret = `>=${M}.${m}.0${
|
|
1161
|
+
ret = `>=${M}.${m}.0${z11} <${M}.${+m + 1}.0-0`;
|
|
1162
1162
|
} else if (pr) {
|
|
1163
1163
|
debug("replaceTilde pr", pr);
|
|
1164
1164
|
ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
|
|
@@ -1175,19 +1175,19 @@ var require_range = __commonJS({
|
|
|
1175
1175
|
var replaceCaret = (comp, options) => {
|
|
1176
1176
|
debug("caret", comp, options);
|
|
1177
1177
|
const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
|
|
1178
|
-
const
|
|
1178
|
+
const z11 = options.includePrerelease ? "-0" : "";
|
|
1179
1179
|
return comp.replace(r, (_, M, m, p, pr) => {
|
|
1180
1180
|
debug("caret", comp, _, M, m, p, pr);
|
|
1181
1181
|
let ret;
|
|
1182
1182
|
if (isX(M)) {
|
|
1183
1183
|
ret = "";
|
|
1184
1184
|
} else if (isX(m)) {
|
|
1185
|
-
ret = `>=${M}.0.0${
|
|
1185
|
+
ret = `>=${M}.0.0${z11} <${+M + 1}.0.0-0`;
|
|
1186
1186
|
} else if (isX(p)) {
|
|
1187
1187
|
if (M === "0") {
|
|
1188
|
-
ret = `>=${M}.${m}.0${
|
|
1188
|
+
ret = `>=${M}.${m}.0${z11} <${M}.${+m + 1}.0-0`;
|
|
1189
1189
|
} else {
|
|
1190
|
-
ret = `>=${M}.${m}.0${
|
|
1190
|
+
ret = `>=${M}.${m}.0${z11} <${+M + 1}.0.0-0`;
|
|
1191
1191
|
}
|
|
1192
1192
|
} else if (pr) {
|
|
1193
1193
|
debug("replaceCaret pr", pr);
|
|
@@ -4036,6 +4036,24 @@ function analyzeClientSafeEntryImports(sourceText, fileName) {
|
|
|
4036
4036
|
return analyzeClientSafeEntryImportsWithTs(import_typescript3.default, sourceText, fileName);
|
|
4037
4037
|
}
|
|
4038
4038
|
|
|
4039
|
+
// ../../packages/lib/src/shared/ownership-record.ts
|
|
4040
|
+
var import_zod7 = require("zod");
|
|
4041
|
+
var OWNERSHIP_RECORD_VERSION = 1;
|
|
4042
|
+
var moduleList = import_zod7.z.array(import_zod7.z.string().refine(isValidModuleName, "not a Module name"));
|
|
4043
|
+
var ownershipRecordSchema = import_zod7.z.object({
|
|
4044
|
+
version: import_zod7.z.literal(OWNERSHIP_RECORD_VERSION),
|
|
4045
|
+
/** False once the app stopped all Stardeck updates: then every file is the app's. */
|
|
4046
|
+
stardeckUpdates: import_zod7.z.boolean(),
|
|
4047
|
+
/** projects.ejected_modules: updates stopped for these Modules, so their folders are the app's. */
|
|
4048
|
+
updatesStoppedModules: moduleList,
|
|
4049
|
+
/** projects.ui_ejected_modules: Customize UI, so their screens are the app's. */
|
|
4050
|
+
customizedUiModules: moduleList,
|
|
4051
|
+
/** projects.external_modules: installed from another app, so the app owns the copy. */
|
|
4052
|
+
externalModules: moduleList,
|
|
4053
|
+
/** projects.removed_modules names: uninstalled on purpose. */
|
|
4054
|
+
uninstalledModules: moduleList
|
|
4055
|
+
});
|
|
4056
|
+
|
|
4039
4057
|
// ../../packages/lib/src/shared/platform-owned-paths.ts
|
|
4040
4058
|
var APP_WEB_PREFIX = "apps/web/";
|
|
4041
4059
|
var BLUEPRINT_LINT_MARKER = `${APP_WEB_PREFIX}eslint-rules/module-boundaries.mjs`;
|
|
@@ -5990,14 +6008,14 @@ function rejectPseudoModuleEntries(entries, parentDir, label) {
|
|
|
5990
6008
|
}
|
|
5991
6009
|
|
|
5992
6010
|
// ../../packages/lib/src/shared/module-composition.ts
|
|
5993
|
-
var
|
|
5994
|
-
var creationSourceBlankSchema =
|
|
5995
|
-
type:
|
|
6011
|
+
var import_zod8 = require("zod");
|
|
6012
|
+
var creationSourceBlankSchema = import_zod8.z.object({
|
|
6013
|
+
type: import_zod8.z.literal("blank")
|
|
5996
6014
|
});
|
|
5997
|
-
var creationSourceBlueprintSchema =
|
|
5998
|
-
type:
|
|
6015
|
+
var creationSourceBlueprintSchema = import_zod8.z.object({
|
|
6016
|
+
type: import_zod8.z.literal("blueprint"),
|
|
5999
6017
|
/** Internal template/fork project id — keep template naming in identifiers. */
|
|
6000
|
-
blueprintProjectId:
|
|
6018
|
+
blueprintProjectId: import_zod8.z.string().uuid(),
|
|
6001
6019
|
/**
|
|
6002
6020
|
* `null`/absent means every feature Module: the platform stores that as the
|
|
6003
6021
|
* explicit list of feature Modules in the published Blueprint version the fork
|
|
@@ -6005,192 +6023,197 @@ var creationSourceBlueprintSchema = import_zod7.z.object({
|
|
|
6005
6023
|
* a custom app: no feature Module, Library Modules only (`resolvePlatformEnv`
|
|
6006
6024
|
* emits it as a set value naming no Module).
|
|
6007
6025
|
*/
|
|
6008
|
-
enabledModules:
|
|
6026
|
+
enabledModules: import_zod8.z.array(moduleNameSchema).max(100).nullable().optional(),
|
|
6027
|
+
/**
|
|
6028
|
+
* The kind of business (a preset id the published version defines). Its Modules are built
|
|
6029
|
+
* and `enabledModules` adds extras on top; for the general kind `enabledModules` is the pick.
|
|
6030
|
+
*/
|
|
6031
|
+
businessKind: import_zod8.z.string().regex(/^[a-z][a-z0-9-]{0,39}$/).optional()
|
|
6009
6032
|
});
|
|
6010
|
-
var creationSourceSchema =
|
|
6033
|
+
var creationSourceSchema = import_zod8.z.discriminatedUnion("type", [
|
|
6011
6034
|
creationSourceBlankSchema,
|
|
6012
6035
|
creationSourceBlueprintSchema
|
|
6013
6036
|
]);
|
|
6014
|
-
var moduleInstallHandoffSchema =
|
|
6015
|
-
moduleName:
|
|
6016
|
-
homeProjectId:
|
|
6017
|
-
installedVersion:
|
|
6018
|
-
baselineSha:
|
|
6019
|
-
mounts:
|
|
6020
|
-
|
|
6021
|
-
group:
|
|
6022
|
-
segment:
|
|
6037
|
+
var moduleInstallHandoffSchema = import_zod8.z.object({
|
|
6038
|
+
moduleName: import_zod8.z.string().min(1),
|
|
6039
|
+
homeProjectId: import_zod8.z.string().uuid(),
|
|
6040
|
+
installedVersion: import_zod8.z.string().min(1),
|
|
6041
|
+
baselineSha: import_zod8.z.string().min(1),
|
|
6042
|
+
mounts: import_zod8.z.array(
|
|
6043
|
+
import_zod8.z.object({
|
|
6044
|
+
group: import_zod8.z.string(),
|
|
6045
|
+
segment: import_zod8.z.string()
|
|
6023
6046
|
})
|
|
6024
6047
|
),
|
|
6025
|
-
integration:
|
|
6026
|
-
workflows:
|
|
6027
|
-
prunedEnhancements:
|
|
6028
|
-
restoredEnhancements:
|
|
6029
|
-
permissions:
|
|
6030
|
-
|
|
6031
|
-
key:
|
|
6032
|
-
description:
|
|
6048
|
+
integration: import_zod8.z.array(import_zod8.z.string()),
|
|
6049
|
+
workflows: import_zod8.z.array(import_zod8.z.string()),
|
|
6050
|
+
prunedEnhancements: import_zod8.z.array(import_zod8.z.string()),
|
|
6051
|
+
restoredEnhancements: import_zod8.z.array(import_zod8.z.string()).optional(),
|
|
6052
|
+
permissions: import_zod8.z.array(
|
|
6053
|
+
import_zod8.z.object({
|
|
6054
|
+
key: import_zod8.z.string().min(1),
|
|
6055
|
+
description: import_zod8.z.string().min(1)
|
|
6033
6056
|
})
|
|
6034
6057
|
).optional()
|
|
6035
6058
|
});
|
|
6036
6059
|
|
|
6037
6060
|
// ../../packages/lib/src/shared/schema-ops.ts
|
|
6038
|
-
var
|
|
6039
|
-
var columnSpecSchema =
|
|
6040
|
-
name:
|
|
6041
|
-
pgType:
|
|
6042
|
-
nullable:
|
|
6061
|
+
var import_zod9 = require("zod");
|
|
6062
|
+
var columnSpecSchema = import_zod9.z.object({
|
|
6063
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6064
|
+
pgType: import_zod9.z.string().min(1),
|
|
6065
|
+
nullable: import_zod9.z.boolean(),
|
|
6043
6066
|
/**
|
|
6044
6067
|
* A SQL expression used as the column default, as a raw string (e.g. `'t'`,
|
|
6045
6068
|
* `0`, `now()`, `gen_random_uuid()`). `null` or omitted means no default.
|
|
6046
6069
|
* NOT a JS literal — must already be a valid SQL expression.
|
|
6047
6070
|
*/
|
|
6048
|
-
default:
|
|
6049
|
-
fieldType:
|
|
6050
|
-
fieldConfig:
|
|
6071
|
+
default: import_zod9.z.string().nullable().optional(),
|
|
6072
|
+
fieldType: import_zod9.z.string().optional(),
|
|
6073
|
+
fieldConfig: import_zod9.z.record(import_zod9.z.string(), import_zod9.z.unknown()).optional()
|
|
6051
6074
|
});
|
|
6052
|
-
var referentialActionSchema =
|
|
6075
|
+
var referentialActionSchema = import_zod9.z.enum([
|
|
6053
6076
|
"cascade",
|
|
6054
6077
|
"set null",
|
|
6055
6078
|
"set default",
|
|
6056
6079
|
"restrict",
|
|
6057
6080
|
"no action"
|
|
6058
6081
|
]);
|
|
6059
|
-
var schemaOpSchema =
|
|
6082
|
+
var schemaOpSchema = import_zod9.z.discriminatedUnion("type", [
|
|
6060
6083
|
// Tables
|
|
6061
|
-
|
|
6062
|
-
type:
|
|
6063
|
-
table:
|
|
6064
|
-
columns:
|
|
6065
|
-
primaryKey:
|
|
6066
|
-
ifNotExists:
|
|
6084
|
+
import_zod9.z.object({
|
|
6085
|
+
type: import_zod9.z.literal("createTable"),
|
|
6086
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6087
|
+
columns: import_zod9.z.array(columnSpecSchema).min(1),
|
|
6088
|
+
primaryKey: import_zod9.z.array(import_zod9.z.string()).optional(),
|
|
6089
|
+
ifNotExists: import_zod9.z.boolean().optional()
|
|
6067
6090
|
}),
|
|
6068
|
-
|
|
6069
|
-
type:
|
|
6070
|
-
table:
|
|
6071
|
-
cascade:
|
|
6072
|
-
ifExists:
|
|
6091
|
+
import_zod9.z.object({
|
|
6092
|
+
type: import_zod9.z.literal("dropTable"),
|
|
6093
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6094
|
+
cascade: import_zod9.z.boolean().optional(),
|
|
6095
|
+
ifExists: import_zod9.z.boolean().optional()
|
|
6073
6096
|
}),
|
|
6074
|
-
|
|
6075
|
-
type:
|
|
6076
|
-
from:
|
|
6077
|
-
to:
|
|
6097
|
+
import_zod9.z.object({
|
|
6098
|
+
type: import_zod9.z.literal("renameTable"),
|
|
6099
|
+
from: import_zod9.z.string().min(1).max(63),
|
|
6100
|
+
to: import_zod9.z.string().min(1).max(63)
|
|
6078
6101
|
}),
|
|
6079
6102
|
// Columns
|
|
6080
|
-
|
|
6081
|
-
type:
|
|
6082
|
-
table:
|
|
6103
|
+
import_zod9.z.object({
|
|
6104
|
+
type: import_zod9.z.literal("addColumn"),
|
|
6105
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6083
6106
|
column: columnSpecSchema,
|
|
6084
|
-
ifNotExists:
|
|
6107
|
+
ifNotExists: import_zod9.z.boolean().optional()
|
|
6085
6108
|
}),
|
|
6086
|
-
|
|
6087
|
-
type:
|
|
6088
|
-
table:
|
|
6089
|
-
column:
|
|
6090
|
-
cascade:
|
|
6091
|
-
ifExists:
|
|
6109
|
+
import_zod9.z.object({
|
|
6110
|
+
type: import_zod9.z.literal("dropColumn"),
|
|
6111
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6112
|
+
column: import_zod9.z.string().min(1).max(63),
|
|
6113
|
+
cascade: import_zod9.z.boolean().optional(),
|
|
6114
|
+
ifExists: import_zod9.z.boolean().optional()
|
|
6092
6115
|
}),
|
|
6093
|
-
|
|
6094
|
-
type:
|
|
6095
|
-
table:
|
|
6096
|
-
from:
|
|
6097
|
-
to:
|
|
6116
|
+
import_zod9.z.object({
|
|
6117
|
+
type: import_zod9.z.literal("renameColumn"),
|
|
6118
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6119
|
+
from: import_zod9.z.string().min(1).max(63),
|
|
6120
|
+
to: import_zod9.z.string().min(1).max(63)
|
|
6098
6121
|
}),
|
|
6099
|
-
|
|
6100
|
-
type:
|
|
6101
|
-
table:
|
|
6102
|
-
column:
|
|
6103
|
-
newType:
|
|
6122
|
+
import_zod9.z.object({
|
|
6123
|
+
type: import_zod9.z.literal("alterColumnType"),
|
|
6124
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6125
|
+
column: import_zod9.z.string().min(1).max(63),
|
|
6126
|
+
newType: import_zod9.z.string().min(1),
|
|
6104
6127
|
/** Optional USING expression for potentially-lossy casts */
|
|
6105
|
-
using:
|
|
6128
|
+
using: import_zod9.z.string().optional()
|
|
6106
6129
|
}),
|
|
6107
|
-
|
|
6108
|
-
type:
|
|
6109
|
-
table:
|
|
6110
|
-
column:
|
|
6111
|
-
nullable:
|
|
6130
|
+
import_zod9.z.object({
|
|
6131
|
+
type: import_zod9.z.literal("alterColumnNullable"),
|
|
6132
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6133
|
+
column: import_zod9.z.string().min(1).max(63),
|
|
6134
|
+
nullable: import_zod9.z.boolean()
|
|
6112
6135
|
}),
|
|
6113
|
-
|
|
6114
|
-
type:
|
|
6115
|
-
table:
|
|
6116
|
-
column:
|
|
6136
|
+
import_zod9.z.object({
|
|
6137
|
+
type: import_zod9.z.literal("alterColumnDefault"),
|
|
6138
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6139
|
+
column: import_zod9.z.string().min(1).max(63),
|
|
6117
6140
|
/** null means drop the default; otherwise a SQL expression string. */
|
|
6118
|
-
default:
|
|
6141
|
+
default: import_zod9.z.string().nullable()
|
|
6119
6142
|
}),
|
|
6120
6143
|
// Indexes
|
|
6121
|
-
|
|
6122
|
-
type:
|
|
6123
|
-
table:
|
|
6124
|
-
name:
|
|
6125
|
-
columns:
|
|
6126
|
-
unique:
|
|
6144
|
+
import_zod9.z.object({
|
|
6145
|
+
type: import_zod9.z.literal("addIndex"),
|
|
6146
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6147
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6148
|
+
columns: import_zod9.z.array(import_zod9.z.string().min(1)).min(1),
|
|
6149
|
+
unique: import_zod9.z.boolean().optional(),
|
|
6127
6150
|
/** Partial-index WHERE clause, as a raw SQL expression */
|
|
6128
|
-
where:
|
|
6129
|
-
ifNotExists:
|
|
6151
|
+
where: import_zod9.z.string().optional(),
|
|
6152
|
+
ifNotExists: import_zod9.z.boolean().optional()
|
|
6130
6153
|
}),
|
|
6131
|
-
|
|
6132
|
-
type:
|
|
6133
|
-
name:
|
|
6134
|
-
cascade:
|
|
6135
|
-
ifExists:
|
|
6154
|
+
import_zod9.z.object({
|
|
6155
|
+
type: import_zod9.z.literal("dropIndex"),
|
|
6156
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6157
|
+
cascade: import_zod9.z.boolean().optional(),
|
|
6158
|
+
ifExists: import_zod9.z.boolean().optional()
|
|
6136
6159
|
}),
|
|
6137
6160
|
// Constraints
|
|
6138
|
-
|
|
6139
|
-
type:
|
|
6140
|
-
table:
|
|
6141
|
-
name:
|
|
6142
|
-
columns:
|
|
6143
|
-
refTable:
|
|
6144
|
-
refColumns:
|
|
6161
|
+
import_zod9.z.object({
|
|
6162
|
+
type: import_zod9.z.literal("addForeignKey"),
|
|
6163
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6164
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6165
|
+
columns: import_zod9.z.array(import_zod9.z.string().min(1)).min(1),
|
|
6166
|
+
refTable: import_zod9.z.string().min(1).max(63),
|
|
6167
|
+
refColumns: import_zod9.z.array(import_zod9.z.string().min(1)).min(1),
|
|
6145
6168
|
onDelete: referentialActionSchema.optional(),
|
|
6146
6169
|
onUpdate: referentialActionSchema.optional()
|
|
6147
6170
|
}),
|
|
6148
|
-
|
|
6149
|
-
type:
|
|
6150
|
-
table:
|
|
6151
|
-
name:
|
|
6152
|
-
columns:
|
|
6171
|
+
import_zod9.z.object({
|
|
6172
|
+
type: import_zod9.z.literal("addUniqueConstraint"),
|
|
6173
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6174
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6175
|
+
columns: import_zod9.z.array(import_zod9.z.string().min(1)).min(1)
|
|
6153
6176
|
}),
|
|
6154
|
-
|
|
6155
|
-
type:
|
|
6156
|
-
table:
|
|
6157
|
-
name:
|
|
6158
|
-
expression:
|
|
6177
|
+
import_zod9.z.object({
|
|
6178
|
+
type: import_zod9.z.literal("addCheckConstraint"),
|
|
6179
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6180
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6181
|
+
expression: import_zod9.z.string().min(1)
|
|
6159
6182
|
}),
|
|
6160
|
-
|
|
6161
|
-
type:
|
|
6162
|
-
table:
|
|
6163
|
-
name:
|
|
6164
|
-
cascade:
|
|
6165
|
-
ifExists:
|
|
6183
|
+
import_zod9.z.object({
|
|
6184
|
+
type: import_zod9.z.literal("dropConstraint"),
|
|
6185
|
+
table: import_zod9.z.string().min(1).max(63),
|
|
6186
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6187
|
+
cascade: import_zod9.z.boolean().optional(),
|
|
6188
|
+
ifExists: import_zod9.z.boolean().optional()
|
|
6166
6189
|
}),
|
|
6167
6190
|
// Enum types
|
|
6168
|
-
|
|
6169
|
-
type:
|
|
6170
|
-
name:
|
|
6171
|
-
values:
|
|
6191
|
+
import_zod9.z.object({
|
|
6192
|
+
type: import_zod9.z.literal("createEnum"),
|
|
6193
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6194
|
+
values: import_zod9.z.array(import_zod9.z.string().min(1)).min(1)
|
|
6172
6195
|
}),
|
|
6173
|
-
|
|
6174
|
-
type:
|
|
6175
|
-
name:
|
|
6176
|
-
value:
|
|
6196
|
+
import_zod9.z.object({
|
|
6197
|
+
type: import_zod9.z.literal("alterEnumAddValue"),
|
|
6198
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6199
|
+
value: import_zod9.z.string().min(1),
|
|
6177
6200
|
/** Position the new value before an existing one (mutually exclusive with `after`) */
|
|
6178
|
-
before:
|
|
6201
|
+
before: import_zod9.z.string().optional(),
|
|
6179
6202
|
/** Position the new value after an existing one (mutually exclusive with `before`) */
|
|
6180
|
-
after:
|
|
6181
|
-
ifNotExists:
|
|
6203
|
+
after: import_zod9.z.string().optional(),
|
|
6204
|
+
ifNotExists: import_zod9.z.boolean().optional()
|
|
6182
6205
|
}),
|
|
6183
|
-
|
|
6184
|
-
type:
|
|
6185
|
-
name:
|
|
6186
|
-
cascade:
|
|
6187
|
-
ifExists:
|
|
6206
|
+
import_zod9.z.object({
|
|
6207
|
+
type: import_zod9.z.literal("dropEnum"),
|
|
6208
|
+
name: import_zod9.z.string().min(1).max(63),
|
|
6209
|
+
cascade: import_zod9.z.boolean().optional(),
|
|
6210
|
+
ifExists: import_zod9.z.boolean().optional()
|
|
6188
6211
|
}),
|
|
6189
6212
|
// Extensions
|
|
6190
|
-
|
|
6191
|
-
type:
|
|
6192
|
-
name:
|
|
6193
|
-
ifNotExists:
|
|
6213
|
+
import_zod9.z.object({
|
|
6214
|
+
type: import_zod9.z.literal("createExtension"),
|
|
6215
|
+
name: import_zod9.z.string().min(1),
|
|
6216
|
+
ifNotExists: import_zod9.z.boolean().optional()
|
|
6194
6217
|
}),
|
|
6195
6218
|
// Data operations
|
|
6196
6219
|
/**
|
|
@@ -6198,26 +6221,26 @@ var schemaOpSchema = import_zod8.z.discriminatedUnion("type", [
|
|
|
6198
6221
|
* destructive — requires explicit confirm to replay on prod. The
|
|
6199
6222
|
* `description` is what the agent/user sees at confirm time.
|
|
6200
6223
|
*/
|
|
6201
|
-
|
|
6202
|
-
type:
|
|
6203
|
-
description:
|
|
6204
|
-
sql:
|
|
6224
|
+
import_zod9.z.object({
|
|
6225
|
+
type: import_zod9.z.literal("backfill"),
|
|
6226
|
+
description: import_zod9.z.string().min(1),
|
|
6227
|
+
sql: import_zod9.z.string().min(1)
|
|
6205
6228
|
}),
|
|
6206
6229
|
/**
|
|
6207
6230
|
* Escape hatch for DDL the structured ops can't express. `destructive`
|
|
6208
6231
|
* forces classification — use false only for genuinely additive-only SQL
|
|
6209
6232
|
* (e.g. CREATE EXTENSION variants the structured op doesn't cover).
|
|
6210
6233
|
*/
|
|
6211
|
-
|
|
6212
|
-
type:
|
|
6213
|
-
description:
|
|
6214
|
-
sql:
|
|
6215
|
-
destructive:
|
|
6234
|
+
import_zod9.z.object({
|
|
6235
|
+
type: import_zod9.z.literal("rawSql"),
|
|
6236
|
+
description: import_zod9.z.string().min(1),
|
|
6237
|
+
sql: import_zod9.z.string().min(1),
|
|
6238
|
+
destructive: import_zod9.z.boolean()
|
|
6216
6239
|
})
|
|
6217
6240
|
]);
|
|
6218
6241
|
|
|
6219
6242
|
// ../../packages/lib/src/server/module-rail/ops.ts
|
|
6220
|
-
var
|
|
6243
|
+
var import_zod10 = require("zod");
|
|
6221
6244
|
|
|
6222
6245
|
// ../../packages/lib/src/server/module-rail/reconcile.ts
|
|
6223
6246
|
var SANDBOX_BATCH_SIZE = 200;
|