primitive-admin 1.1.0-alpha.80 → 1.1.0-alpha.82
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/README.md +5 -5
- package/assets/skill/skills/primitive-platform/SKILL.md +23 -11
- package/dist/bin/primitive.js +14 -15
- package/dist/bin/primitive.js.map +1 -1
- package/dist/src/commands/databases.js +3 -5
- package/dist/src/commands/databases.js.map +1 -1
- package/dist/src/commands/documents.js +163 -21
- package/dist/src/commands/documents.js.map +1 -1
- package/dist/src/commands/functions.js +736 -12
- package/dist/src/commands/functions.js.map +1 -1
- package/dist/src/commands/prompts.js +19 -2
- package/dist/src/commands/prompts.js.map +1 -1
- package/dist/src/commands/sync-app-settings.js +2 -2
- package/dist/src/commands/sync-app-settings.js.map +1 -1
- package/dist/src/commands/sync.js +29 -27
- package/dist/src/commands/sync.js.map +1 -1
- package/dist/src/commands/webhooks.d.ts +29 -0
- package/dist/src/commands/webhooks.js +118 -54
- package/dist/src/commands/webhooks.js.map +1 -1
- package/dist/src/commands/workflows.d.ts +1 -29
- package/dist/src/commands/workflows.js +8 -109
- package/dist/src/commands/workflows.js.map +1 -1
- package/dist/src/lib/api-client.d.ts +119 -3
- package/dist/src/lib/api-client.js +166 -5
- package/dist/src/lib/api-client.js.map +1 -1
- package/dist/src/lib/config-object-descriptor.js +12 -4
- package/dist/src/lib/config-object-descriptor.js.map +1 -1
- package/dist/src/lib/env-resolver-core.d.ts +24 -19
- package/dist/src/lib/env-resolver-core.js +35 -54
- package/dist/src/lib/env-resolver-core.js.map +1 -1
- package/dist/src/lib/function-db-types.js +15 -0
- package/dist/src/lib/function-db-types.js.map +1 -1
- package/dist/src/lib/function-document-types.js +4 -0
- package/dist/src/lib/function-document-types.js.map +1 -1
- package/dist/src/lib/function-log-tail.d.ts +51 -2
- package/dist/src/lib/function-log-tail.js +160 -13
- package/dist/src/lib/function-log-tail.js.map +1 -1
- package/dist/src/lib/function-run.d.ts +271 -0
- package/dist/src/lib/function-run.js +378 -0
- package/dist/src/lib/function-run.js.map +1 -0
- package/dist/src/lib/function-schema-codegen.d.ts +28 -0
- package/dist/src/lib/function-schema-codegen.js +41 -10
- package/dist/src/lib/function-schema-codegen.js.map +1 -1
- package/dist/src/lib/function-sync.d.ts +9 -4
- package/dist/src/lib/function-sync.js +29 -7
- package/dist/src/lib/function-sync.js.map +1 -1
- package/dist/src/lib/generated-config-surfaces.d.ts +555 -19
- package/dist/src/lib/generated-config-surfaces.js +1826 -80
- package/dist/src/lib/generated-config-surfaces.js.map +1 -1
- package/dist/src/lib/generated-sdk-types.d.ts +1 -1
- package/dist/src/lib/generated-sdk-types.js +1 -1
- package/dist/src/lib/generated-sdk-types.js.map +1 -1
- package/dist/src/lib/local-test-cases.js +2 -2
- package/dist/src/lib/local-test-cases.js.map +1 -1
- package/dist/src/lib/prompt-schema-codegen.d.ts +94 -0
- package/dist/src/lib/prompt-schema-codegen.js +212 -0
- package/dist/src/lib/prompt-schema-codegen.js.map +1 -0
- package/dist/src/lib/snapshot-manifest-layout.d.ts +61 -0
- package/dist/src/lib/snapshot-manifest-layout.js +70 -0
- package/dist/src/lib/snapshot-manifest-layout.js.map +1 -0
- package/dist/src/lib/step-run-table.d.ts +43 -0
- package/dist/src/lib/step-run-table.js +129 -0
- package/dist/src/lib/step-run-table.js.map +1 -0
- package/dist/src/lib/swift-codegen/banners.d.ts +18 -0
- package/dist/src/lib/swift-codegen/banners.js +19 -0
- package/dist/src/lib/swift-codegen/banners.js.map +1 -0
- package/dist/src/lib/swift-codegen/dbGenerator.js +11 -7
- package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -1
- package/dist/src/lib/swift-codegen/functionGenerator.d.ts +125 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js +423 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -0
- package/dist/src/lib/swift-codegen/generator.d.ts +6 -0
- package/dist/src/lib/swift-codegen/generator.js +21 -10
- package/dist/src/lib/swift-codegen/generator.js.map +1 -1
- package/dist/src/lib/swift-codegen/schemaToSwift.d.ts +15 -0
- package/dist/src/lib/swift-codegen/schemaToSwift.js +21 -4
- package/dist/src/lib/swift-codegen/schemaToSwift.js.map +1 -1
- package/dist/src/lib/sync-paths.d.ts +19 -14
- package/dist/src/lib/sync-paths.js +26 -24
- package/dist/src/lib/sync-paths.js.map +1 -1
- package/dist/src/lib/webhook-deliver.d.ts +209 -0
- package/dist/src/lib/webhook-deliver.js +519 -0
- package/dist/src/lib/webhook-deliver.js.map +1 -0
- package/dist/src/lib/workflow-toml-validator.d.ts +9 -5
- package/dist/src/lib/workflow-toml-validator.js +18 -10
- package/dist/src/lib/workflow-toml-validator.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,423 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `functions codegen --lang swift` — the third CLI Swift generator (#3344).
|
|
3
|
+
*
|
|
4
|
+
* The Swift counterpart of `function-schema-codegen.ts`'s TypeScript invoker,
|
|
5
|
+
* and the sibling of `generator.ts` (workflows) and `dbGenerator.ts`
|
|
6
|
+
* (database types). Reads the SAME `functions/<key>.toml` files and emits one
|
|
7
|
+
* `<key>.generated.swift` per function carrying:
|
|
8
|
+
*
|
|
9
|
+
* - `<Key>Input` / `<Key>Output`, rendered from the declared schemas by the
|
|
10
|
+
* shared `renderSwiftRootType` — the same drift-guarded descriptor the
|
|
11
|
+
* server validates with, so a generated Swift type can never promise a
|
|
12
|
+
* shape an invocation door rejects; and
|
|
13
|
+
* - `<Key>Function`, a typed invoker struct whose VERB SET is fixed by the
|
|
14
|
+
* function's mode, plus a free-function factory `<key>(client)`.
|
|
15
|
+
*
|
|
16
|
+
* ── Nothing about the function is re-derived here ────────────────────────
|
|
17
|
+
*
|
|
18
|
+
* Key, mode, schemas and `inputRequired` all come from
|
|
19
|
+
* `describeFunctionSchemas` — the IR the TypeScript invoker reads — so the two
|
|
20
|
+
* clients can never disagree on which verbs a function exposes or whether its
|
|
21
|
+
* input is required. Only Swift naming (through the workflow emitter's
|
|
22
|
+
* helpers) and Swift rendering happen in this file.
|
|
23
|
+
*
|
|
24
|
+
* ── Verbs by mode ────────────────────────────────────────────────────────
|
|
25
|
+
*
|
|
26
|
+
* A request function gets exactly `invoke`. A task function gets exactly
|
|
27
|
+
* `start`, `getStatus`, `waitFor` and `terminate`. Calling the wrong verb is
|
|
28
|
+
* then a compile error rather than a `functionModeMismatch` at runtime — the
|
|
29
|
+
* same rule the TS factory applies.
|
|
30
|
+
*
|
|
31
|
+
* Every parameter besides `input` mirrors the generic `FunctionsAPI` overload
|
|
32
|
+
* it delegates to, label, type and default alike — `meta: [String: Any]?`
|
|
33
|
+
* included. The goldens are app-target code, outside the client's `Any`
|
|
34
|
+
* budget scan, and the workflow goldens set that precedent. The tables below
|
|
35
|
+
* are the single source of those parameter lists, and
|
|
36
|
+
* `swift-codegen-function-signature-parity-3344.test.ts` ties them to the
|
|
37
|
+
* client's actual declarations so an option added to `FunctionsAPI` later
|
|
38
|
+
* cannot leave every generated invoker silently behind.
|
|
39
|
+
*
|
|
40
|
+
* ── The nullable root input ──────────────────────────────────────────────
|
|
41
|
+
*
|
|
42
|
+
* The generic overload maps a `nil` input to an OMITTED `rootInput`, which the
|
|
43
|
+
* server defaults to `{}` — rejected by a schema that allows only a string or
|
|
44
|
+
* null. So when the rendered root input type is itself Optional, the generated
|
|
45
|
+
* body BRANCHES: a value delegates the typed value directly (keeping
|
|
46
|
+
* `JSONCoding`'s exact `Int64` path), and `nil` delegates `JSONValue.null`,
|
|
47
|
+
* which is a non-nil `Encodable` and reaches the wire as `rootInput: null`
|
|
48
|
+
* through the same forwarding path a scalar root already uses. Proved live
|
|
49
|
+
* before this emitter was written (#3344 step 0).
|
|
50
|
+
*/
|
|
51
|
+
import * as path from "path";
|
|
52
|
+
import { writeOrCheckGeneratedFiles, } from "../codegen-shared/generatedFiles.js";
|
|
53
|
+
import { fingerprintToml } from "../db-codegen/dbFingerprint.js";
|
|
54
|
+
import { describeFunctionSchemas, describeFunctionSchemaSet, } from "../function-schema-codegen.js";
|
|
55
|
+
import { renderSwiftRootTypeDetail, SwiftCodegenError } from "./schemaToSwift.js";
|
|
56
|
+
import { workflowSwiftFactoryName } from "./swiftNaming.js";
|
|
57
|
+
import { GENERATED_SWIFT_FILE_SUFFIX, SWIFT_BANNER_PREFIX, swiftKeyLiteral, workflowSwiftTypeBaseName, } from "./generator.js";
|
|
58
|
+
import { DB_SWIFT_BANNER_PREFIXES } from "./dbGenerator.js";
|
|
59
|
+
import { FUNCTION_SWIFT_BANNER_PREFIX } from "./banners.js";
|
|
60
|
+
import { assertNoForeignGeneratorSymbolCollision, parseTopLevelSwiftSymbols, } from "./siblingSymbols.js";
|
|
61
|
+
export { FUNCTION_SWIFT_BANNER_PREFIX };
|
|
62
|
+
/** The Swift module the generated types + invoker import. */
|
|
63
|
+
const CLIENT_MODULE = "JsBaoClient";
|
|
64
|
+
const INDENT = " ";
|
|
65
|
+
/** Banners owned by the OTHER two Swift generators, in every spelling. */
|
|
66
|
+
const FOREIGN_SWIFT_BANNERS = [SWIFT_BANNER_PREFIX, ...DB_SWIFT_BANNER_PREFIXES];
|
|
67
|
+
const INPUT_PARAMETER = {
|
|
68
|
+
label: "input",
|
|
69
|
+
type: null,
|
|
70
|
+
defaultValue: null,
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* The verb tables. `invoke` is a request function's whole surface; the other
|
|
74
|
+
* four are a task function's.
|
|
75
|
+
*/
|
|
76
|
+
export const FUNCTION_INVOKER_VERBS = {
|
|
77
|
+
invoke: {
|
|
78
|
+
verb: "invoke",
|
|
79
|
+
comparedAgainst: { kind: "overload", method: "invoke", dropLabels: ["functionKey"] },
|
|
80
|
+
parameters: [
|
|
81
|
+
INPUT_PARAMETER,
|
|
82
|
+
{ label: "contextDocId", type: "String?", defaultValue: "nil" },
|
|
83
|
+
{ label: "meta", type: "[String: Any]?", defaultValue: "nil" },
|
|
84
|
+
{ label: "timeout", type: "TimeInterval?", defaultValue: "nil" },
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
start: {
|
|
88
|
+
verb: "start",
|
|
89
|
+
comparedAgainst: { kind: "overload", method: "start", dropLabels: ["functionKey"] },
|
|
90
|
+
parameters: [
|
|
91
|
+
INPUT_PARAMETER,
|
|
92
|
+
{ label: "runKey", type: "String?", defaultValue: "nil" },
|
|
93
|
+
{ label: "contextDocId", type: "String?", defaultValue: "nil" },
|
|
94
|
+
{ label: "meta", type: "[String: Any]?", defaultValue: "nil" },
|
|
95
|
+
],
|
|
96
|
+
},
|
|
97
|
+
getStatus: {
|
|
98
|
+
verb: "getStatus",
|
|
99
|
+
comparedAgainst: { kind: "overload", method: "getStatus", dropLabels: [] },
|
|
100
|
+
parameters: [{ label: "runId", type: "String", defaultValue: null }],
|
|
101
|
+
},
|
|
102
|
+
waitFor: {
|
|
103
|
+
verb: "waitFor",
|
|
104
|
+
// `as:` is the output witness the generated method binds itself.
|
|
105
|
+
comparedAgainst: { kind: "overload", method: "waitFor", dropLabels: ["as"] },
|
|
106
|
+
parameters: [
|
|
107
|
+
{ label: "runId", type: "String", defaultValue: null },
|
|
108
|
+
{ label: "options", type: "WaitForWorkflowOptions?", defaultValue: "nil" },
|
|
109
|
+
],
|
|
110
|
+
},
|
|
111
|
+
terminate: {
|
|
112
|
+
verb: "terminate",
|
|
113
|
+
comparedAgainst: { kind: "ref", type: "FunctionRunRef", dropLabels: ["functionKey"] },
|
|
114
|
+
parameters: [
|
|
115
|
+
{ label: "runKey", type: "String", defaultValue: null },
|
|
116
|
+
{ label: "contextDocId", type: "String?", defaultValue: "nil" },
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* The verbs a mode exposes, and nothing else.
|
|
122
|
+
*
|
|
123
|
+
* #3454 — `any` is the default and exposes BOTH sets, because the runner is
|
|
124
|
+
* chosen at call time; each lock exposes only its own, so the wrong verb on a
|
|
125
|
+
* locked function is a compile error rather than a runtime refusal.
|
|
126
|
+
*/
|
|
127
|
+
export const FUNCTION_INVOKER_VERBS_BY_MODE = {
|
|
128
|
+
request: ["invoke"],
|
|
129
|
+
task: ["start", "getStatus", "waitFor", "terminate"],
|
|
130
|
+
any: ["invoke", "start", "getStatus", "waitFor", "terminate"],
|
|
131
|
+
};
|
|
132
|
+
function parseFunction(source) {
|
|
133
|
+
const ir = describeFunctionSchemas(source);
|
|
134
|
+
const base = workflowSwiftTypeBaseName(ir.key);
|
|
135
|
+
const inputTypeName = `${base}Input`;
|
|
136
|
+
const outputTypeName = `${base}Output`;
|
|
137
|
+
// The banner and every schema failure name the FILE, which an authored
|
|
138
|
+
// `[function] key` can spell differently from the key (E1).
|
|
139
|
+
const sourceFile = ir.fileLabel;
|
|
140
|
+
const input = renderSwiftRootTypeDetail(inputTypeName, ir.inputSchema, { sourceFile });
|
|
141
|
+
const output = renderSwiftRootTypeDetail(outputTypeName, ir.outputSchema, { sourceFile });
|
|
142
|
+
return {
|
|
143
|
+
key: ir.key,
|
|
144
|
+
fileLabel: ir.fileLabel,
|
|
145
|
+
base,
|
|
146
|
+
inputTypeName,
|
|
147
|
+
outputTypeName,
|
|
148
|
+
structName: `${base}Function`,
|
|
149
|
+
factoryName: workflowSwiftFactoryName(ir.key),
|
|
150
|
+
mode: ir.mode,
|
|
151
|
+
inputRequired: ir.inputRequired,
|
|
152
|
+
inputOptionalRoot: input.optional,
|
|
153
|
+
inputDecl: input.decl,
|
|
154
|
+
outputDecl: output.decl,
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* The `input:` parameter declaration. An already-Optional root type is never
|
|
159
|
+
* wrapped a second time (spec decision 6) — the alias carries the optionality,
|
|
160
|
+
* and the branching body below gives its `nil` the meaning the schema gives it.
|
|
161
|
+
*/
|
|
162
|
+
function inputParameter(fn) {
|
|
163
|
+
if (fn.inputOptionalRoot) {
|
|
164
|
+
return fn.inputRequired
|
|
165
|
+
? `input: ${fn.inputTypeName}`
|
|
166
|
+
: `input: ${fn.inputTypeName} = nil`;
|
|
167
|
+
}
|
|
168
|
+
return fn.inputRequired
|
|
169
|
+
? `input: ${fn.inputTypeName}`
|
|
170
|
+
: `input: ${fn.inputTypeName}? = nil`;
|
|
171
|
+
}
|
|
172
|
+
/** `label: type = default` for a non-input parameter, from the verb table. */
|
|
173
|
+
function renderParameter(parameter) {
|
|
174
|
+
const withDefault = parameter.defaultValue === null ? "" : ` = ${parameter.defaultValue}`;
|
|
175
|
+
return `${parameter.label}: ${parameter.type}${withDefault}`;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* The delegation body for a verb that forwards `input`. When the root input
|
|
179
|
+
* type is Optional the body branches so a `nil` reaches the wire as the
|
|
180
|
+
* explicit `rootInput: null` the declaration allows, instead of being dropped
|
|
181
|
+
* into the client's "no input" path (which the server turns into `{}`).
|
|
182
|
+
*/
|
|
183
|
+
function renderForwardingBody(fn, indentLevel, call) {
|
|
184
|
+
const I = INDENT.repeat(indentLevel);
|
|
185
|
+
if (!fn.inputOptionalRoot)
|
|
186
|
+
return call("input", indentLevel);
|
|
187
|
+
return [
|
|
188
|
+
`${I}// \`${fn.inputTypeName}\` is Optional, so \`nil\` is the JSON \`null\` the`,
|
|
189
|
+
`${I}// declared schema allows — not "no input". Delegating \`nil\` would omit`,
|
|
190
|
+
`${I}// \`rootInput\`, which the server defaults to \`{}\`; \`JSONValue.null\``,
|
|
191
|
+
`${I}// travels as the null through the same path a scalar root uses.`,
|
|
192
|
+
`${I}if let input {`,
|
|
193
|
+
...call("input", indentLevel + 1),
|
|
194
|
+
`${I}}`,
|
|
195
|
+
...call("JSONValue.null", indentLevel),
|
|
196
|
+
];
|
|
197
|
+
}
|
|
198
|
+
function renderInvoke(fn) {
|
|
199
|
+
const keyLiteral = swiftKeyLiteral(fn.key);
|
|
200
|
+
const table = FUNCTION_INVOKER_VERBS.invoke;
|
|
201
|
+
const I = INDENT;
|
|
202
|
+
const call = (inputExpr, level) => {
|
|
203
|
+
const B = INDENT.repeat(level);
|
|
204
|
+
const keyword = fn.inputOptionalRoot ? "return try await " : "try await ";
|
|
205
|
+
return [
|
|
206
|
+
`${B}${keyword}client.functions.invoke(`,
|
|
207
|
+
`${B}${INDENT}${keyLiteral},`,
|
|
208
|
+
`${B}${INDENT}input: ${inputExpr},`,
|
|
209
|
+
`${B}${INDENT}contextDocId: contextDocId,`,
|
|
210
|
+
`${B}${INDENT}meta: meta,`,
|
|
211
|
+
`${B}${INDENT}timeout: timeout`,
|
|
212
|
+
`${B})`,
|
|
213
|
+
];
|
|
214
|
+
};
|
|
215
|
+
return [
|
|
216
|
+
``,
|
|
217
|
+
`${I}/// Invoke the \`${fn.key}\` request function and wait for its result.`,
|
|
218
|
+
`${I}public func invoke(`,
|
|
219
|
+
`${I}${I}${inputParameter(fn)},`,
|
|
220
|
+
...table.parameters
|
|
221
|
+
.slice(1)
|
|
222
|
+
.map((p, index, all) => `${I}${I}${renderParameter(p)}${index === all.length - 1 ? "" : ","}`),
|
|
223
|
+
`${I}) async throws -> FunctionResult<${fn.outputTypeName}> {`,
|
|
224
|
+
...renderForwardingBody(fn, 2, call),
|
|
225
|
+
`${I}}`,
|
|
226
|
+
];
|
|
227
|
+
}
|
|
228
|
+
function renderStart(fn) {
|
|
229
|
+
const keyLiteral = swiftKeyLiteral(fn.key);
|
|
230
|
+
const table = FUNCTION_INVOKER_VERBS.start;
|
|
231
|
+
const I = INDENT;
|
|
232
|
+
const call = (inputExpr, level) => {
|
|
233
|
+
const B = INDENT.repeat(level);
|
|
234
|
+
const keyword = fn.inputOptionalRoot ? "return try await " : "try await ";
|
|
235
|
+
return [
|
|
236
|
+
`${B}${keyword}client.functions.start(`,
|
|
237
|
+
`${B}${INDENT}${keyLiteral},`,
|
|
238
|
+
`${B}${INDENT}input: ${inputExpr},`,
|
|
239
|
+
`${B}${INDENT}runKey: runKey,`,
|
|
240
|
+
`${B}${INDENT}contextDocId: contextDocId,`,
|
|
241
|
+
`${B}${INDENT}meta: meta`,
|
|
242
|
+
`${B})`,
|
|
243
|
+
];
|
|
244
|
+
};
|
|
245
|
+
return [
|
|
246
|
+
``,
|
|
247
|
+
`${I}/// Start the \`${fn.key}\` task function; returns the run handle.`,
|
|
248
|
+
`${I}@discardableResult`,
|
|
249
|
+
`${I}public func start(`,
|
|
250
|
+
`${I}${I}${inputParameter(fn)},`,
|
|
251
|
+
...table.parameters
|
|
252
|
+
.slice(1)
|
|
253
|
+
.map((p, index, all) => `${I}${I}${renderParameter(p)}${index === all.length - 1 ? "" : ","}`),
|
|
254
|
+
`${I}) async throws -> FunctionStartResult {`,
|
|
255
|
+
...renderForwardingBody(fn, 2, call),
|
|
256
|
+
`${I}}`,
|
|
257
|
+
];
|
|
258
|
+
}
|
|
259
|
+
function renderTaskPollers(fn) {
|
|
260
|
+
const I = INDENT;
|
|
261
|
+
const keyLiteral = swiftKeyLiteral(fn.key);
|
|
262
|
+
const waitFor = FUNCTION_INVOKER_VERBS.waitFor;
|
|
263
|
+
const terminate = FUNCTION_INVOKER_VERBS.terminate;
|
|
264
|
+
return [
|
|
265
|
+
``,
|
|
266
|
+
`${I}/// A run's status, with \`output\` bound to \`${fn.outputTypeName}\`.`,
|
|
267
|
+
`${I}public func getStatus(${renderParameter(FUNCTION_INVOKER_VERBS.getStatus.parameters[0])}) async throws -> WorkflowStatus<${fn.outputTypeName}> {`,
|
|
268
|
+
`${I}${I}try await client.functions.getStatus(runId: runId)`,
|
|
269
|
+
`${I}}`,
|
|
270
|
+
``,
|
|
271
|
+
`${I}/// Wait for a run to settle; \`output\` is bound to \`${fn.outputTypeName}\`.`,
|
|
272
|
+
`${I}public func waitFor(`,
|
|
273
|
+
...waitFor.parameters.map((p, index, all) => `${I}${I}${renderParameter(p)}${index === all.length - 1 ? "" : ","}`),
|
|
274
|
+
`${I}) async throws -> WaitForResult<${fn.outputTypeName}> {`,
|
|
275
|
+
`${I}${I}try await client.functions.waitFor(`,
|
|
276
|
+
`${I}${I}${I}runId: runId,`,
|
|
277
|
+
`${I}${I}${I}as: ${fn.outputTypeName}.self,`,
|
|
278
|
+
`${I}${I}${I}options: options`,
|
|
279
|
+
`${I}${I})`,
|
|
280
|
+
`${I}}`,
|
|
281
|
+
``,
|
|
282
|
+
`${I}/// Terminate a run; \`output\` is bound to \`${fn.outputTypeName}\` (a terminated`,
|
|
283
|
+
`${I}/// run can carry partial output). The function key is pinned.`,
|
|
284
|
+
`${I}@discardableResult`,
|
|
285
|
+
`${I}public func terminate(`,
|
|
286
|
+
...terminate.parameters.map((p, index, all) => `${I}${I}${renderParameter(p)}${index === all.length - 1 ? "" : ","}`),
|
|
287
|
+
`${I}) async throws -> WorkflowStatus<${fn.outputTypeName}> {`,
|
|
288
|
+
`${I}${I}try await client.functions.terminate(`,
|
|
289
|
+
`${I}${I}${I}FunctionRunRef(`,
|
|
290
|
+
`${I}${I}${I}${I}functionKey: ${keyLiteral},`,
|
|
291
|
+
`${I}${I}${I}${I}runKey: runKey,`,
|
|
292
|
+
`${I}${I}${I}${I}contextDocId: contextDocId`,
|
|
293
|
+
`${I}${I}${I})`,
|
|
294
|
+
`${I}${I})`,
|
|
295
|
+
`${I}}`,
|
|
296
|
+
];
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* The typed invoker struct + its free-function factory, with the verb set the
|
|
300
|
+
* mode fixes and nothing else.
|
|
301
|
+
*/
|
|
302
|
+
function renderInvoker(fn) {
|
|
303
|
+
const lines = [
|
|
304
|
+
`/// Typed invoker for the \`${fn.key}\` ${fn.mode} function. Binds`,
|
|
305
|
+
`/// \`${fn.inputTypeName}\` / \`${fn.outputTypeName}\` over the generic`,
|
|
306
|
+
`/// \`FunctionsAPI\` overloads. Obtain one with \`${fn.factoryName}(client)\`.`,
|
|
307
|
+
`public struct ${fn.structName}: Sendable {`,
|
|
308
|
+
`${INDENT}public let client: JsBaoClient`,
|
|
309
|
+
``,
|
|
310
|
+
`${INDENT}public init(client: JsBaoClient) {`,
|
|
311
|
+
`${INDENT}${INDENT}self.client = client`,
|
|
312
|
+
`${INDENT}}`,
|
|
313
|
+
];
|
|
314
|
+
// #3454 — the verbs the MODE allows: `invoke` first, then the four task
|
|
315
|
+
// verbs, and an `any` function gets both sets because the runner is chosen
|
|
316
|
+
// at call time.
|
|
317
|
+
if (fn.mode === "request" || fn.mode === "any") {
|
|
318
|
+
lines.push(...renderInvoke(fn));
|
|
319
|
+
}
|
|
320
|
+
if (fn.mode === "task" || fn.mode === "any") {
|
|
321
|
+
lines.push(...renderStart(fn), ...renderTaskPollers(fn));
|
|
322
|
+
}
|
|
323
|
+
lines.push(`}`);
|
|
324
|
+
lines.push(``, `/// Typed invoker factory for the \`${fn.key}\` function.`, `public func ${fn.factoryName}(_ client: JsBaoClient) -> ${fn.structName} {`, `${INDENT}${fn.structName}(client: client)`, `}`);
|
|
325
|
+
return lines.join("\n");
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Render the full `<key>.generated.swift` content for one `functions/*.toml`.
|
|
329
|
+
* Pure — exported so tests can assert on the string directly.
|
|
330
|
+
*/
|
|
331
|
+
export function renderFunctionSwiftFile(source) {
|
|
332
|
+
const fn = parseFunction(source);
|
|
333
|
+
const fingerprint = fingerprintToml(source.tomlContent);
|
|
334
|
+
const banner = [
|
|
335
|
+
`${FUNCTION_SWIFT_BANNER_PREFIX}${fn.fileLabel.replace(/^functions\//, "")} — DO NOT EDIT.`,
|
|
336
|
+
"// Run `primitive functions codegen --lang swift` to regenerate.",
|
|
337
|
+
`// fingerprint: ${fingerprint}`,
|
|
338
|
+
].join("\n");
|
|
339
|
+
const imports = ["import Foundation", `import ${CLIENT_MODULE}`].join("\n");
|
|
340
|
+
const content = [banner, imports, fn.inputDecl, fn.outputDecl, renderInvoker(fn)].join("\n\n") +
|
|
341
|
+
"\n";
|
|
342
|
+
return {
|
|
343
|
+
key: fn.key,
|
|
344
|
+
content,
|
|
345
|
+
// EVERY top-level declaration the file makes, read back off the rendered
|
|
346
|
+
// source rather than enumerated by hand (CR3344-001). The obvious four are
|
|
347
|
+
// `<Key>Input`/`<Key>Output`, the invoker struct and the factory — but a
|
|
348
|
+
// root that renders as a typealias (an array of objects, say) also declares
|
|
349
|
+
// its element type, `<Key>InputItem`, at module level. Enumerating the four
|
|
350
|
+
// left those helpers out of both the run-scoped registry and the
|
|
351
|
+
// cross-generator scan, so a database type or another function declaring
|
|
352
|
+
// the same symbol produced Swift that would not compile. This is also the
|
|
353
|
+
// exact parser the retained-sibling side uses, so the two halves of every
|
|
354
|
+
// comparison now speak one alphabet (backticks stripped included).
|
|
355
|
+
symbols: parseTopLevelSwiftSymbols(content),
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Run Swift function codegen end-to-end. The whole `functions/` directory is
|
|
360
|
+
* always the input (there is no `--single` form), so the run owns its output
|
|
361
|
+
* directory's functions-banner files completely and sweeps the orphans.
|
|
362
|
+
*/
|
|
363
|
+
export async function generateFunctionSwiftTypes(options) {
|
|
364
|
+
const outAbs = path.resolve(options.outputDir);
|
|
365
|
+
// The shared set-level IR: sorted, and two files resolving to one key
|
|
366
|
+
// refused naming both (E2). The TS base-name check stays on the TS side —
|
|
367
|
+
// the registry below is the Swift run's own, and covers the invoker struct
|
|
368
|
+
// and the factory the TS check knows nothing about.
|
|
369
|
+
const described = describeFunctionSchemaSet(options.inputs);
|
|
370
|
+
const symbolOwner = new Map();
|
|
371
|
+
const filesToWrite = new Map();
|
|
372
|
+
for (const { source } of described) {
|
|
373
|
+
const rendered = renderFunctionSwiftFile(source);
|
|
374
|
+
for (const symbol of rendered.symbols) {
|
|
375
|
+
const prior = symbolOwner.get(symbol);
|
|
376
|
+
if (prior !== undefined && prior !== rendered.key) {
|
|
377
|
+
throw new SwiftCodegenError(`swift function codegen: type-name collision — function keys ` +
|
|
378
|
+
`"${prior}" and "${rendered.key}" both produce Swift symbol ` +
|
|
379
|
+
`"${symbol}", which redeclare when all .generated.swift files ` +
|
|
380
|
+
`compile into one module. Rename one function key so the two differ ` +
|
|
381
|
+
`after Swift normalization.`, { sourceFile: `functions/${rendered.key}.toml` });
|
|
382
|
+
}
|
|
383
|
+
symbolOwner.set(symbol, rendered.key);
|
|
384
|
+
}
|
|
385
|
+
filesToWrite.set(path.join(outAbs, `${rendered.key}${GENERATED_SWIFT_FILE_SUFFIX}`), rendered.content);
|
|
386
|
+
}
|
|
387
|
+
// Cross-generator namespace collision (the #1857 scan, a third way round).
|
|
388
|
+
// A workflow- or database-owned sibling in the same directory declares its
|
|
389
|
+
// own top-level symbols; a full functions run does not regenerate them, so
|
|
390
|
+
// the two files coexist and redeclare once everything compiles into one
|
|
391
|
+
// module. The foreign-banner WRITE guard below is path-only and never sees
|
|
392
|
+
// it.
|
|
393
|
+
await assertNoForeignGeneratorSymbolCollision({
|
|
394
|
+
outputDir: outAbs,
|
|
395
|
+
foreignBanner: FOREIGN_SWIFT_BANNERS,
|
|
396
|
+
suffix: GENERATED_SWIFT_FILE_SUFFIX,
|
|
397
|
+
emitted: symbolOwner,
|
|
398
|
+
makeError: ({ symbol, owner, siblingStem }) => new SwiftCodegenError(`swift function codegen: type-name collision with another generator's ` +
|
|
399
|
+
`file — function key "${owner}" emits Swift symbol "${symbol}", but the ` +
|
|
400
|
+
`existing "${siblingStem}${GENERATED_SWIFT_FILE_SUFFIX}" (owned by the ` +
|
|
401
|
+
`workflow or database Swift generator) already declares a top-level ` +
|
|
402
|
+
`"${symbol}" in the same output directory, which redeclares when all ` +
|
|
403
|
+
`.generated.swift files compile into one module. Rename the function or ` +
|
|
404
|
+
`the "${siblingStem}" source so the two differ after Swift ` +
|
|
405
|
+
`normalization, or give one generator a separate -o directory.`, { sourceFile: `functions/${owner}.toml` }),
|
|
406
|
+
});
|
|
407
|
+
return await writeOrCheckGeneratedFiles({
|
|
408
|
+
outputDir: outAbs,
|
|
409
|
+
filesToWrite,
|
|
410
|
+
check: options.check,
|
|
411
|
+
fullOwnership: true,
|
|
412
|
+
generatedSuffix: GENERATED_SWIFT_FILE_SUFFIX,
|
|
413
|
+
ownershipBanner: FUNCTION_SWIFT_BANNER_PREFIX,
|
|
414
|
+
foreignOwnershipBanners: FOREIGN_SWIFT_BANNERS,
|
|
415
|
+
onForeignBannerCollision: ({ filePath, foreignBanner }) => new SwiftCodegenError(`swift codegen: output collision — this run would overwrite ` +
|
|
416
|
+
`"${path.basename(filePath)}" in the shared output directory, which ` +
|
|
417
|
+
`is already owned by a different generator (banner ` +
|
|
418
|
+
`"${foreignBanner.trim()}"). A function key and a workflow key or ` +
|
|
419
|
+
`database type with the same name cannot share an output directory; ` +
|
|
420
|
+
`give one generator a separate -o directory.`),
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
//# sourceMappingURL=functionGenerator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functionGenerator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/functionGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,6 +76,12 @@ export interface GenerateWorkflowSwiftTypesOptions {
|
|
|
76
76
|
* `create-checkout-session` → `CreateCheckoutSession`; `123-job` → `_123Job`
|
|
77
77
|
* (digit-leading prefixed, parity with the TS `ensureValidIdentifierStart`). */
|
|
78
78
|
export declare function workflowSwiftTypeBaseName(key: string): string;
|
|
79
|
+
/**
|
|
80
|
+
* A Swift string literal for a config key (the runtime call passes it
|
|
81
|
+
* verbatim). Exported so the functions emitter (#3344) pins its key literals
|
|
82
|
+
* through the SAME escape helper rather than a second copy of these rules.
|
|
83
|
+
*/
|
|
84
|
+
export declare function swiftKeyLiteral(key: string): string;
|
|
79
85
|
/**
|
|
80
86
|
* Render the full `<key>.generated.swift` content for a single workflow TOML.
|
|
81
87
|
* Returns null for a reserved (`__internal.*`) workflow. Pure — exported so
|
|
@@ -46,6 +46,9 @@ import { structTypeName, workflowSwiftFactoryName } from "./swiftNaming.js";
|
|
|
46
46
|
// the database Swift generator (issue #1653, class 3b). Function-time use only,
|
|
47
47
|
// so the generator.ts ↔ dbGenerator.ts import cycle resolves safely.
|
|
48
48
|
import { DB_SWIFT_BANNER_PREFIXES } from "./dbGenerator.js";
|
|
49
|
+
// The third Swift generator's banner (#3344). It lives in a leaf module, so
|
|
50
|
+
// naming it here adds no import cycle.
|
|
51
|
+
import { FUNCTION_SWIFT_BANNER_PREFIX } from "./banners.js";
|
|
49
52
|
import { assertNoRetainedSiblingCollision, assertNoForeignGeneratorSymbolCollision, } from "./siblingSymbols.js";
|
|
50
53
|
/** Suffix identifying a generated Swift file. */
|
|
51
54
|
export const GENERATED_SWIFT_FILE_SUFFIX = ".generated.swift";
|
|
@@ -104,8 +107,12 @@ function parseWorkflow(input) {
|
|
|
104
107
|
}),
|
|
105
108
|
};
|
|
106
109
|
}
|
|
107
|
-
/**
|
|
108
|
-
|
|
110
|
+
/**
|
|
111
|
+
* A Swift string literal for a config key (the runtime call passes it
|
|
112
|
+
* verbatim). Exported so the functions emitter (#3344) pins its key literals
|
|
113
|
+
* through the SAME escape helper rather than a second copy of these rules.
|
|
114
|
+
*/
|
|
115
|
+
export function swiftKeyLiteral(key) {
|
|
109
116
|
const escaped = key
|
|
110
117
|
.replace(/\\/g, "\\\\")
|
|
111
118
|
.replace(/"/g, '\\"')
|
|
@@ -407,13 +414,13 @@ export async function generateWorkflowSwiftTypes(options) {
|
|
|
407
414
|
// coexist regardless of ordering.
|
|
408
415
|
await assertNoForeignGeneratorSymbolCollision({
|
|
409
416
|
outputDir: outAbs,
|
|
410
|
-
foreignBanner: DB_SWIFT_BANNER_PREFIXES,
|
|
417
|
+
foreignBanner: [...DB_SWIFT_BANNER_PREFIXES, FUNCTION_SWIFT_BANNER_PREFIX],
|
|
411
418
|
suffix: GENERATED_SWIFT_FILE_SUFFIX,
|
|
412
419
|
emitted: symbolOwner,
|
|
413
|
-
makeError: ({ symbol, owner, siblingStem }) => new SwiftCodegenError(`swift workflow codegen: type-name collision with
|
|
420
|
+
makeError: ({ symbol, owner, siblingStem }) => new SwiftCodegenError(`swift workflow codegen: type-name collision with another generator's ` +
|
|
414
421
|
`file — workflow key "${owner}" emits Swift type "${symbol}", but the ` +
|
|
415
422
|
`existing "${siblingStem}${GENERATED_SWIFT_FILE_SUFFIX}" (owned by the ` +
|
|
416
|
-
`database Swift generator) already declares a top-level "${symbol}" in ` +
|
|
423
|
+
`database or functions Swift generator) already declares a top-level "${symbol}" in ` +
|
|
417
424
|
`the same output directory, which redeclares when all .generated.swift ` +
|
|
418
425
|
`files compile into one module. Rename the workflow or the ` +
|
|
419
426
|
`"${siblingStem}" database type so the two differ after Swift ` +
|
|
@@ -427,14 +434,18 @@ export async function generateWorkflowSwiftTypes(options) {
|
|
|
427
434
|
generatedSuffix: GENERATED_SWIFT_FILE_SUFFIX,
|
|
428
435
|
ownershipBanner: SWIFT_BANNER_PREFIX,
|
|
429
436
|
// Class 3b: never clobber a file owned by the database Swift generator —
|
|
430
|
-
// including one it stamped before the #2760 banner rename
|
|
431
|
-
|
|
437
|
+
// including one it stamped before the #2760 banner rename — or by the
|
|
438
|
+
// functions Swift generator (#3344).
|
|
439
|
+
foreignOwnershipBanners: [
|
|
440
|
+
...DB_SWIFT_BANNER_PREFIXES,
|
|
441
|
+
FUNCTION_SWIFT_BANNER_PREFIX,
|
|
442
|
+
],
|
|
432
443
|
onForeignBannerCollision: ({ filePath, foreignBanner }) => new SwiftCodegenError(`swift codegen: output collision — this run would overwrite ` +
|
|
433
444
|
`"${path.basename(filePath)}" in the shared output directory, which ` +
|
|
434
445
|
`is already owned by a different generator (banner ` +
|
|
435
|
-
`"${foreignBanner.trim()}"). A workflow key and a database type
|
|
436
|
-
`the same name cannot share an output directory;
|
|
437
|
-
`separate --output directory.`),
|
|
446
|
+
`"${foreignBanner.trim()}"). A workflow key and a database type or ` +
|
|
447
|
+
`function key with the same name cannot share an output directory; ` +
|
|
448
|
+
`give one generator a separate --output directory.`),
|
|
438
449
|
});
|
|
439
450
|
}
|
|
440
451
|
//# sourceMappingURL=generator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,3 +70,18 @@ export interface SwiftCodegenContext {
|
|
|
70
70
|
* Swift source for the type only — the CLI adds the import/banner (Phase 2).
|
|
71
71
|
*/
|
|
72
72
|
export declare function renderSwiftRootType(rootTypeName: string, schema: any, ctx?: SwiftCodegenContext): string;
|
|
73
|
+
/**
|
|
74
|
+
* `renderSwiftRootType`, plus whether the ROOT type it declared is itself
|
|
75
|
+
* Optional — the alias form a nullable root union produces
|
|
76
|
+
* (`typealias <Key>Input = String?`).
|
|
77
|
+
*
|
|
78
|
+
* A caller that wraps the root type in another `?` would double-wrap it, and a
|
|
79
|
+
* caller that treats `nil` as "no value" would lose the JSON `null` the
|
|
80
|
+
* declaration allows. The Swift functions emitter (#3344) needs both answers:
|
|
81
|
+
* it neither re-optionalizes an already-optional input parameter nor lets a
|
|
82
|
+
* `nil` fall through to the client's "omit `rootInput`" path.
|
|
83
|
+
*/
|
|
84
|
+
export declare function renderSwiftRootTypeDetail(rootTypeName: string, schema: any, ctx?: SwiftCodegenContext): {
|
|
85
|
+
decl: string;
|
|
86
|
+
optional: boolean;
|
|
87
|
+
};
|