primitive-admin 1.1.0-alpha.78 → 1.1.0-alpha.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/README.md +38 -17
  2. package/assets/skill/skills/primitive-platform/SKILL.md +39 -52
  3. package/dist/bin/primitive.js +14 -25
  4. package/dist/bin/primitive.js.map +1 -1
  5. package/dist/src/commands/admins.js +8 -18
  6. package/dist/src/commands/admins.js.map +1 -1
  7. package/dist/src/commands/analytics.js +46 -5
  8. package/dist/src/commands/analytics.js.map +1 -1
  9. package/dist/src/commands/auth.js +16 -1
  10. package/dist/src/commands/auth.js.map +1 -1
  11. package/dist/src/commands/collection-type-configs.js +1 -9
  12. package/dist/src/commands/collection-type-configs.js.map +1 -1
  13. package/dist/src/commands/config.js +11 -29
  14. package/dist/src/commands/config.js.map +1 -1
  15. package/dist/src/commands/database-type-configs.js +1 -9
  16. package/dist/src/commands/database-type-configs.js.map +1 -1
  17. package/dist/src/commands/databases.js +8 -38
  18. package/dist/src/commands/databases.js.map +1 -1
  19. package/dist/src/commands/env.js +27 -32
  20. package/dist/src/commands/env.js.map +1 -1
  21. package/dist/src/commands/functions.js +197 -23
  22. package/dist/src/commands/functions.js.map +1 -1
  23. package/dist/src/commands/groups.js +1 -9
  24. package/dist/src/commands/groups.js.map +1 -1
  25. package/dist/src/commands/init.js +6 -0
  26. package/dist/src/commands/init.js.map +1 -1
  27. package/dist/src/commands/rule-sets.js +1 -9
  28. package/dist/src/commands/rule-sets.js.map +1 -1
  29. package/dist/src/commands/scripts.js +12 -28
  30. package/dist/src/commands/scripts.js.map +1 -1
  31. package/dist/src/commands/sync.d.ts +119 -0
  32. package/dist/src/commands/sync.js +387 -196
  33. package/dist/src/commands/sync.js.map +1 -1
  34. package/dist/src/commands/workflows.js +2 -14
  35. package/dist/src/commands/workflows.js.map +1 -1
  36. package/dist/src/lib/api-client.d.ts +46 -11
  37. package/dist/src/lib/api-client.js +21 -11
  38. package/dist/src/lib/api-client.js.map +1 -1
  39. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.d.ts +24 -57
  40. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js +30 -204
  41. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js.map +1 -1
  42. package/dist/src/lib/config-json-field.d.ts +28 -0
  43. package/dist/src/lib/config-json-field.js +56 -0
  44. package/dist/src/lib/config-json-field.js.map +1 -0
  45. package/dist/src/lib/config-object-descriptor.js +4 -3
  46. package/dist/src/lib/config-object-descriptor.js.map +1 -1
  47. package/dist/src/lib/config-surface.js +1 -1
  48. package/dist/src/lib/config-surface.js.map +1 -1
  49. package/dist/src/lib/config.d.ts +21 -14
  50. package/dist/src/lib/config.js +25 -44
  51. package/dist/src/lib/config.js.map +1 -1
  52. package/dist/src/lib/credentials-store.d.ts +31 -8
  53. package/dist/src/lib/credentials-store.js +52 -13
  54. package/dist/src/lib/credentials-store.js.map +1 -1
  55. package/dist/src/lib/env-resolver-core.d.ts +18 -0
  56. package/dist/src/lib/env-resolver-core.js +26 -3
  57. package/dist/src/lib/env-resolver-core.js.map +1 -1
  58. package/dist/src/lib/env-resolver.d.ts +15 -0
  59. package/dist/src/lib/env-resolver.js +21 -1
  60. package/dist/src/lib/env-resolver.js.map +1 -1
  61. package/dist/src/lib/function-collect.d.ts +1 -1
  62. package/dist/src/lib/function-collect.js +138 -7
  63. package/dist/src/lib/function-collect.js.map +1 -1
  64. package/dist/src/lib/function-db-types.d.ts +49 -11
  65. package/dist/src/lib/function-db-types.js +234 -39
  66. package/dist/src/lib/function-db-types.js.map +1 -1
  67. package/dist/src/lib/function-document-types.d.ts +50 -0
  68. package/dist/src/lib/function-document-types.js +163 -0
  69. package/dist/src/lib/function-document-types.js.map +1 -0
  70. package/dist/src/lib/function-log-tail.d.ts +83 -0
  71. package/dist/src/lib/function-log-tail.js +115 -0
  72. package/dist/src/lib/function-log-tail.js.map +1 -0
  73. package/dist/src/lib/function-schema-codegen.d.ts +118 -0
  74. package/dist/src/lib/function-schema-codegen.js +402 -0
  75. package/dist/src/lib/function-schema-codegen.js.map +1 -0
  76. package/dist/src/lib/function-sync.d.ts +85 -2
  77. package/dist/src/lib/function-sync.js +196 -27
  78. package/dist/src/lib/function-sync.js.map +1 -1
  79. package/dist/src/lib/function-triggers.d.ts +9 -3
  80. package/dist/src/lib/function-triggers.js +12 -9
  81. package/dist/src/lib/function-triggers.js.map +1 -1
  82. package/dist/src/lib/function-typecheck.d.ts +86 -0
  83. package/dist/src/lib/function-typecheck.js +370 -0
  84. package/dist/src/lib/function-typecheck.js.map +1 -0
  85. package/dist/src/lib/generated-allowlist.js +4 -0
  86. package/dist/src/lib/generated-allowlist.js.map +1 -1
  87. package/dist/src/lib/generated-config-surfaces.d.ts +422 -0
  88. package/dist/src/lib/generated-config-surfaces.js +838 -9
  89. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  90. package/dist/src/lib/generated-sdk-types.d.ts +1 -1
  91. package/dist/src/lib/generated-sdk-types.js +1 -1
  92. package/dist/src/lib/generated-sdk-types.js.map +1 -1
  93. package/dist/src/lib/log-inspection.d.ts +116 -4
  94. package/dist/src/lib/log-inspection.js +147 -2
  95. package/dist/src/lib/log-inspection.js.map +1 -1
  96. package/dist/src/lib/snapshots.d.ts +6 -7
  97. package/dist/src/lib/snapshots.js +18 -81
  98. package/dist/src/lib/snapshots.js.map +1 -1
  99. package/dist/src/lib/sync-paths.d.ts +29 -53
  100. package/dist/src/lib/sync-paths.js +46 -97
  101. package/dist/src/lib/sync-paths.js.map +1 -1
  102. package/dist/src/lib/workflow-toml-validator.d.ts +8 -3
  103. package/dist/src/lib/workflow-toml-validator.js +8 -3
  104. package/dist/src/lib/workflow-toml-validator.js.map +1 -1
  105. package/package.json +3 -3
