primitive-admin 1.2.0-alpha.5 → 1.2.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/commands/database-types.js +13 -313
- package/dist/src/commands/database-types.js.map +1 -1
- package/dist/src/commands/llm.js +9 -6
- package/dist/src/commands/llm.js.map +1 -1
- package/dist/src/commands/settings.d.ts +12 -9
- package/dist/src/commands/settings.js +31 -79
- package/dist/src/commands/settings.js.map +1 -1
- package/dist/src/lib/function-triggers.d.ts +15 -3
- package/dist/src/lib/function-triggers.js +72 -10
- package/dist/src/lib/function-triggers.js.map +1 -1
- package/dist/src/lib/generated-workflow-model-fields.d.ts +20 -0
- package/dist/src/lib/generated-workflow-model-fields.js +53 -0
- package/dist/src/lib/generated-workflow-model-fields.js.map +1 -0
- package/dist/src/lib/workflow-field-descriptor.d.ts +91 -0
- package/dist/src/lib/workflow-field-descriptor.js +153 -0
- package/dist/src/lib/workflow-field-descriptor.js.map +1 -0
- package/package.json +2 -2
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { ApiClient } from "../lib/api-client.js";
|
|
2
2
|
import { getCurrentAppId } from "../lib/config.js";
|
|
3
|
-
import {
|
|
4
|
-
import { confirmPrompt } from "../lib/confirm-prompt.js";
|
|
3
|
+
import { error, info, result as printResult, formatTable, formatId, formatDate, json, } from "../lib/output.js";
|
|
5
4
|
function resolveAppId(appId, options) {
|
|
6
5
|
const resolved = appId || options.app || getCurrentAppId();
|
|
7
6
|
if (!resolved) {
|
|
@@ -18,11 +17,19 @@ export function registerDatabaseTypesCommands(program) {
|
|
|
18
17
|
Examples:
|
|
19
18
|
$ primitive database-types list
|
|
20
19
|
$ primitive database-types get <database-type>
|
|
21
|
-
$ primitive database-
|
|
22
|
-
$ primitive
|
|
23
|
-
$ primitive database-types delete <database-type>
|
|
20
|
+
$ primitive config create database-type <database-type> # scaffold database-types/<type>.toml
|
|
21
|
+
$ primitive config push --only database-type/<database-type>
|
|
24
22
|
$ primitive database-types operations list <database-type>
|
|
25
|
-
|
|
23
|
+
# Operations are [[operations]] entries in database-types/<type>.toml.
|
|
24
|
+
`);
|
|
25
|
+
// Server-side configuration is authored in TOML and applied with `config push`
|
|
26
|
+
// (issue #2645) — this group no longer carries config-setting flags.
|
|
27
|
+
dbTypes.addHelpText("after", `
|
|
28
|
+
Configuration lives in database-types/<type>.toml:
|
|
29
|
+
$ primitive config fields database-type # the file's keys, types and defaults
|
|
30
|
+
$ primitive config create database-type <key> # scaffold one locally
|
|
31
|
+
$ primitive config set database-type/<key> <path>=<value>
|
|
32
|
+
$ primitive config push --only database-type/<key>
|
|
26
33
|
`);
|
|
27
34
|
// List type configs
|
|
28
35
|
dbTypes
|
|
@@ -85,162 +92,10 @@ Examples:
|
|
|
85
92
|
process.exit(1);
|
|
86
93
|
}
|
|
87
94
|
});
|
|
88
|
-
// Create type config
|
|
89
|
-
dbTypes
|
|
90
|
-
.command("create")
|
|
91
|
-
.description("Create a database type configuration")
|
|
92
|
-
.argument("<database-type>", "Database type name")
|
|
93
|
-
.option("--rule-set-id <id>", "Access rule set ID")
|
|
94
|
-
.option("--triggers <json>", "Trigger definitions as JSON string")
|
|
95
|
-
.option("--cel-context-access <cel>", "[deprecated] One CEL expression gating the database CEL context — it gates READ AND WRITE together, so anyone allowed to read can also update. Prefer a resource metadata category (separate readRule/writeRule). See docs.")
|
|
96
|
-
.option("--metadata-access <cel>", "[deprecated] Legacy alias for --cel-context-access (also gates read AND write); prefer a resource metadata category")
|
|
97
|
-
.option("--app <app-id>", "App ID")
|
|
98
|
-
.option("--json", "Output as JSON")
|
|
99
|
-
.action(async (databaseType, options) => {
|
|
100
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
101
|
-
const client = new ApiClient();
|
|
102
|
-
try {
|
|
103
|
-
const data = { databaseType };
|
|
104
|
-
if (options.ruleSetId)
|
|
105
|
-
data.ruleSetId = options.ruleSetId;
|
|
106
|
-
if (options.triggers) {
|
|
107
|
-
try {
|
|
108
|
-
data.triggers = JSON.parse(options.triggers);
|
|
109
|
-
}
|
|
110
|
-
catch {
|
|
111
|
-
error("Invalid JSON in --triggers.");
|
|
112
|
-
process.exit(1);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
// `--cel-context-access` is the new name; `--metadata-access` remains
|
|
116
|
-
// supported. Both write to the same wire field (`metadataAccess`).
|
|
117
|
-
const accessExpr = options.celContextAccess ?? options.metadataAccess;
|
|
118
|
-
if (accessExpr)
|
|
119
|
-
data.metadataAccess = accessExpr;
|
|
120
|
-
const result = await client.createDatabaseTypeConfig(resolvedAppId, data);
|
|
121
|
-
if (options.json) {
|
|
122
|
-
json(result);
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
success("Database type configuration created.");
|
|
126
|
-
keyValue("Database Type", result.databaseType);
|
|
127
|
-
if (result.ruleSetId)
|
|
128
|
-
keyValue("Rule Set ID", result.ruleSetId);
|
|
129
|
-
if (result.triggers)
|
|
130
|
-
keyValue("Triggers", "Yes");
|
|
131
|
-
}
|
|
132
|
-
catch (err) {
|
|
133
|
-
error(err.message);
|
|
134
|
-
process.exit(1);
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
// Update type config
|
|
138
|
-
dbTypes
|
|
139
|
-
.command("update")
|
|
140
|
-
.description("Update a database type configuration")
|
|
141
|
-
.argument("<database-type>", "Database type name")
|
|
142
|
-
.option("--rule-set-id <id>", "Access rule set ID (use 'none' to clear)")
|
|
143
|
-
.option("--triggers <json>", "Trigger definitions as JSON string (use 'none' to clear)")
|
|
144
|
-
.option("--cel-context-access <cel>", "[deprecated] One CEL expression gating the database CEL context read AND write (use 'none' to clear). Prefer a resource metadata category (separate readRule/writeRule).")
|
|
145
|
-
.option("--metadata-access <cel>", "[deprecated] Legacy alias for --cel-context-access (also gates read AND write; use 'none' to clear); prefer a resource metadata category")
|
|
146
|
-
.option("--app <app-id>", "App ID")
|
|
147
|
-
.option("--json", "Output as JSON")
|
|
148
|
-
.action(async (databaseType, options) => {
|
|
149
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
150
|
-
const client = new ApiClient();
|
|
151
|
-
const data = {};
|
|
152
|
-
if (options.ruleSetId !== undefined) {
|
|
153
|
-
data.ruleSetId = options.ruleSetId === "none" ? null : options.ruleSetId;
|
|
154
|
-
}
|
|
155
|
-
if (options.triggers !== undefined) {
|
|
156
|
-
if (options.triggers === "none") {
|
|
157
|
-
data.triggers = null;
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
try {
|
|
161
|
-
data.triggers = JSON.parse(options.triggers);
|
|
162
|
-
}
|
|
163
|
-
catch {
|
|
164
|
-
error("Invalid JSON in --triggers.");
|
|
165
|
-
process.exit(1);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
// Honour either flag; --cel-context-access wins if both are given.
|
|
170
|
-
const accessArg = options.celContextAccess !== undefined
|
|
171
|
-
? options.celContextAccess
|
|
172
|
-
: options.metadataAccess;
|
|
173
|
-
if (accessArg !== undefined) {
|
|
174
|
-
data.metadataAccess = accessArg === "none" ? null : accessArg;
|
|
175
|
-
}
|
|
176
|
-
if (Object.keys(data).length === 0) {
|
|
177
|
-
error("Provide at least one of --rule-set-id, --triggers, --cel-context-access, or --metadata-access.");
|
|
178
|
-
process.exit(1);
|
|
179
|
-
}
|
|
180
|
-
try {
|
|
181
|
-
const result = await client.updateDatabaseTypeConfig(resolvedAppId, databaseType, data);
|
|
182
|
-
if (options.json) {
|
|
183
|
-
json(result);
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
success("Database type configuration updated.");
|
|
187
|
-
keyValue("Database Type", result.databaseType);
|
|
188
|
-
keyValue("Rule Set ID", result.ruleSetId || "—");
|
|
189
|
-
keyValue("Triggers", result.triggers ? "Yes" : "—");
|
|
190
|
-
}
|
|
191
|
-
catch (err) {
|
|
192
|
-
error(err.message);
|
|
193
|
-
process.exit(1);
|
|
194
|
-
}
|
|
195
|
-
});
|
|
196
|
-
// Delete type config
|
|
197
|
-
dbTypes
|
|
198
|
-
.command("delete")
|
|
199
|
-
.description("Delete a database type configuration")
|
|
200
|
-
.argument("<database-type>", "Database type name")
|
|
201
|
-
.option("--app <app-id>", "App ID")
|
|
202
|
-
.option("-y, --yes", "Skip confirmation prompt")
|
|
203
|
-
.option("--force", "Delete even if live database instances of this type still exist (orphans them)")
|
|
204
|
-
.action(async (databaseType, options) => {
|
|
205
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
206
|
-
// `-y/--yes` only skips the interactive confirm; it does NOT bypass the
|
|
207
|
-
// server's instance-orphaning guard. Only `--force` (→ ?force=true) does.
|
|
208
|
-
if (!options.yes) {
|
|
209
|
-
let confirm;
|
|
210
|
-
try {
|
|
211
|
-
confirm = await confirmPrompt(`Delete database type "${databaseType}"? This cannot be undone.`);
|
|
212
|
-
}
|
|
213
|
-
catch (err) {
|
|
214
|
-
error(err.message);
|
|
215
|
-
process.exit(1);
|
|
216
|
-
}
|
|
217
|
-
if (!confirm) {
|
|
218
|
-
info("Cancelled.");
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
const client = new ApiClient();
|
|
223
|
-
try {
|
|
224
|
-
await client.deleteDatabaseTypeConfig(resolvedAppId, databaseType, {
|
|
225
|
-
force: Boolean(options.force),
|
|
226
|
-
});
|
|
227
|
-
success(`Database type "${databaseType}" deleted.`);
|
|
228
|
-
}
|
|
229
|
-
catch (err) {
|
|
230
|
-
error(err.message);
|
|
231
|
-
// The server refuses (409) when live instances exist and --force was
|
|
232
|
-
// not passed. Point the user at the escape hatch.
|
|
233
|
-
if (/instance/i.test(err.message) && !options.force) {
|
|
234
|
-
info("Delete the instances first (primitive databases delete <id>), or re-run with --force to delete the type anyway (this orphans the instances).");
|
|
235
|
-
}
|
|
236
|
-
process.exit(1);
|
|
237
|
-
}
|
|
238
|
-
});
|
|
239
95
|
// ---- Operations subcommand group ----
|
|
240
96
|
const operations = dbTypes
|
|
241
97
|
.command("operations")
|
|
242
98
|
.description("Manage operations (queries and mutations) for a database type");
|
|
243
|
-
// List operations
|
|
244
99
|
operations
|
|
245
100
|
.command("list")
|
|
246
101
|
.description("List operations for a database type")
|
|
@@ -312,160 +167,5 @@ Examples:
|
|
|
312
167
|
process.exit(1);
|
|
313
168
|
}
|
|
314
169
|
});
|
|
315
|
-
// Create operation
|
|
316
|
-
operations
|
|
317
|
-
.command("create")
|
|
318
|
-
.description("Create a new operation (query or mutation)")
|
|
319
|
-
.argument("<database-type>", "Database type name")
|
|
320
|
-
.argument("<name>", "Operation name")
|
|
321
|
-
.requiredOption("--type <type>", "Operation type: query, mutation, count, aggregate, or pipeline")
|
|
322
|
-
.requiredOption("--model <model-name>", "Model name")
|
|
323
|
-
.requiredOption("--access <cel>", "Access CEL expression")
|
|
324
|
-
.requiredOption("--definition <json>", "Definition as JSON string")
|
|
325
|
-
.option("--params <json>", "Parameters schema as JSON string")
|
|
326
|
-
.option("--app <app-id>", "App ID")
|
|
327
|
-
.option("--json", "Output as JSON")
|
|
328
|
-
.action(async (databaseType, name, options) => {
|
|
329
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
330
|
-
const client = new ApiClient();
|
|
331
|
-
let definition;
|
|
332
|
-
try {
|
|
333
|
-
definition = JSON.parse(options.definition);
|
|
334
|
-
}
|
|
335
|
-
catch {
|
|
336
|
-
error("Invalid JSON in --definition.");
|
|
337
|
-
process.exit(1);
|
|
338
|
-
return;
|
|
339
|
-
}
|
|
340
|
-
let params;
|
|
341
|
-
if (options.params) {
|
|
342
|
-
try {
|
|
343
|
-
params = JSON.parse(options.params);
|
|
344
|
-
}
|
|
345
|
-
catch {
|
|
346
|
-
error("Invalid JSON in --params.");
|
|
347
|
-
process.exit(1);
|
|
348
|
-
return;
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
try {
|
|
352
|
-
const data = {
|
|
353
|
-
name,
|
|
354
|
-
type: options.type,
|
|
355
|
-
modelName: options.model,
|
|
356
|
-
access: options.access,
|
|
357
|
-
definition,
|
|
358
|
-
};
|
|
359
|
-
if (params)
|
|
360
|
-
data.params = params;
|
|
361
|
-
const result = await client.createDatabaseTypeOperation(resolvedAppId, databaseType, data);
|
|
362
|
-
if (options.json) {
|
|
363
|
-
json(result);
|
|
364
|
-
return;
|
|
365
|
-
}
|
|
366
|
-
success("Operation created.");
|
|
367
|
-
keyValue("Name", result.name);
|
|
368
|
-
keyValue("Type", result.type);
|
|
369
|
-
keyValue("Model Name", result.modelName);
|
|
370
|
-
}
|
|
371
|
-
catch (err) {
|
|
372
|
-
error(err.message);
|
|
373
|
-
process.exit(1);
|
|
374
|
-
}
|
|
375
|
-
});
|
|
376
|
-
// Update operation
|
|
377
|
-
operations
|
|
378
|
-
.command("update")
|
|
379
|
-
.description("Update an operation")
|
|
380
|
-
.argument("<database-type>", "Database type name")
|
|
381
|
-
.argument("<name>", "Operation name")
|
|
382
|
-
.option("--model <model-name>", "New model name")
|
|
383
|
-
.option("--access <cel>", "New access CEL expression")
|
|
384
|
-
.option("--definition <json>", "New definition as JSON string")
|
|
385
|
-
.option("--params <json>", "New parameters schema as JSON string")
|
|
386
|
-
.option("--app <app-id>", "App ID")
|
|
387
|
-
.option("--json", "Output as JSON")
|
|
388
|
-
.action(async (databaseType, name, options) => {
|
|
389
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
390
|
-
const client = new ApiClient();
|
|
391
|
-
const data = {};
|
|
392
|
-
if (options.model)
|
|
393
|
-
data.modelName = options.model;
|
|
394
|
-
if (options.access)
|
|
395
|
-
data.access = options.access;
|
|
396
|
-
if (options.definition) {
|
|
397
|
-
try {
|
|
398
|
-
data.definition = JSON.parse(options.definition);
|
|
399
|
-
}
|
|
400
|
-
catch {
|
|
401
|
-
error("Invalid JSON in --definition.");
|
|
402
|
-
process.exit(1);
|
|
403
|
-
return;
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
if (options.params) {
|
|
407
|
-
try {
|
|
408
|
-
data.params = JSON.parse(options.params);
|
|
409
|
-
}
|
|
410
|
-
catch {
|
|
411
|
-
error("Invalid JSON in --params.");
|
|
412
|
-
process.exit(1);
|
|
413
|
-
return;
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
if (Object.keys(data).length === 0) {
|
|
417
|
-
error("Provide at least one of --model, --access, --definition, or --params.");
|
|
418
|
-
process.exit(1);
|
|
419
|
-
}
|
|
420
|
-
try {
|
|
421
|
-
const result = await client.updateDatabaseTypeOperation(resolvedAppId, databaseType, name, data);
|
|
422
|
-
if (options.json) {
|
|
423
|
-
json(result);
|
|
424
|
-
return;
|
|
425
|
-
}
|
|
426
|
-
success("Operation updated.");
|
|
427
|
-
keyValue("Name", result.name);
|
|
428
|
-
keyValue("Type", result.type);
|
|
429
|
-
keyValue("Model Name", result.modelName);
|
|
430
|
-
}
|
|
431
|
-
catch (err) {
|
|
432
|
-
error(err.message);
|
|
433
|
-
process.exit(1);
|
|
434
|
-
}
|
|
435
|
-
});
|
|
436
|
-
// Delete operation
|
|
437
|
-
operations
|
|
438
|
-
.command("delete")
|
|
439
|
-
.description("Delete an operation")
|
|
440
|
-
.argument("<database-type>", "Database type name")
|
|
441
|
-
.argument("<name>", "Operation name")
|
|
442
|
-
.option("--app <app-id>", "App ID")
|
|
443
|
-
.option("-y, --yes", "Skip confirmation prompt")
|
|
444
|
-
.action(async (databaseType, name, options) => {
|
|
445
|
-
const resolvedAppId = resolveAppId(undefined, options);
|
|
446
|
-
if (!options.yes) {
|
|
447
|
-
let confirm;
|
|
448
|
-
try {
|
|
449
|
-
confirm = await confirmPrompt(`Delete operation "${name}" from type "${databaseType}"?`);
|
|
450
|
-
}
|
|
451
|
-
catch (err) {
|
|
452
|
-
error(err.message);
|
|
453
|
-
process.exit(1);
|
|
454
|
-
}
|
|
455
|
-
if (!confirm) {
|
|
456
|
-
info("Cancelled.");
|
|
457
|
-
return;
|
|
458
|
-
}
|
|
459
|
-
}
|
|
460
|
-
const client = new ApiClient();
|
|
461
|
-
try {
|
|
462
|
-
await client.deleteDatabaseTypeOperation(resolvedAppId, databaseType, name);
|
|
463
|
-
success(`Operation "${name}" deleted.`);
|
|
464
|
-
}
|
|
465
|
-
catch (err) {
|
|
466
|
-
error(err.message);
|
|
467
|
-
process.exit(1);
|
|
468
|
-
}
|
|
469
|
-
});
|
|
470
170
|
}
|
|
471
171
|
//# sourceMappingURL=database-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-types.js","sourceRoot":"","sources":["../../../src/commands/database-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"database-types.js","sourceRoot":"","sources":["../../../src/commands/database-types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/commands/llm.js
CHANGED
|
@@ -119,8 +119,9 @@ Examples:
|
|
|
119
119
|
console.log(JSON.stringify(result.outputSchema, null, 2));
|
|
120
120
|
}
|
|
121
121
|
divider();
|
|
122
|
-
info("To create this prompt,
|
|
123
|
-
console.log(" primitive
|
|
122
|
+
info("To create this prompt, author it as TOML and push it:");
|
|
123
|
+
console.log(" primitive config new prompt <key>");
|
|
124
|
+
console.log(" primitive sync push --only prompt/<key>");
|
|
124
125
|
}
|
|
125
126
|
catch (err) {
|
|
126
127
|
error(err.message);
|
|
@@ -170,8 +171,9 @@ Examples:
|
|
|
170
171
|
console.log(JSON.stringify(result.outputSchema, null, 2));
|
|
171
172
|
}
|
|
172
173
|
divider();
|
|
173
|
-
info("To create this evaluator,
|
|
174
|
-
console.log(" primitive
|
|
174
|
+
info("To create this evaluator, author it as TOML and push it:");
|
|
175
|
+
console.log(" primitive config new prompt <key>");
|
|
176
|
+
console.log(" primitive sync push --only prompt/<key>");
|
|
175
177
|
info("Then link it to test cases using --evaluator-prompt option.");
|
|
176
178
|
}
|
|
177
179
|
catch (err) {
|
|
@@ -222,8 +224,9 @@ Examples:
|
|
|
222
224
|
console.log(JSON.stringify(result.outputSchema, null, 2));
|
|
223
225
|
}
|
|
224
226
|
divider();
|
|
225
|
-
info("To create this evaluator,
|
|
226
|
-
console.log(" primitive
|
|
227
|
+
info("To create this evaluator, author it as TOML and push it:");
|
|
228
|
+
console.log(" primitive config new prompt <key>");
|
|
229
|
+
console.log(" primitive sync push --only prompt/<key>");
|
|
227
230
|
info("Then link it to workflow test cases using --evaluator-prompt option.");
|
|
228
231
|
}
|
|
229
232
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../../../src/commands/llm.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"llm.js","sourceRoot":"","sources":["../../../src/commands/llm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `primitive settings` — the app-settings
|
|
2
|
+
* `primitive settings` — the app-settings READER (issue #1033, Phase 2;
|
|
3
|
+
* narrowed to a reader by #2645).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* redacted).
|
|
5
|
+
* App settings are authored in `app.toml` and applied with `sync push`, so
|
|
6
|
+
* this group carries the one thing the file cannot answer: what the server is
|
|
7
|
+
* actually running. `settings get` renders the server-effective settings —
|
|
8
|
+
* `get` rather than `show`, so the read verb is the same word on every
|
|
9
|
+
* configuration surface.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* `settings pull`, `settings diff` and `settings push` are gone. They operated
|
|
12
|
+
* on the same `app.toml` and the same `entities.app` hash `sync` owns, so they
|
|
13
|
+
* were a second pathway to one piece of state; `sync pull|diff|push --only app`
|
|
14
|
+
* is the single one. The remaining command logic lives in
|
|
15
|
+
* `sync-app-settings.ts`, shared with `sync`.
|
|
13
16
|
*/
|
|
14
17
|
import { Command } from "commander";
|
|
15
18
|
export declare function registerSettingsCommands(program: Command): void;
|
|
@@ -1,102 +1,54 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `primitive settings` — the app-settings
|
|
2
|
+
* `primitive settings` — the app-settings READER (issue #1033, Phase 2;
|
|
3
|
+
* narrowed to a reader by #2645).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* redacted).
|
|
5
|
+
* App settings are authored in `app.toml` and applied with `sync push`, so
|
|
6
|
+
* this group carries the one thing the file cannot answer: what the server is
|
|
7
|
+
* actually running. `settings get` renders the server-effective settings —
|
|
8
|
+
* `get` rather than `show`, so the read verb is the same word on every
|
|
9
|
+
* configuration surface.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
11
|
+
* `settings pull`, `settings diff` and `settings push` are gone. They operated
|
|
12
|
+
* on the same `app.toml` and the same `entities.app` hash `sync` owns, so they
|
|
13
|
+
* were a second pathway to one piece of state; `sync pull|diff|push --only app`
|
|
14
|
+
* is the single one. The remaining command logic lives in
|
|
15
|
+
* `sync-app-settings.ts`, shared with `sync`.
|
|
13
16
|
*/
|
|
14
17
|
import { ApiClient } from "../lib/api-client.js";
|
|
15
18
|
import { resolveAppId } from "../lib/config.js";
|
|
16
|
-
import {
|
|
17
|
-
import { info, warn } from "../lib/output.js";
|
|
18
|
-
import { showAppSettings, pullAppSettings, pushAppSettings, diffAppSettings, } from "./sync-app-settings.js";
|
|
19
|
-
/**
|
|
20
|
-
* Resolve the sync directory and print the per-environment hint the way `sync`
|
|
21
|
-
* does (suppressed under `--json` so stdout stays pure JSON).
|
|
22
|
-
*/
|
|
23
|
-
function resolveConfigDir(appId, options) {
|
|
24
|
-
const configDir = resolveSyncDir({ appId, userDir: options.dir });
|
|
25
|
-
if (isAutoResolvedSyncDir(options.dir) && !options.json) {
|
|
26
|
-
info(`Using per-environment sync directory: ${configDir}`);
|
|
27
|
-
const legacyHint = checkLegacySyncMigration(configDir);
|
|
28
|
-
if (legacyHint)
|
|
29
|
-
warn(legacyHint);
|
|
30
|
-
}
|
|
31
|
-
return configDir;
|
|
32
|
-
}
|
|
19
|
+
import { showAppSettings } from "./sync-app-settings.js";
|
|
33
20
|
export function registerSettingsCommands(program) {
|
|
34
21
|
const settings = program
|
|
35
22
|
.command("settings")
|
|
36
|
-
.description("View
|
|
23
|
+
.description("View the app settings the server is running")
|
|
37
24
|
.addHelpText("after", `
|
|
38
25
|
Examples:
|
|
39
|
-
$ primitive settings
|
|
40
|
-
$ primitive settings
|
|
41
|
-
$ primitive
|
|
42
|
-
$ primitive
|
|
43
|
-
$ primitive
|
|
26
|
+
$ primitive settings get # Render current server settings
|
|
27
|
+
$ primitive settings get --json # Machine-readable
|
|
28
|
+
$ primitive sync pull --only app # Write server settings to app.toml
|
|
29
|
+
$ primitive config set app app.baseUrl=https://example.com
|
|
30
|
+
$ primitive sync diff --only app # Show local app.toml vs server
|
|
31
|
+
$ primitive sync push --only app # Apply app.toml edits to the server
|
|
44
32
|
|
|
45
|
-
app.toml is the
|
|
46
|
-
|
|
47
|
-
|
|
33
|
+
app.toml is the ONLY way to manage app configuration (issue #2645): a full
|
|
34
|
+
\`sync push\` applies it, and \`sync push --only app\` applies it alone.
|
|
35
|
+
\`primitive config fields app\` lists its keys, types and defaults. The Google OAuth
|
|
36
|
+
client secret is an ordinary [auth] key holding a reference into the app's
|
|
37
|
+
secret store, never the secret itself: store the value with
|
|
38
|
+
'primitive secrets set GOOGLE_CLIENT_SECRET --value <secret>', then set
|
|
39
|
+
googleClientSecret = "{{secrets.GOOGLE_CLIENT_SECRET}}" in app.toml. A literal
|
|
40
|
+
secret there is rejected by the server.
|
|
48
41
|
`);
|
|
49
|
-
// settings
|
|
42
|
+
// settings get
|
|
50
43
|
settings
|
|
51
|
-
.command("
|
|
44
|
+
.command("get")
|
|
52
45
|
.description("Show the current server-effective app settings")
|
|
53
46
|
.argument("[app-id]", "App ID (uses current app if not specified)")
|
|
54
47
|
.option("--app <app-id>", "App ID")
|
|
55
|
-
.option("--json", "Output as JSON (googleClientSecret redacted)")
|
|
56
|
-
.action(async (appId, options) => {
|
|
57
|
-
const resolvedAppId = resolveAppId(appId, options);
|
|
58
|
-
await showAppSettings(new ApiClient(), resolvedAppId, options);
|
|
59
|
-
});
|
|
60
|
-
// settings pull
|
|
61
|
-
settings
|
|
62
|
-
.command("pull")
|
|
63
|
-
.description("Write the current server settings to app.toml")
|
|
64
|
-
.argument("[app-id]", "App ID (uses current app if not specified)")
|
|
65
|
-
.option("--app <app-id>", "App ID")
|
|
66
|
-
.option("--dir <path>", "Config directory (overrides the auto-resolved per-env path)")
|
|
67
48
|
.option("--json", "Output as JSON")
|
|
68
49
|
.action(async (appId, options) => {
|
|
69
50
|
const resolvedAppId = resolveAppId(appId, options);
|
|
70
|
-
|
|
71
|
-
await pullAppSettings(new ApiClient(), resolvedAppId, configDir, options);
|
|
72
|
-
});
|
|
73
|
-
// settings diff
|
|
74
|
-
settings
|
|
75
|
-
.command("diff")
|
|
76
|
-
.description("Show per-field differences between app.toml and the server")
|
|
77
|
-
.argument("[app-id]", "App ID (uses current app if not specified)")
|
|
78
|
-
.option("--app <app-id>", "App ID")
|
|
79
|
-
.option("--dir <path>", "Config directory (overrides the auto-resolved per-env path)")
|
|
80
|
-
.option("--json", "Output as JSON")
|
|
81
|
-
.action(async (appId, options) => {
|
|
82
|
-
const resolvedAppId = resolveAppId(appId, options);
|
|
83
|
-
const configDir = resolveConfigDir(resolvedAppId, options);
|
|
84
|
-
await diffAppSettings(new ApiClient(), resolvedAppId, configDir, options);
|
|
85
|
-
});
|
|
86
|
-
// settings push
|
|
87
|
-
settings
|
|
88
|
-
.command("push")
|
|
89
|
-
.description("Apply app.toml settings to the server")
|
|
90
|
-
.argument("[app-id]", "App ID (uses current app if not specified)")
|
|
91
|
-
.option("--app <app-id>", "App ID")
|
|
92
|
-
.option("--dir <path>", "Config directory (overrides the auto-resolved per-env path)")
|
|
93
|
-
.option("--force", "Push even if app.toml is unchanged since the last sync")
|
|
94
|
-
.option("--dry-run", "Show what would be changed without applying")
|
|
95
|
-
.option("--json", "Output as JSON")
|
|
96
|
-
.action(async (appId, options) => {
|
|
97
|
-
const resolvedAppId = resolveAppId(appId, options);
|
|
98
|
-
const configDir = resolveConfigDir(resolvedAppId, options);
|
|
99
|
-
await pushAppSettings(new ApiClient(), resolvedAppId, configDir, options);
|
|
51
|
+
await showAppSettings(new ApiClient(), resolvedAppId, options);
|
|
100
52
|
});
|
|
101
53
|
}
|
|
102
54
|
//# sourceMappingURL=settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/commands/settings.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/commands/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,MAAM,QAAQ,GAAG,OAAO;SACrB,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,6CAA6C,CAAC;SAC1D,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;;;;;;CAiBL,CACI,CAAC;IAEJ,eAAe;IACf,QAAQ;SACL,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,gDAAgD,CAAC;SAC7D,QAAQ,CAAC,UAAU,EAAE,4CAA4C,CAAC;SAClE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC;SAClC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC/B,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,eAAe,CAAC,IAAI,SAAS,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -21,6 +21,14 @@
|
|
|
21
21
|
* cap, whether a standalone webhook holds the key. A local copy of those would
|
|
22
22
|
* be a preflight that can give a false all-clear.
|
|
23
23
|
*/
|
|
24
|
+
/**
|
|
25
|
+
* The resolved mode the declaration is checked against (#3281): the caller
|
|
26
|
+
* resolves `mode`/`durable` once through the vendored `resolveDeclaredMode`
|
|
27
|
+
* and hands the answer here, so this copy never reads the alias itself.
|
|
28
|
+
*/
|
|
29
|
+
export interface TriggerModeOptions {
|
|
30
|
+
mode?: "request" | "task";
|
|
31
|
+
}
|
|
24
32
|
export interface WebhookTriggerDeclaration {
|
|
25
33
|
verificationScheme: string;
|
|
26
34
|
signingSecret?: string;
|
|
@@ -38,17 +46,21 @@ export interface CronTriggerDeclaration {
|
|
|
38
46
|
overlapPolicy?: string;
|
|
39
47
|
rootInput?: unknown;
|
|
40
48
|
}
|
|
49
|
+
/** One `[[function.triggers.database]]` entry, normalized (#3184). */
|
|
50
|
+
export interface DatabaseTriggerDeclaration {
|
|
51
|
+
type: string;
|
|
52
|
+
}
|
|
41
53
|
export interface TriggerDeclaration {
|
|
42
54
|
webhook: WebhookTriggerDeclaration | null;
|
|
43
55
|
cron: CronTriggerDeclaration[];
|
|
56
|
+
databases: DatabaseTriggerDeclaration[];
|
|
44
57
|
}
|
|
45
58
|
export declare const MAX_CRON_TRIGGERS_PER_FUNCTION = 10;
|
|
59
|
+
export declare const MAX_DATABASE_TRIGGERS_PER_FUNCTION = 5;
|
|
46
60
|
export declare class TriggerDeclarationError extends Error {
|
|
47
61
|
}
|
|
48
62
|
/**
|
|
49
63
|
* Normalize (and check) the `triggers` table of a parsed `[function]` table.
|
|
50
64
|
* Returns null when nothing is declared, so a caller can skip the work.
|
|
51
65
|
*/
|
|
52
|
-
export declare function normalizeFunctionTriggers(functionTable: any, options?:
|
|
53
|
-
durable?: boolean;
|
|
54
|
-
}): TriggerDeclaration | null;
|
|
66
|
+
export declare function normalizeFunctionTriggers(functionTable: any, options?: TriggerModeOptions): TriggerDeclaration | null;
|
|
@@ -22,7 +22,11 @@
|
|
|
22
22
|
* be a preflight that can give a false all-clear.
|
|
23
23
|
*/
|
|
24
24
|
export const MAX_CRON_TRIGGERS_PER_FUNCTION = 10;
|
|
25
|
+
export const MAX_DATABASE_TRIGGERS_PER_FUNCTION = 5;
|
|
25
26
|
const CRON_NAME_PATTERN = /^[a-zA-Z0-9][a-zA-Z0-9_-]*$/;
|
|
27
|
+
/** The charset the grant grammar already uses for a database type key. */
|
|
28
|
+
const DATABASE_TYPE_PATTERN = /^[A-Za-z0-9_-]+$/;
|
|
29
|
+
const DATABASE_KEYS = ["type"];
|
|
26
30
|
const WEBHOOK_KEYS = [
|
|
27
31
|
"verificationScheme",
|
|
28
32
|
"signingSecret",
|
|
@@ -49,16 +53,72 @@ export function normalizeFunctionTriggers(functionTable, options = {}) {
|
|
|
49
53
|
throw new TriggerDeclarationError("[function.triggers] must be a table declaring `webhook` and/or `cron`");
|
|
50
54
|
}
|
|
51
55
|
for (const key of Object.keys(triggers)) {
|
|
52
|
-
if (key !== "webhook" && key !== "cron") {
|
|
56
|
+
if (key !== "webhook" && key !== "cron" && key !== "database") {
|
|
53
57
|
throw new TriggerDeclarationError(`unknown trigger kind '${key}' under [function.triggers]: the kinds are ` +
|
|
54
|
-
"`webhook` and `
|
|
58
|
+
"`webhook`, `cron` and `database`");
|
|
55
59
|
}
|
|
56
60
|
}
|
|
57
61
|
const webhook = normalizeWebhook(triggers.webhook, options);
|
|
58
62
|
const cron = normalizeCron(triggers.cron, options);
|
|
59
|
-
|
|
63
|
+
const databases = normalizeDatabases(triggers.database, options);
|
|
64
|
+
if (!webhook && cron.length === 0 && databases.length === 0)
|
|
60
65
|
return null;
|
|
61
|
-
return { webhook, cron };
|
|
66
|
+
return { webhook, cron, databases };
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* `[[function.triggers.database]]` — one accepted key, `type` (#3184).
|
|
70
|
+
*
|
|
71
|
+
* Sync mode only, permanently: a database-change fire runs inside the write
|
|
72
|
+
* request with no run row, and there is no durable shape for that.
|
|
73
|
+
*/
|
|
74
|
+
function normalizeDatabases(raw, options) {
|
|
75
|
+
if (raw === undefined || raw === null)
|
|
76
|
+
return [];
|
|
77
|
+
const entries = Array.isArray(raw) ? raw : [raw];
|
|
78
|
+
if (entries.length === 0)
|
|
79
|
+
return [];
|
|
80
|
+
if (options.mode === "task") {
|
|
81
|
+
throw new TriggerDeclarationError("database triggers require request mode: set `mode = \"request\"` (or " +
|
|
82
|
+
"remove `mode = \"task\"`), or remove the [[function.triggers.database]] " +
|
|
83
|
+
"entries");
|
|
84
|
+
}
|
|
85
|
+
if (entries.length > MAX_DATABASE_TRIGGERS_PER_FUNCTION) {
|
|
86
|
+
throw new TriggerDeclarationError(`a function may watch at most ${MAX_DATABASE_TRIGGERS_PER_FUNCTION} database ` +
|
|
87
|
+
`types, and this one declares ${entries.length}`);
|
|
88
|
+
}
|
|
89
|
+
const seen = new Set();
|
|
90
|
+
const normalized = [];
|
|
91
|
+
for (const entry of entries) {
|
|
92
|
+
if (entry === null || typeof entry !== "object" || Array.isArray(entry)) {
|
|
93
|
+
throw new TriggerDeclarationError("each [[function.triggers.database]] entry must be a table");
|
|
94
|
+
}
|
|
95
|
+
const table = entry;
|
|
96
|
+
for (const key of Object.keys(table)) {
|
|
97
|
+
if (!DATABASE_KEYS.includes(key)) {
|
|
98
|
+
throw new TriggerDeclarationError(`unknown key '${key}' in a [[function.triggers.database]] entry: the ` +
|
|
99
|
+
`only accepted key is ${DATABASE_KEYS.join(", ")}`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
const type = String(table.type ?? "").trim();
|
|
103
|
+
if (!type) {
|
|
104
|
+
throw new TriggerDeclarationError("each [[function.triggers.database]] entry needs a `type`: it names the " +
|
|
105
|
+
"database type whose writes fire the function");
|
|
106
|
+
}
|
|
107
|
+
if (!DATABASE_TYPE_PATTERN.test(type)) {
|
|
108
|
+
throw new TriggerDeclarationError(`database trigger type '${type}' must contain only letters, digits, ` +
|
|
109
|
+
"'-' or '_'");
|
|
110
|
+
}
|
|
111
|
+
if (seen.has(type)) {
|
|
112
|
+
throw new TriggerDeclarationError(`duplicate database trigger type '${type}': a function fires once per ` +
|
|
113
|
+
"write request, so each type is declared once");
|
|
114
|
+
}
|
|
115
|
+
seen.add(type);
|
|
116
|
+
normalized.push({ type });
|
|
117
|
+
}
|
|
118
|
+
// Sorted, matching the server, so `config diff` compares the same canonical
|
|
119
|
+
// shape whichever order the file lists its blocks in.
|
|
120
|
+
normalized.sort((a, b) => a.type.localeCompare(b.type));
|
|
121
|
+
return normalized;
|
|
62
122
|
}
|
|
63
123
|
function normalizeWebhook(raw, options) {
|
|
64
124
|
if (raw === undefined || raw === null)
|
|
@@ -77,9 +137,9 @@ function normalizeWebhook(raw, options) {
|
|
|
77
137
|
`are ${WEBHOOK_KEYS.join(", ")}`);
|
|
78
138
|
}
|
|
79
139
|
}
|
|
80
|
-
if (options.
|
|
81
|
-
throw new TriggerDeclarationError("webhook triggers require
|
|
82
|
-
"[function.triggers.webhook]");
|
|
140
|
+
if (options.mode === "task") {
|
|
141
|
+
throw new TriggerDeclarationError("webhook triggers require request mode: set `mode = \"request\"` (or " +
|
|
142
|
+
"remove `mode = \"task\"`), or remove [function.triggers.webhook]");
|
|
83
143
|
}
|
|
84
144
|
const scheme = String(table.verificationScheme ?? "").trim();
|
|
85
145
|
if (!scheme) {
|
|
@@ -130,9 +190,11 @@ function normalizeCron(raw, options) {
|
|
|
130
190
|
const entries = Array.isArray(raw) ? raw : [raw];
|
|
131
191
|
if (entries.length === 0)
|
|
132
192
|
return [];
|
|
133
|
-
if (options.
|
|
134
|
-
throw new TriggerDeclarationError("cron triggers require
|
|
135
|
-
"
|
|
193
|
+
if (options.mode === "task") {
|
|
194
|
+
throw new TriggerDeclarationError("cron triggers require request mode: set `mode = \"request\"` (or " +
|
|
195
|
+
"remove `mode = \"task\"`), or remove the [[function.triggers.cron]] " +
|
|
196
|
+
"entries — a cron trigger on a task function is not available in this " +
|
|
197
|
+
"release");
|
|
136
198
|
}
|
|
137
199
|
if (entries.length > MAX_CRON_TRIGGERS_PER_FUNCTION) {
|
|
138
200
|
throw new TriggerDeclarationError(`a function may declare at most ${MAX_CRON_TRIGGERS_PER_FUNCTION} cron ` +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function-triggers.js","sourceRoot":"","sources":["../../../src/lib/function-triggers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;
|
|
1
|
+
{"version":3,"file":"function-triggers.js","sourceRoot":"","sources":["../../../src/lib/function-triggers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED FILE — DO NOT EDIT BY HAND.
|
|
3
|
+
*
|
|
4
|
+
* Source of truth: the `WorkflowDefinition` model in the repo-root
|
|
5
|
+
* `models.yaml` — the one statically-parseable server anchor for the
|
|
6
|
+
* `[workflow]`-level config surface (issue #2326, Phase 1 of #1976).
|
|
7
|
+
*
|
|
8
|
+
* Regenerate with:
|
|
9
|
+
* node cli/scripts/gen-workflow-fields.mjs (runs automatically at CLI prebuild)
|
|
10
|
+
*
|
|
11
|
+
* A CI freshness guard (`cli/scripts/gen-workflow-fields.mjs --check`, also
|
|
12
|
+
* asserted by `cli/tests/unit/workflow-field-descriptor-drift-guard.test.ts`)
|
|
13
|
+
* fails if this committed artifact does not match a fresh parse of
|
|
14
|
+
* `models.yaml`. The same test asserts every field below is classified in
|
|
15
|
+
* `cli/src/lib/workflow-field-descriptor.ts` as synced, structural, or
|
|
16
|
+
* internal — so a new server-side workflow field cannot be silently ignored by
|
|
17
|
+
* the CLI.
|
|
18
|
+
*/
|
|
19
|
+
/** Every `WorkflowDefinition` field, in `models.yaml` declaration order (#2326). */
|
|
20
|
+
export declare const GENERATED_WORKFLOW_MODEL_FIELDS: readonly string[];
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GENERATED FILE — DO NOT EDIT BY HAND.
|
|
3
|
+
*
|
|
4
|
+
* Source of truth: the `WorkflowDefinition` model in the repo-root
|
|
5
|
+
* `models.yaml` — the one statically-parseable server anchor for the
|
|
6
|
+
* `[workflow]`-level config surface (issue #2326, Phase 1 of #1976).
|
|
7
|
+
*
|
|
8
|
+
* Regenerate with:
|
|
9
|
+
* node cli/scripts/gen-workflow-fields.mjs (runs automatically at CLI prebuild)
|
|
10
|
+
*
|
|
11
|
+
* A CI freshness guard (`cli/scripts/gen-workflow-fields.mjs --check`, also
|
|
12
|
+
* asserted by `cli/tests/unit/workflow-field-descriptor-drift-guard.test.ts`)
|
|
13
|
+
* fails if this committed artifact does not match a fresh parse of
|
|
14
|
+
* `models.yaml`. The same test asserts every field below is classified in
|
|
15
|
+
* `cli/src/lib/workflow-field-descriptor.ts` as synced, structural, or
|
|
16
|
+
* internal — so a new server-side workflow field cannot be silently ignored by
|
|
17
|
+
* the CLI.
|
|
18
|
+
*/
|
|
19
|
+
/** Every `WorkflowDefinition` field, in `models.yaml` declaration order (#2326). */
|
|
20
|
+
export const GENERATED_WORKFLOW_MODEL_FIELDS = [
|
|
21
|
+
"workflowId",
|
|
22
|
+
"appId",
|
|
23
|
+
"workflowKey",
|
|
24
|
+
"name",
|
|
25
|
+
"status",
|
|
26
|
+
"latestRevision",
|
|
27
|
+
"description",
|
|
28
|
+
"stepsR2Key",
|
|
29
|
+
"draftStepsR2Key",
|
|
30
|
+
"draftInputSchema",
|
|
31
|
+
"draftOutputSchema",
|
|
32
|
+
"draftModifiedAt",
|
|
33
|
+
"activeConfigId",
|
|
34
|
+
"inputSchema",
|
|
35
|
+
"outputSchema",
|
|
36
|
+
"perUserMaxRunning",
|
|
37
|
+
"perUserMaxQueued",
|
|
38
|
+
"perAppMaxRunning",
|
|
39
|
+
"perAppMaxQueued",
|
|
40
|
+
"queueTtlSeconds",
|
|
41
|
+
"dequeueOrder",
|
|
42
|
+
"requiresClientApply",
|
|
43
|
+
"syncCallable",
|
|
44
|
+
"accessRule",
|
|
45
|
+
"metadataManifest",
|
|
46
|
+
"runAs",
|
|
47
|
+
"lock",
|
|
48
|
+
"capabilities",
|
|
49
|
+
"createdBy",
|
|
50
|
+
"createdAt",
|
|
51
|
+
"modifiedAt",
|
|
52
|
+
];
|
|
53
|
+
//# sourceMappingURL=generated-workflow-model-fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-workflow-model-fields.js","sourceRoot":"","sources":["../../../src/lib/generated-workflow-model-fields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,oFAAoF;AACpF,MAAM,CAAC,MAAM,+BAA+B,GAAsB;IAChE,YAAY;IACZ,OAAO;IACP,aAAa;IACb,MAAM;IACN,QAAQ;IACR,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,iBAAiB;IACjB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB;IAChB,aAAa;IACb,cAAc;IACd,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;IAClB,iBAAiB;IACjB,iBAAiB;IACjB,cAAc;IACd,qBAAqB;IACrB,cAAc;IACd,YAAY;IACZ,kBAAkB;IAClB,OAAO;IACP,MAAM;IACN,cAAc;IACd,WAAW;IACX,WAAW;IACX,YAAY;CACb,CAAC"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classification of the `WorkflowDefinition` field surface (issue #2326,
|
|
3
|
+
* Phase 1 of #1976).
|
|
4
|
+
*
|
|
5
|
+
* Purpose: give the CLI a mechanical trip-wire for the drift that keeps
|
|
6
|
+
* happening — the server grows a `[workflow]`-level config field (`syncCallable`
|
|
7
|
+
* #807, `accessRule` #571, `runAs` #1081, `capabilities` #1172, `lock` #1518)
|
|
8
|
+
* and the CLI silently drops it on `sync push` / `sync pull`. Every field of the
|
|
9
|
+
* `WorkflowDefinition` model must appear in exactly one of the three groups
|
|
10
|
+
* below. The generated artifact `generated-workflow-model-fields.ts` carries the
|
|
11
|
+
* model's real field list (parsed from `models.yaml` at build time), and
|
|
12
|
+
* `cli/tests/unit/workflow-field-descriptor-drift-guard.test.ts` asserts
|
|
13
|
+
*
|
|
14
|
+
* synced ∪ structural ∪ internal === the model's fields
|
|
15
|
+
*
|
|
16
|
+
* so a new field hard-fails the guard until someone classifies it.
|
|
17
|
+
*
|
|
18
|
+
* ── Scope: declarative classification and coverage ONLY ──────────────────
|
|
19
|
+
* Decision of record (#1976, 2026-07-23): this table records WHICH fields
|
|
20
|
+
* exist, whether each is synced / structural / internal, and its `[workflow]`
|
|
21
|
+
* TOML key. Anything with real BEHAVIOR gets an explicit per-field handler or
|
|
22
|
+
* stays outside the table. In particular this file deliberately does NOT encode
|
|
23
|
+
* as boolean knobs:
|
|
24
|
+
* - the schema fields' native-TOML-table-vs-JSON-string parsing
|
|
25
|
+
* (`buildWorkflowPayloadFromToml` / `safeJsonParse` own that),
|
|
26
|
+
* - `syncCallable`'s deferred second PATCH on update (#807 — `applyWorkflowBody`
|
|
27
|
+
* owns that),
|
|
28
|
+
* - the `metadataManifest` (#1304) and `expr.cel` (#1614) structural side
|
|
29
|
+
* channels, which are attached alongside the steps write and are not
|
|
30
|
+
* `[workflow]`-table keys at all.
|
|
31
|
+
* `cli/src/lib/app-settings-descriptor.ts` is the shape being matched:
|
|
32
|
+
* deliberately narrow.
|
|
33
|
+
*
|
|
34
|
+
* ── What Phase 1 does and does not do ───────────────────────────────────
|
|
35
|
+
* Phase 1 (this file) is the guard only. Making the push builder
|
|
36
|
+
* (`workflow-payload.ts`) and the pull serializer (`serializeWorkflow` in
|
|
37
|
+
* `commands/sync.ts`) *consume* this table is Phase 2 (#2327).
|
|
38
|
+
* `synced` therefore means "belongs in the `[workflow]` TOML table", NOT
|
|
39
|
+
* "already round-trips" — see `SYNCED_NOT_YET_WIRED` below.
|
|
40
|
+
*/
|
|
41
|
+
/** Value shape of a synced `[workflow]` key. Descriptive; behavior lives in the handlers. */
|
|
42
|
+
export type WorkflowFieldType = "string" | "number" | "boolean" | "string[]" | "json";
|
|
43
|
+
export interface WorkflowFieldDescriptor {
|
|
44
|
+
/** `WorkflowDefinition` model field name === the server payload key. */
|
|
45
|
+
field: string;
|
|
46
|
+
/** Key under the `[workflow]` table in workflow TOML (usually === `field`). */
|
|
47
|
+
tomlKey: string;
|
|
48
|
+
/** Value shape, for the Phase 2 handlers and for documentation. */
|
|
49
|
+
type: WorkflowFieldType;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* The author-facing `[workflow]`-table config fields — the ones a workflow
|
|
53
|
+
* author manages as code and the CLI must round-trip.
|
|
54
|
+
*/
|
|
55
|
+
export declare const WORKFLOW_FIELD_DESCRIPTOR: readonly WorkflowFieldDescriptor[];
|
|
56
|
+
/**
|
|
57
|
+
* Fields that ARE author-controlled but do not live in the `[workflow]` table —
|
|
58
|
+
* they travel through their own structural channel. Kept distinct from
|
|
59
|
+
* `WORKFLOW_FIELDS_INTERNAL` so "internal" keeps meaning "not author-facing".
|
|
60
|
+
*/
|
|
61
|
+
export declare const WORKFLOW_FIELDS_STRUCTURAL: ReadonlySet<string>;
|
|
62
|
+
/**
|
|
63
|
+
* Fields the server owns: identity, ownership, timestamps, computed pointers,
|
|
64
|
+
* and the deprecated draft/revision slot. None of these are ever sent by the
|
|
65
|
+
* CLI, and none belong in workflow TOML.
|
|
66
|
+
*/
|
|
67
|
+
export declare const WORKFLOW_FIELDS_INTERNAL: ReadonlySet<string>;
|
|
68
|
+
/**
|
|
69
|
+
* Synced fields the CLI does NOT round-trip yet — Phase 2 (#2327) wires them.
|
|
70
|
+
* Recorded explicitly so "classified" is never mistaken for "implemented".
|
|
71
|
+
* `lock` was wired by #1972; `templateMissingMarker` was removed from the
|
|
72
|
+
* platform by #2643, so the set is now empty.
|
|
73
|
+
*/
|
|
74
|
+
export declare const SYNCED_NOT_YET_WIRED: ReadonlySet<string>;
|
|
75
|
+
/** Descriptor `field` names, for coverage/parity checks. */
|
|
76
|
+
export declare const WORKFLOW_SYNCED_FIELDS: ReadonlySet<string>;
|
|
77
|
+
/** Look up a synced field's descriptor by model field name. */
|
|
78
|
+
export declare function getWorkflowFieldDescriptor(field: string): WorkflowFieldDescriptor | undefined;
|
|
79
|
+
/**
|
|
80
|
+
* Model fields that are classified in NONE of synced / structural / internal —
|
|
81
|
+
* i.e. a field someone added to `models.yaml` without deciding how the CLI
|
|
82
|
+
* treats it. Non-empty is a hard failure in the drift guard.
|
|
83
|
+
*/
|
|
84
|
+
export declare function findUnclassifiedWorkflowFields(modelFields: readonly string[]): string[];
|
|
85
|
+
/**
|
|
86
|
+
* Classifications that no longer correspond to a model field — i.e. a field
|
|
87
|
+
* removed from `models.yaml` while the CLI still classifies it. Also a hard
|
|
88
|
+
* failure: a stale classification must not silently pass, or the coverage
|
|
89
|
+
* claim quietly stops meaning anything.
|
|
90
|
+
*/
|
|
91
|
+
export declare function findStaleWorkflowClassifications(modelFields: readonly string[]): string[];
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classification of the `WorkflowDefinition` field surface (issue #2326,
|
|
3
|
+
* Phase 1 of #1976).
|
|
4
|
+
*
|
|
5
|
+
* Purpose: give the CLI a mechanical trip-wire for the drift that keeps
|
|
6
|
+
* happening — the server grows a `[workflow]`-level config field (`syncCallable`
|
|
7
|
+
* #807, `accessRule` #571, `runAs` #1081, `capabilities` #1172, `lock` #1518)
|
|
8
|
+
* and the CLI silently drops it on `sync push` / `sync pull`. Every field of the
|
|
9
|
+
* `WorkflowDefinition` model must appear in exactly one of the three groups
|
|
10
|
+
* below. The generated artifact `generated-workflow-model-fields.ts` carries the
|
|
11
|
+
* model's real field list (parsed from `models.yaml` at build time), and
|
|
12
|
+
* `cli/tests/unit/workflow-field-descriptor-drift-guard.test.ts` asserts
|
|
13
|
+
*
|
|
14
|
+
* synced ∪ structural ∪ internal === the model's fields
|
|
15
|
+
*
|
|
16
|
+
* so a new field hard-fails the guard until someone classifies it.
|
|
17
|
+
*
|
|
18
|
+
* ── Scope: declarative classification and coverage ONLY ──────────────────
|
|
19
|
+
* Decision of record (#1976, 2026-07-23): this table records WHICH fields
|
|
20
|
+
* exist, whether each is synced / structural / internal, and its `[workflow]`
|
|
21
|
+
* TOML key. Anything with real BEHAVIOR gets an explicit per-field handler or
|
|
22
|
+
* stays outside the table. In particular this file deliberately does NOT encode
|
|
23
|
+
* as boolean knobs:
|
|
24
|
+
* - the schema fields' native-TOML-table-vs-JSON-string parsing
|
|
25
|
+
* (`buildWorkflowPayloadFromToml` / `safeJsonParse` own that),
|
|
26
|
+
* - `syncCallable`'s deferred second PATCH on update (#807 — `applyWorkflowBody`
|
|
27
|
+
* owns that),
|
|
28
|
+
* - the `metadataManifest` (#1304) and `expr.cel` (#1614) structural side
|
|
29
|
+
* channels, which are attached alongside the steps write and are not
|
|
30
|
+
* `[workflow]`-table keys at all.
|
|
31
|
+
* `cli/src/lib/app-settings-descriptor.ts` is the shape being matched:
|
|
32
|
+
* deliberately narrow.
|
|
33
|
+
*
|
|
34
|
+
* ── What Phase 1 does and does not do ───────────────────────────────────
|
|
35
|
+
* Phase 1 (this file) is the guard only. Making the push builder
|
|
36
|
+
* (`workflow-payload.ts`) and the pull serializer (`serializeWorkflow` in
|
|
37
|
+
* `commands/sync.ts`) *consume* this table is Phase 2 (#2327).
|
|
38
|
+
* `synced` therefore means "belongs in the `[workflow]` TOML table", NOT
|
|
39
|
+
* "already round-trips" — see `SYNCED_NOT_YET_WIRED` below.
|
|
40
|
+
*/
|
|
41
|
+
/**
|
|
42
|
+
* The author-facing `[workflow]`-table config fields — the ones a workflow
|
|
43
|
+
* author manages as code and the CLI must round-trip.
|
|
44
|
+
*/
|
|
45
|
+
export const WORKFLOW_FIELD_DESCRIPTOR = [
|
|
46
|
+
{ field: "name", tomlKey: "name", type: "string" },
|
|
47
|
+
{ field: "status", tomlKey: "status", type: "string" },
|
|
48
|
+
{ field: "description", tomlKey: "description", type: "string" },
|
|
49
|
+
// JSON Schema objects. TOML may present them as an inline table OR as a
|
|
50
|
+
// JSON string; the push builder owns that parse (not a knob here).
|
|
51
|
+
{ field: "inputSchema", tomlKey: "inputSchema", type: "json" },
|
|
52
|
+
{ field: "outputSchema", tomlKey: "outputSchema", type: "json" },
|
|
53
|
+
{ field: "perUserMaxRunning", tomlKey: "perUserMaxRunning", type: "number" },
|
|
54
|
+
{ field: "perUserMaxQueued", tomlKey: "perUserMaxQueued", type: "number" },
|
|
55
|
+
{ field: "perAppMaxRunning", tomlKey: "perAppMaxRunning", type: "number" },
|
|
56
|
+
{ field: "perAppMaxQueued", tomlKey: "perAppMaxQueued", type: "number" },
|
|
57
|
+
{ field: "queueTtlSeconds", tomlKey: "queueTtlSeconds", type: "number" },
|
|
58
|
+
{ field: "dequeueOrder", tomlKey: "dequeueOrder", type: "string" },
|
|
59
|
+
{
|
|
60
|
+
field: "requiresClientApply",
|
|
61
|
+
tomlKey: "requiresClientApply",
|
|
62
|
+
type: "boolean",
|
|
63
|
+
},
|
|
64
|
+
// Create-only on the wire (#807: update sends it as a deferred second PATCH
|
|
65
|
+
// once the new steps are live). That sequencing is the payload builder's job.
|
|
66
|
+
{ field: "syncCallable", tomlKey: "syncCallable", type: "boolean" },
|
|
67
|
+
{ field: "accessRule", tomlKey: "accessRule", type: "string" },
|
|
68
|
+
{ field: "runAs", tomlKey: "runAs", type: "string" },
|
|
69
|
+
// #1518/#1972 — declarative run-scoped lock. `[workflow.lock]` inline table
|
|
70
|
+
// on the TOML side, JSON on the wire; validated server-side by
|
|
71
|
+
// `parseWorkflowLock` (decision of record #6: no client-side mirror validator).
|
|
72
|
+
{ field: "lock", tomlKey: "lock", type: "json" },
|
|
73
|
+
// #1078 Tier 1b — StringSetField on the model, string array in TOML/JSON.
|
|
74
|
+
{ field: "capabilities", tomlKey: "capabilities", type: "string[]" },
|
|
75
|
+
];
|
|
76
|
+
/**
|
|
77
|
+
* Fields that ARE author-controlled but do not live in the `[workflow]` table —
|
|
78
|
+
* they travel through their own structural channel. Kept distinct from
|
|
79
|
+
* `WORKFLOW_FIELDS_INTERNAL` so "internal" keeps meaning "not author-facing".
|
|
80
|
+
*/
|
|
81
|
+
export const WORKFLOW_FIELDS_STRUCTURAL = new Set([
|
|
82
|
+
// The workflow's identity. Comes from the TOML file name / `--key`, and is
|
|
83
|
+
// attached by the caller rather than spread from the `[workflow]` table.
|
|
84
|
+
"workflowKey",
|
|
85
|
+
// #1304 — JSON declared-access manifest, derived from the workflow's CEL
|
|
86
|
+
// fields and attached alongside the steps write, not typed by the author.
|
|
87
|
+
"metadataManifest",
|
|
88
|
+
]);
|
|
89
|
+
/**
|
|
90
|
+
* Fields the server owns: identity, ownership, timestamps, computed pointers,
|
|
91
|
+
* and the deprecated draft/revision slot. None of these are ever sent by the
|
|
92
|
+
* CLI, and none belong in workflow TOML.
|
|
93
|
+
*/
|
|
94
|
+
export const WORKFLOW_FIELDS_INTERNAL = new Set([
|
|
95
|
+
// Identity / ownership / timestamps — assigned by the server.
|
|
96
|
+
"workflowId",
|
|
97
|
+
"appId",
|
|
98
|
+
"createdBy",
|
|
99
|
+
"createdAt",
|
|
100
|
+
"modifiedAt",
|
|
101
|
+
// Pointer to the active WorkflowConfiguration — server-computed on publish.
|
|
102
|
+
"activeConfigId",
|
|
103
|
+
// DEPRECATED in models.yaml: the legacy revision + draft slot, kept for
|
|
104
|
+
// migration/backward compatibility. Server-managed; never author-authored.
|
|
105
|
+
"latestRevision",
|
|
106
|
+
"stepsR2Key",
|
|
107
|
+
"draftStepsR2Key",
|
|
108
|
+
"draftInputSchema",
|
|
109
|
+
"draftOutputSchema",
|
|
110
|
+
"draftModifiedAt",
|
|
111
|
+
]);
|
|
112
|
+
/**
|
|
113
|
+
* Synced fields the CLI does NOT round-trip yet — Phase 2 (#2327) wires them.
|
|
114
|
+
* Recorded explicitly so "classified" is never mistaken for "implemented".
|
|
115
|
+
* `lock` was wired by #1972; `templateMissingMarker` was removed from the
|
|
116
|
+
* platform by #2643, so the set is now empty.
|
|
117
|
+
*/
|
|
118
|
+
export const SYNCED_NOT_YET_WIRED = new Set([]);
|
|
119
|
+
/** Descriptor `field` names, for coverage/parity checks. */
|
|
120
|
+
export const WORKFLOW_SYNCED_FIELDS = new Set(WORKFLOW_FIELD_DESCRIPTOR.map((d) => d.field));
|
|
121
|
+
/** Look up a synced field's descriptor by model field name. */
|
|
122
|
+
export function getWorkflowFieldDescriptor(field) {
|
|
123
|
+
return WORKFLOW_FIELD_DESCRIPTOR.find((d) => d.field === field);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Model fields that are classified in NONE of synced / structural / internal —
|
|
127
|
+
* i.e. a field someone added to `models.yaml` without deciding how the CLI
|
|
128
|
+
* treats it. Non-empty is a hard failure in the drift guard.
|
|
129
|
+
*/
|
|
130
|
+
export function findUnclassifiedWorkflowFields(modelFields) {
|
|
131
|
+
return modelFields
|
|
132
|
+
.filter((f) => !WORKFLOW_SYNCED_FIELDS.has(f) &&
|
|
133
|
+
!WORKFLOW_FIELDS_STRUCTURAL.has(f) &&
|
|
134
|
+
!WORKFLOW_FIELDS_INTERNAL.has(f))
|
|
135
|
+
.sort();
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Classifications that no longer correspond to a model field — i.e. a field
|
|
139
|
+
* removed from `models.yaml` while the CLI still classifies it. Also a hard
|
|
140
|
+
* failure: a stale classification must not silently pass, or the coverage
|
|
141
|
+
* claim quietly stops meaning anything.
|
|
142
|
+
*/
|
|
143
|
+
export function findStaleWorkflowClassifications(modelFields) {
|
|
144
|
+
const known = new Set(modelFields);
|
|
145
|
+
return [
|
|
146
|
+
...WORKFLOW_SYNCED_FIELDS,
|
|
147
|
+
...WORKFLOW_FIELDS_STRUCTURAL,
|
|
148
|
+
...WORKFLOW_FIELDS_INTERNAL,
|
|
149
|
+
]
|
|
150
|
+
.filter((f) => !known.has(f))
|
|
151
|
+
.sort();
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=workflow-field-descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-field-descriptor.js","sourceRoot":"","sources":["../../../src/lib/workflow-field-descriptor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "primitive-admin",
|
|
3
|
-
"version": "1.2.0-alpha.
|
|
3
|
+
"version": "1.2.0-alpha.6",
|
|
4
4
|
"description": "CLI for administering Primitive applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"commander": "^12.1.0",
|
|
59
59
|
"esbuild": "0.25.12",
|
|
60
60
|
"inquirer": "^9.2.12",
|
|
61
|
-
"js-bao": "0.12.0-alpha.
|
|
61
|
+
"js-bao": "0.12.0-alpha.6",
|
|
62
62
|
"mime-types": "^2.1.35",
|
|
63
63
|
"open": "^10.0.3",
|
|
64
64
|
"smol-toml": "1.7.0",
|