@@ -155,6 +155,8 @@ export function scanBundleForManifest(bundle) {
155
155
  }
156
156
  const helpers = [
157
157
  [/\.db\(/, "databases"],
158
+ // #3281 — the typed document handle, a binding over documents.records.*.
159
+ [/\.doc\(/, "documents"],
158
160
  [/\.integrations\.call\(/, "integrations"],
159
161
  [/\.prompts\.run\(/, "prompts"],
160
162
  [/\.secret\(/, "secrets"],
@@ -186,14 +188,73 @@ const RESULT_SENTINEL = "__PRIMITIVE_COLLECT__";
186
188
  export const COLLECT_STUB_SOURCE = `
187
189
  const registry = (globalThis.__PRIMITIVE_COLLECT_REGISTRY__ ||= []);
188
190
 
191
+ // The default-coercion rule the SDK applies at registration (#3281,
192
+ // D3281-SO-005), spelled here too so a default the declared type cannot
193
+ // coerce is refused at PUSH — this stub is what push runs — rather than at
194
+ // the first invocation. The vendored grammar (\`coerceParamDefault\` in
195
+ // generated-config-surfaces.ts) is the same rule and re-checks the manifest.
196
+ const SCALAR_TYPES = ["string", "number", "boolean", "any"];
197
+ function coerceScalar(type, value) {
198
+ if (type === "number") {
199
+ const n = typeof value === "number" ? value : Number(value);
200
+ if (typeof value === "boolean" || value === null || value === "" || !Number.isFinite(n)) {
201
+ return { ok: false, reason: "must be a number" };
202
+ }
203
+ return { ok: true, value: n };
204
+ }
205
+ if (type === "boolean") {
206
+ if (typeof value === "boolean") return { ok: true, value };
207
+ if (value === "true") return { ok: true, value: true };
208
+ if (value === "false") return { ok: true, value: false };
209
+ return { ok: false, reason: "must be a boolean" };
210
+ }
211
+ if (type === "string") {
212
+ if (typeof value !== "string") return { ok: false, reason: "must be a string" };
213
+ return { ok: true, value };
214
+ }
215
+ return { ok: true, value };
216
+ }
217
+ function coerceDefault(spec, value) {
218
+ if (spec.type === "array") {
219
+ if (!Array.isArray(value)) return { ok: false, reason: "must be an array" };
220
+ const itemType = spec.items && spec.items.type ? String(spec.items.type) : "any";
221
+ const out = [];
222
+ for (const element of value) {
223
+ const coerced = coerceScalar(itemType, element);
224
+ if (!coerced.ok) return { ok: false, reason: "every element " + coerced.reason };
225
+ out.push(coerced.value);
226
+ }
227
+ return { ok: true, value: out };
228
+ }
229
+ return coerceScalar(spec.type === undefined ? "any" : String(spec.type), value);
230
+ }
231
+
189
232
  function record(kind, name, config) {
190
233
  const c = config || {};
191
234
  const params = {};
192
235
  for (const [key, value] of Object.entries(c.params || {})) {
193
236
  const spec = value && typeof value === "object" ? value : { type: String(value) };
194
237
  const entry = {};
238
+ const fail = (message) => {
239
+ throw new Error("'" + name + "': parameter '" + key + "' " + message);
240
+ };
195
241
  if (spec.type !== undefined) entry.type = String(spec.type);
196
- if (spec.default !== undefined) entry.default = spec.default;
242
+ if (entry.type === "array") {
243
+ if (spec.items !== undefined && spec.items !== null) {
244
+ const itemType =
245
+ spec.items && typeof spec.items === "object" ? String(spec.items.type ?? "") : "";
246
+ if (!SCALAR_TYPES.includes(itemType)) {
247
+ fail("declares an \`items\` type outside " + SCALAR_TYPES.join(", ") + ".");
248
+ }
249
+ entry.items = { type: itemType };
250
+ }
251
+ if (spec.caller === true) fail("is an array bound to $caller; \`caller\` is a scalar binding.");
252
+ }
253
+ if (spec.default !== undefined) {
254
+ const coerced = coerceDefault(entry, spec.default);
255
+ if (!coerced.ok) fail("has a default that " + coerced.reason + ".");
256
+ entry.default = coerced.value;
257
+ }
197
258
  if (spec.caller === true || spec === "$caller" || spec.type === "$caller") {
198
259
  entry.caller = true;
199
260
  }
@@ -230,7 +291,23 @@ export const MAX_QUERY_CACHE_TTL_MS = 60000;
230
291
  export const PMAP_DEFAULT_CONCURRENCY = 8;
231
292
  export function defineQuery(name, config) { return record("query", name, config); }
232
293
  export function defineMutation(name, config) { return record("mutation", name, config); }
233
- export function defineFunction(handler) { return handler; }
294
+ export function defineFunction(keyOrHandler, maybeHandler) {
295
+ // The KEYED form (#3281) returns a wrapper CARRYING its key, exactly as the
296
+ // baked SDK's does. That is what push reads: the child resolves the callable
297
+ // the bootstrap would select and compares THAT key to the file's
298
+ // (D3281-SO-006). The registry entry is the child's report of what the
299
+ // module scope did; it is not what the check consults, because a keyed
300
+ // handler an entry merely imports for composition registers here too.
301
+ if (typeof keyOrHandler === "string" || maybeHandler !== undefined) {
302
+ registry.push({ kind: "function", name: String(keyOrHandler) });
303
+ const wrapped = function (...args) {
304
+ return maybeHandler(...args);
305
+ };
306
+ wrapped.functionKey = String(keyOrHandler);
307
+ return wrapped;
308
+ }
309
+ return keyOrHandler;
310
+ }
234
311
  export function pMap(items, mapper) { return Promise.all((items || []).map(mapper)); }
235
312
  export function ulid() { return "00000000000000000000000000"; }
236
313
  export const stepPolicy = new Proxy({}, { get: () => ({}) });
@@ -243,15 +320,49 @@ export default {
243
320
  ulid,
244
321
  };
245
322
  `;
246
- /** The child's whole program: import the built bundle, report the registry. */
323
+ /**
324
+ * The child's whole program: import the built bundle, report the registry and
325
+ * the key of the handler the entry EXPORTS.
326
+ *
327
+ * The module is kept rather than discarded (D3281-SO-006). Every keyed
328
+ * `defineFunction` anywhere in the import graph writes to the registry, so the
329
+ * registry alone cannot tell an entry that DECLARES a key from one that merely
330
+ * imports a keyed handler to compose with — and those are the two cases push
331
+ * has to answer differently. `handlerOf` is the bootstrap's own selection rule,
332
+ * spelled the same way here, so the callable this reports is the callable that
333
+ * would run.
334
+ *
335
+ * It is applied to the same VALUE the bootstrap applies it to, which is the
336
+ * DEFAULT EXPORT and not the module namespace (CR3281-002). The bootstrap
337
+ * binds `import entry from "./function.js"` and calls `handlerOf(entry)`, so
338
+ * for `export default { handler: defineFunction("other", …) }` it selects the
339
+ * keyed handler while `handlerOf(namespace)` selected nothing — the one shape
340
+ * where a handler keyed for another function would run and push could not see
341
+ * it. A module with no default export is one the sandbox cannot start at all
342
+ * (the loader refuses it by name), and there the namespace is still read, so
343
+ * a key declared on a named `handler` export is reported rather than lost.
344
+ */
247
345
  const RUNNER_SOURCE = `
248
346
  const sentinel = ${JSON.stringify(RESULT_SENTINEL)};
249
347
  const target = process.argv[2];
348
+ function handlerOf(mod) {
349
+ if (typeof mod === "function") return mod;
350
+ if (mod && typeof mod.default === "function") return mod.default;
351
+ if (mod && typeof mod.handler === "function") return mod.handler;
352
+ return null;
353
+ }
250
354
  (async () => {
251
355
  try {
252
- await import(target);
356
+ const mod = await import(target);
253
357
  const registry = globalThis.__PRIMITIVE_COLLECT_REGISTRY__ || [];
254
- process.stdout.write(sentinel + JSON.stringify({ ok: true, registry }) + "\\n");
358
+ // What the bootstrap's \`import entry from "./function.js"\` binds.
359
+ const entry = mod && "default" in mod ? mod.default : mod;
360
+ const exported = handlerOf(entry);
361
+ const exportedKey =
362
+ exported && typeof exported.functionKey === "string" ? exported.functionKey : null;
363
+ process.stdout.write(
364
+ sentinel + JSON.stringify({ ok: true, registry, exportedKey }) + "\\n"
365
+ );
255
366
  } catch (error) {
256
367
  process.stdout.write(
257
368
  sentinel +
@@ -363,7 +474,7 @@ export async function collectFunctionManifest(options) {
363
474
  throw new FunctionCollectError(`function '${options.functionKey}': manifest collection failed while ` +
364
475
  `running the tree's module scope: ${framed.error}`);
365
476
  }
366
- return manifestFrom(framed.registry ?? [], options.functionKey, scanBundleForManifest(options.bundle ?? code));
477
+ return manifestFrom(framed.registry ?? [], options.functionKey, scanBundleForManifest(options.bundle ?? code), framed.exportedKey ?? null);
367
478
  }
368
479
  finally {
369
480
  rmSync(scratch, { recursive: true, force: true });
@@ -419,10 +530,30 @@ function runCollectChild(options) {
419
530
  });
420
531
  }
421
532
  /** Normalize and validate what the child recorded, and merge in the scan. */
422
- function manifestFrom(registry, functionKey, scanned) {
533
+ function manifestFrom(registry, functionKey, scanned, exportedKey) {
534
+ // #3281 — the key the entry's EXPORTED handler carries. The compiler holds
535
+ // the key to the TREE (an undeclared key does not compile); this holds it to
536
+ // the FILE, before any request is made, with the runtime value — a key
537
+ // computed at module scope is checked as what it evaluated to.
538
+ //
539
+ // The subject is the exported handler and nothing else (D3281-SO-006). A
540
+ // keyed handler an entry IMPORTS is registered in the same graph, so
541
+ // comparing every registration would refuse ordinary composition; accepting
542
+ // any matching registration would let a module export the wrong handler and
543
+ // run typed against another file's schemas. The callable the bootstrap would
544
+ // select is the one that answers "what did this file ship?".
545
+ //
546
+ // A null key is an unkeyed handler — there is nothing to disagree with.
547
+ if (exportedKey !== null && exportedKey !== functionKey) {
548
+ throw new FunctionCollectError(`function '${functionKey}': its entry exports defineFunction("${exportedKey}", …), ` +
549
+ `which is not this file's key. The key names functions/${functionKey}.toml, so ` +
550
+ `write defineFunction("${functionKey}", …) — or drop the key to use the unkeyed form.`);
551
+ }
423
552
  const queries = [];
424
553
  const seen = new Set();
425
554
  for (const entry of registry) {
555
+ if (entry?.kind === "function")
556
+ continue;
426
557
  const name = String(entry?.name ?? "");
427
558
  if (!name) {
428
559
  throw new FunctionCollectError(`function '${functionKey}': a registration has no name.`);
@@ -1 +1 @@
1
- {"version":3,"file":"function-collect.js","sourceRoot":"","sources":["../../../src/lib/function-collect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-collect.js","sourceRoot":"","sources":["../../../src/lib/function-collect.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  * — not a second parser and not a second idea of what a model is. Inline
10
10
  * filter typing waits for unified-schemas, as the intent says.
11
11
  *
12
- * ── Why three files, in `functions/` ─────────────────────────────────────
12
+ * ── Why these files, in `functions/` ─────────────────────────────────────
13
13
  *
14
14
  * A generated declaration nothing loads is decoration (D3182-006). Function
15
15
  * sources live under an environment- and app-specific config-tree path, the
@@ -24,10 +24,23 @@
24
24
  * without this the bare `primitive-functions` specifier every function
25
25
  * imports would not resolve at all, and the augmentation would have
26
26
  * nothing to augment;
27
- * - `tsconfig.json` — the wiring, so an editor and a bare `tsc` both see all
28
- * three with nothing for an author to configure.
27
+ * - `primitive-function-types.d.ts` (#3281, rendered by
28
+ * `function-schema-codegen.ts`) — every function's `<Key>Input` and
29
+ * `<Key>Output` from its declared schemas, and the `FunctionSchemas`
30
+ * augmentation that types `defineFunction("<key>", handler)`;
31
+ * - `primitive-document-types.d.ts` (#3281, rendered by
32
+ * `function-document-types.ts`) — the project's document models from
33
+ * `models/models.toml`, and the `DocumentSchemas` augmentation that types
34
+ * `ctx.doc(documentId).model("<Model>")`; open when the project has none;
35
+ * - `generated/<key>.generated.ts` (#3281, same renderer) — the per-key
36
+ * CLIENT invoker, with the mode fixed at generation time. Excluded from
37
+ * the scaffolded program (it imports `js-bao-wss-client`), and written to
38
+ * `-o <dir>` instead when `functions codegen` is told so;
39
+ * - `tsconfig.json` — the wiring, so an editor and a bare `tsc` both see the
40
+ * declarations with nothing for an author to configure.
29
41
  *
30
- * The two `.d.ts` files are GENERATED and rewritten on every push. The tsconfig
42
+ * The `.d.ts` files and the invokers are GENERATED and rewritten on every
43
+ * push; an invoker whose TOML is gone is removed with it. The tsconfig
31
44
  * is SCAFFOLDED once and then left to its author, because it is the file an
32
45
  * author has a legitimate reason to adjust — with one exception: the two facts
33
46
  * that make the wiring work at all (the `primitive-functions` path mapping and
@@ -43,6 +56,16 @@
43
56
  export declare const DB_TYPES_DECLARATION_FILE = "primitive-db-types.d.ts";
44
57
  export declare const SDK_TYPES_FILE = "primitive-functions.d.ts";
45
58
  export declare const FUNCTIONS_TSCONFIG_FILE = "tsconfig.json";
59
+ /**
60
+ * Every regenerated declaration a `functions/tsconfig.json` has to load, in
61
+ * the order the scaffold lists them (#3281, D3281-SO-004). The inspection
62
+ * requires each of these in an explicit `include`/`files` list — a tree that
63
+ * customized its list to name only the two #3182 wrote would otherwise
64
+ * generate the newer ones and never load them.
65
+ */
66
+ export declare const REGENERATED_DECLARATIONS: readonly string[];
67
+ /** The scaffold's exclusion for the client invokers (#3281). */
68
+ export declare const GENERATED_EXCLUDE = "generated/**";
46
69
  export interface DatabaseTypeSource {
47
70
  databaseType: string;
48
71
  tomlPath: string;
@@ -60,6 +83,11 @@ export declare function renderDbTypesDeclaration(sources: readonly DatabaseTypeS
60
83
  export declare function renderFunctionsTsconfig(): string;
61
84
  /** The bare specifier every function imports, and the tsconfig must resolve. */
62
85
  export declare const SDK_MODULE_SPECIFIER = "primitive-functions";
86
+ /** What the inspection knows about the directory, beyond the file's text. */
87
+ export interface TsconfigContext {
88
+ /** Whether `functions/generated/` exists on disk. */
89
+ generatedDirExists: boolean;
90
+ }
63
91
  /** What push found wrong with a `functions/tsconfig.json` it will not rewrite. */
64
92
  export interface TsconfigWiringReport {
65
93
  /** The document push should write, or null to leave the file as it is. */
@@ -91,22 +119,32 @@ export interface TsconfigWiringReport {
91
119
  * reformatting an author's file is worse than leaving it — but it IS read, and
92
120
  * anything missing is reported instead of passing in silence (CR3182-003).
93
121
  */
94
- export declare function inspectFunctionsTsconfig(existing: string | null): TsconfigWiringReport;
122
+ export declare function inspectFunctionsTsconfig(existing: string | null, context?: TsconfigContext): TsconfigWiringReport;
95
123
  /**
96
124
  * The repaired document alone, or null to leave the file alone.
97
125
  *
98
126
  * Kept as the narrow answer `planFunctionTypeArtifacts` needs; the problems a
99
127
  * repair cannot cover travel through `inspectFunctionsTsconfig`.
100
128
  */
101
- export declare function reconcileFunctionsTsconfig(existing: string | null): string | null;
129
+ export declare function reconcileFunctionsTsconfig(existing: string | null, context?: TsconfigContext): string | null;
102
130
  export interface FunctionTypeArtifact {
103
- /** Tree-relative, POSIX. */
131
+ /** Tree-relative, POSIX (or relative to the tree when `-o` points outside it). */
104
132
  relative: string;
105
133
  absolute: string;
106
134
  contents: string;
107
135
  /** Generated files are rewritten every push; the scaffold is written once. */
108
136
  regenerated: boolean;
109
137
  }
138
+ export interface FunctionTypeArtifactOptions {
139
+ /**
140
+ * Where the per-key client invokers go (#3281). Defaults to
141
+ * `<tree>/functions/generated/`; `primitive functions codegen -o <dir>` is
142
+ * the override, the `workflows codegen` shape.
143
+ */
144
+ invokerDir?: string;
145
+ }
146
+ /** The invoker directory a plan writes to, absolute. */
147
+ export declare function functionInvokerDir(configDir: string, options?: FunctionTypeArtifactOptions): string;
110
148
  /**
111
149
  * Every database-type TOML in the tree, read once.
112
150
  *
@@ -124,7 +162,7 @@ export declare function databaseTypeSources(configDir: string): DatabaseTypeSour
124
162
  * exist to type function sources, and a tree with none needs no compiler
125
163
  * wiring.
126
164
  */
127
- export declare function planFunctionTypeArtifacts(configDir: string, sdkTypes?: string): FunctionTypeArtifact[];
165
+ export declare function planFunctionTypeArtifacts(configDir: string, sdkTypes?: string, options?: FunctionTypeArtifactOptions): FunctionTypeArtifact[];
128
166
  /**
129
167
  * The tsconfig wiring push could not repair, phrased for the author.
130
168
  *
@@ -134,9 +172,9 @@ export declare function planFunctionTypeArtifacts(configDir: string, sdkTypes?:
134
172
  * failure mode this whole artifact exists to prevent, and staying silent about
135
173
  * it is how it reaches an author as "my types just don't work" (CR3182-003).
136
174
  */
137
- export declare function functionTypeWiringProblems(configDir: string): string[];
175
+ export declare function functionTypeWiringProblems(configDir: string, options?: FunctionTypeArtifactOptions): string[];
138
176
  /** Write them, and report the tree-relative paths that changed on disk. */
139
- export declare function writeFunctionTypeArtifacts(configDir: string, sdkTypes?: string): string[];
177
+ export declare function writeFunctionTypeArtifacts(configDir: string, sdkTypes?: string, options?: FunctionTypeArtifactOptions): string[];
140
178
  /**
141
179
  * The artifacts a `--check` run would rewrite: the freshness answer for CI and
142
180
  * for an editor that wants to know its types are current.
@@ -146,4 +184,4 @@ export declare function writeFunctionTypeArtifacts(configDir: string, sdkTypes?:
146
184
  * never reported — and one that would leave the declarations unloadable always
147
185
  * is.
148
186
  */
149
- export declare function staleFunctionTypeArtifacts(configDir: string): string[];
187
+ export declare function staleFunctionTypeArtifacts(configDir: string, options?: FunctionTypeArtifactOptions): string[];