@xanots/sdk 0.0.9 → 0.0.11

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 (116) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +66 -21
  3. package/dist/.build-fingerprint +1 -1
  4. package/dist/{agent-file-refresh-4W37DGXS.js → agent-file-refresh-QNKN5RYD.js} +3 -3
  5. package/dist/bin.js +10 -8
  6. package/dist/{branch-commands-PBQ36L4A.js → branch-commands-2BLOC2GR.js} +13 -11
  7. package/dist/bundle.d.ts +218 -0
  8. package/dist/bundle.js +143 -0
  9. package/dist/{capture-7PO6SGB4.js → capture-4WVJY4DQ.js} +2 -2
  10. package/dist/{chunk-OW2QZEWL.js → chunk-22TKBSDV.js} +2 -2
  11. package/dist/{chunk-ZOYMZZ3S.js → chunk-3INK4Y4E.js} +1 -1
  12. package/dist/{chunk-NDZFBZHC.js → chunk-3UABJA4X.js} +1 -1
  13. package/dist/{chunk-6Z5CNWFC.js → chunk-4IF54NU5.js} +37 -6
  14. package/dist/{chunk-KSV7VOEX.js → chunk-4Q7ZOHH7.js} +3 -3
  15. package/dist/{chunk-QTNO2WD6.js → chunk-7ZYW652H.js} +1 -1
  16. package/dist/{chunk-4PTSTDIG.js → chunk-AIZKXUNP.js} +2 -2
  17. package/dist/{chunk-P5C2YKAM.js → chunk-ANUDXFEX.js} +18 -27
  18. package/dist/{chunk-4BXJGVZ3.js → chunk-BC2C5GVI.js} +2 -69
  19. package/dist/chunk-BSK7ELHU.js +70 -0
  20. package/dist/chunk-CTD5ZCV6.js +28 -0
  21. package/dist/{chunk-5HCDZ2XN.js → chunk-DBFU47BJ.js} +2 -2
  22. package/dist/{chunk-OKNSR7MT.js → chunk-DIA7CT7J.js} +129 -150
  23. package/dist/chunk-EHP3WPEG.js +21 -0
  24. package/dist/{chunk-JQLR64UC.js → chunk-F6CYJ7TN.js} +21 -6
  25. package/dist/{chunk-BKDJN76G.js → chunk-FE5I6S6N.js} +1 -1
  26. package/dist/{chunk-5YQOIFT4.js → chunk-G4EJMQLD.js} +2 -2
  27. package/dist/{chunk-L6TPHWAU.js → chunk-HYBN4H3F.js} +60 -86
  28. package/dist/{chunk-QIWBCS7N.js → chunk-JGCWTCA7.js} +2 -2
  29. package/dist/{chunk-MDXR5E5Q.js → chunk-K5IOND4K.js} +2 -2
  30. package/dist/{chunk-4PE4ZAB7.js → chunk-KA6G2L7U.js} +5 -5
  31. package/dist/chunk-OHX6MIUZ.js +184 -0
  32. package/dist/{chunk-UDL46O35.js → chunk-OWGCOGKK.js} +155 -3
  33. package/dist/{chunk-QONOJO45.js → chunk-QK7ZQJLP.js} +140 -20
  34. package/dist/{chunk-3QW5NFZJ.js → chunk-QKM4U5UK.js} +3 -3
  35. package/dist/{chunk-7OXFMCTX.js → chunk-QYMAZRAU.js} +7 -7
  36. package/dist/{chunk-K3YSQDXJ.js → chunk-RCT7UX7B.js} +92 -75
  37. package/dist/{chunk-T4XPCJRF.js → chunk-TCFIPDB3.js} +1 -1
  38. package/dist/{chunk-ZZLPTHT5.js → chunk-UOZMSF4C.js} +15 -8
  39. package/dist/{chunk-7JDT4PBU.js → chunk-VAF6A3YD.js} +5 -179
  40. package/dist/{chunk-6DHBYBTO.js → chunk-VNQM3V2C.js} +1 -2
  41. package/dist/chunk-WGPXT2G2.js +22 -0
  42. package/dist/{chunk-6AAT2AYQ.js → chunk-WP4OZZV4.js} +2 -2
  43. package/dist/{chunk-OYMR5AMJ.js → chunk-XEOX6AM7.js} +2 -2
  44. package/dist/{chunk-MU3O43L2.js → chunk-YBC3IKMF.js} +2 -2
  45. package/dist/chunk-ZQ2PKR6R.js +40 -0
  46. package/dist/cli.d.ts +57 -31
  47. package/dist/cli.js +9 -7
  48. package/dist/codegen-command-FUT2KJB6.js +49 -0
  49. package/dist/codegen.d.ts +2 -1
  50. package/dist/{completion-A6BZ3XGU.js → completion-WF46272M.js} +2 -2
  51. package/dist/{config-NL33PN4D.js → config-476F3PT5.js} +1 -1
  52. package/dist/{deploy-command-5TTI4TUP.js → deploy-command-IP7V7GT4.js} +69 -100
  53. package/dist/{ephemeral-command-7TK52YQM.js → ephemeral-command-U4AQ3TXX.js} +25 -28
  54. package/dist/index.d.ts +6 -4
  55. package/dist/index.js +10 -9
  56. package/dist/init-command-NPVL32L6.js +34 -0
  57. package/dist/{onboard-command-EHOHKQQU.js → init-web-3JNFG6GI.js} +10 -10
  58. package/dist/internal.d.ts +4 -4
  59. package/dist/internal.js +86 -73
  60. package/dist/io-P2H75UV2.js +12 -0
  61. package/dist/{live-diff-QK4KC2FJ.js → live-diff-IXKBVG4K.js} +3 -3
  62. package/dist/{lock-GFXD6G2E.js → lock-46FWYE4D.js} +3 -2
  63. package/dist/{lock-commands-ET7NIOLH.js → lock-commands-ZZKZ4LZJ.js} +23 -21
  64. package/dist/{login-command-DFCURZLC.js → login-command-Z6CHTA57.js} +7 -7
  65. package/dist/{logout-command-WXVZQCAV.js → logout-command-ER6IKAYJ.js} +2 -2
  66. package/dist/{loop-7SAIGRCZ.js → loop-D5NPL4VH.js} +3 -3
  67. package/dist/{marketplace-command-BCOAAN2I.js → marketplace-command-P4IPLJ6J.js} +6 -6
  68. package/dist/{meta-client-57ZWVHST.js → meta-client-K2J4XH64.js} +6 -6
  69. package/dist/node.d.ts +5 -4
  70. package/dist/node.js +15 -13
  71. package/dist/{validate-command-SK5FPCV7.js → preflight-command-K346GPTY.js} +20 -18
  72. package/dist/{profile-command-QJAAUZIV.js → profile-command-LJSBDV2L.js} +5 -5
  73. package/dist/{release-command-4EXVLYV2.js → release-command-IMNTIVWK.js} +42 -38
  74. package/dist/response-BQVQ24l1.d.ts +844 -0
  75. package/dist/{routes-manifest-SP3ZXLMR.js → routes-manifest-PWZHDOI5.js} +2 -2
  76. package/dist/scaffold.js +2 -2
  77. package/dist/{static-host-D6KS7X45.js → static-host-3WMV7IZO.js} +1 -1
  78. package/dist/status-command-AL47VG7H.js +162 -0
  79. package/dist/{store-CUCBSYLj.d.ts → store-BLyNeQ8S.d.ts} +21 -8
  80. package/dist/{test-command-2F5LKMI6.js → test-command-YAZLKLGQ.js} +45 -28
  81. package/dist/{upgrade-command-QL523I62.js → upgrade-command-BN3EHAOI.js} +16 -14
  82. package/dist/{workspace-K72NP7SX.js → workspace-2COHDBM3.js} +1 -1
  83. package/dist/{workspace-command-HYA6JEKK.js → workspace-command-MNK7Y7MQ.js} +36 -34
  84. package/dist/{workspace-export-AJMGN3CQ.js → workspace-export-DURY5WYL.js} +2 -2
  85. package/dist/{response-CVAE2kMj.d.ts → xdo-BjJj5W_E.d.ts} +1 -837
  86. package/guides/README.md +2 -2
  87. package/guides/cli.md +17 -19
  88. package/guides/codegen.md +21 -5
  89. package/guides/coverage.md +1 -1
  90. package/guides/deploying.md +31 -34
  91. package/guides/environment.md +4 -4
  92. package/guides/object-kinds.md +3 -3
  93. package/guides/project-structure.md +1 -1
  94. package/guides/scaffold.md +25 -2
  95. package/guides/typed-frontend.md +2 -2
  96. package/llms/filters.md +11 -10
  97. package/llms/kinds-agent-mcp.md +1 -1
  98. package/llms/kinds-core.md +2 -2
  99. package/llms/kinds-realtime.md +1 -1
  100. package/llms/lock.md +5 -5
  101. package/llms/statements-data.md +3 -1
  102. package/llms/tests.md +1 -1
  103. package/llms/values.md +1 -1
  104. package/llms-full.txt +65 -63
  105. package/llms.txt +40 -41
  106. package/manifest.json +96 -427
  107. package/package.json +7 -2
  108. package/dist/chunk-3EYUR3TX.js +0 -100
  109. package/dist/chunk-JQJPFUZI.js +0 -118
  110. package/dist/chunk-YNZFIY4J.js +0 -78
  111. package/dist/codegen-command-YSCSCVT5.js +0 -43
  112. package/dist/env-target-4T7AT347.js +0 -16
  113. package/dist/init-command-OVFFW4QS.js +0 -30
  114. package/dist/io-M7XZEMK7.js +0 -11
  115. package/dist/sandbox-details-command-EDO56IY3.js +0 -18
  116. package/dist/sandbox-export-command-MO6DEZ7Z.js +0 -24
@@ -0,0 +1,22 @@
1
+ // src/emit/output-target.ts
2
+ import { statSync } from "fs";
3
+ import { join, resolve } from "path";
4
+ function resolveOutputTarget(opts) {
5
+ const { path, name, ext } = opts;
6
+ if (path === "-") return { kind: "stdout" };
7
+ const basename = `${name}.${ext}`;
8
+ if (path === void 0 || path === "") {
9
+ return { kind: "file", path: resolve(basename) };
10
+ }
11
+ const endsWithSep = path.endsWith("/") || path.endsWith("\\");
12
+ const isDir = statSync(path, { throwIfNoEntry: false })?.isDirectory() ?? false;
13
+ if (endsWithSep || isDir) {
14
+ return { kind: "file", path: resolve(join(path, basename)) };
15
+ }
16
+ return { kind: "file", path: resolve(path) };
17
+ }
18
+
19
+ export {
20
+ resolveOutputTarget
21
+ };
22
+ //# sourceMappingURL=chunk-WGPXT2G2.js.map
@@ -29,7 +29,7 @@ function endpoint(opts, suffix = "", qs = "") {
29
29
  }
30
30
  function explainDuplicateIdentity(body2) {
31
31
  if (!/duplicate key value violates unique constraint/i.test(body2)) return void 0;
32
- return "The import tried to CREATE objects that already exist under different identities, and the engine refused the duplicate.\nThis is what a stale `xano.lock` looks like: it names guids the workspace no longer has, so nothing matched and everything was planned as new. `--replace` causes it by minting fresh identities.\nRun `xanots lock adopt` against this workspace to re-pin the lock to what is actually there, then release again.";
32
+ return "The import tried to CREATE objects that already exist under different identities, and the engine refused the duplicate.\nThis is what a stale `xano.lock` looks like: it names guids the workspace no longer has, so nothing matched and everything was planned as new. `--replace` causes it by minting fresh identities.\nRun `xanots lock import` against this workspace to re-pin the lock to what is actually there, then release again.";
33
33
  }
34
34
  var ImportHttpError = class extends Error {
35
35
  constructor(status, action, statusText, body2) {
@@ -173,4 +173,4 @@ export {
173
173
  importWorkspaceArchive,
174
174
  planWorkspaceImport
175
175
  };
176
- //# sourceMappingURL=chunk-6AAT2AYQ.js.map
176
+ //# sourceMappingURL=chunk-WP4OZZV4.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  parseLock,
6
6
  serializeLock
7
- } from "./chunk-7JDT4PBU.js";
7
+ } from "./chunk-VAF6A3YD.js";
8
8
 
9
9
  // src/lock/io.ts
10
10
  import { readFileSync, existsSync } from "fs";
@@ -35,4 +35,4 @@ export {
35
35
  readLockFile,
36
36
  writeLockFile
37
37
  };
38
- //# sourceMappingURL=chunk-OYMR5AMJ.js.map
38
+ //# sourceMappingURL=chunk-XEOX6AM7.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  renderThemeScript
3
- } from "./chunk-P5C2YKAM.js";
3
+ } from "./chunk-ANUDXFEX.js";
4
4
  import {
5
5
  defaultThemeChoice,
6
6
  iconLibraryOf,
@@ -842,4 +842,4 @@ export {
842
842
  allFrontendPresets,
843
843
  resolveFrameworkFlag
844
844
  };
845
- //# sourceMappingURL=chunk-MU3O43L2.js.map
845
+ //# sourceMappingURL=chunk-YBC3IKMF.js.map
@@ -0,0 +1,40 @@
1
+ import {
2
+ getEnvironment,
3
+ readEphemeralState
4
+ } from "./chunk-K5IOND4K.js";
5
+
6
+ // src/emit/env-target.ts
7
+ async function resolveEphemeral(auth, name, deps) {
8
+ const resolved = resolveEphemeralName(auth, name, deps.cwd);
9
+ const summary = await deps.resolveLive(auth, auth.workspaceId, resolved);
10
+ if (summary.url === void 0) {
11
+ throw new Error(`Ephemeral "${resolved}" has no base URL to address yet \u2014 it may still be provisioning.`);
12
+ }
13
+ return { base: summary.url, workspaceId: 1, label: `ephemeral ${resolved}`, env: resolved };
14
+ }
15
+ function resolveEphemeralName(auth, name, cwd = process.cwd()) {
16
+ const tracked = getEnvironment(readEphemeralState(cwd), auth.workspaceId)?.name;
17
+ const resolved = name ?? tracked;
18
+ if (resolved === void 0 || resolved === "") {
19
+ throw new Error(
20
+ `No ephemeral environment to target. Name one with \`ephemeral:<name>\` (\`xanots ephemeral list\` shows them), or run \`xanots deploy\` first \u2014 this project then remembers the env it deployed to, which is what bare \`ephemeral\` reads.`
21
+ );
22
+ }
23
+ return resolved;
24
+ }
25
+ async function resolveMetaTarget(auth, selector, deps = {}) {
26
+ switch (selector.kind) {
27
+ case "workspace":
28
+ return { base: auth.instance, workspaceId: auth.workspaceId, label: `workspace ${auth.workspaceId}` };
29
+ case "ephemeral": {
30
+ const resolveLive = deps.resolveLive ?? (await import("./ephemeral-command-U4AQ3TXX.js")).resolveLive;
31
+ return resolveEphemeral(auth, selector.name, { ...deps, resolveLive });
32
+ }
33
+ }
34
+ }
35
+
36
+ export {
37
+ resolveEphemeralName,
38
+ resolveMetaTarget
39
+ };
40
+ //# sourceMappingURL=chunk-ZQ2PKR6R.js.map
package/dist/cli.d.ts CHANGED
@@ -27,7 +27,7 @@ interface NonPublicSeedValue {
27
27
  interface ParsedArgs {
28
28
  command: string | undefined;
29
29
  /**
30
- * The verb of a noun-verb command (`sandbox deploy`, `profile me`): here
30
+ * The verb of a noun-verb command (`workspace export`, `profile me`): here
31
31
  * `command` is the noun and `subcommand` is the verb.
32
32
  * Undefined for the single-token verbs (`compile`/`export`/`lock`/…).
33
33
  */
@@ -73,14 +73,17 @@ interface ParsedArgs {
73
73
  /** `--reset`: accepted but redundant — every deploy is a full replace now. */
74
74
  reset: boolean;
75
75
  /**
76
- * `--dest`: which environment to address.
76
+ * `test --env <target>`: which environment to read — `workspace`,
77
+ * `ephemeral`, or `ephemeral:<name>`. Kept as the raw string and resolved by
78
+ * `env-selector.ts`, the one module that knows the grammar, so `init --from`
79
+ * and this cannot drift on how an environment is spelled.
77
80
  *
78
- * The parser accepts all three because `test` reads all three. `workspace` is
79
- * refused by the commands that WRITE (`deploy`, `release`) at dispatch, with
80
- * the explanation — not here, where the message could only say "bad value"
81
- * for something that is a deliberate product boundary rather than a typo.
81
+ * `deploy` and `release` each reach exactly one environment and declare no
82
+ * flag for it; they refuse this at dispatch with the reason rather than a
83
+ * "bad value" here, since a full-replace import into a real workspace is a
84
+ * product boundary rather than a typo.
82
85
  */
83
- dest: "sandbox" | "ephemeral" | "workspace" | undefined;
86
+ env: string | undefined;
84
87
  /** `test --kind unit|workflow`: narrow to one test family (default: both). */
85
88
  kind: "unit" | "workflow" | undefined;
86
89
  /** `test run-all --concurrency <n>`: how many tests to run at once (default 1). */
@@ -95,7 +98,7 @@ interface ParsedArgs {
95
98
  * frontend gets the typed path/verb contract without the SDK runtime.
96
99
  */
97
100
  emit: string | undefined;
98
- /** `deploy --static <dir>`: archive this directory and deploy it to the sandbox's static host. */
101
+ /** `deploy --static <dir>`: archive this directory and deploy it to the environment's static host. */
99
102
  static: string | undefined;
100
103
  /**
101
104
  * `deploy --static-env KEY=VALUE` (repeatable): public config baked into EVERY
@@ -152,22 +155,22 @@ interface ParsedArgs {
152
155
  paste: boolean;
153
156
  /** `login --scope "<space list>"`: OAuth scopes to request (default: the built-in xano-cli set). */
154
157
  scope: string | undefined;
155
- /** `validate --runtime`: after import + round-trip, run each deployed function and report. */
158
+ /** `preflight --runtime`: after import + round-trip, run each deployed function and report. */
156
159
  runtime: boolean;
157
- /** `validate --capture`: write each round-tripped function's fetched JSON (candidate fixtures). */
160
+ /** `preflight --capture`: write each round-tripped function's fetched JSON (candidate fixtures). */
158
161
  capture: boolean;
159
- /** `validate --verbose`: print full diffs / raw engine detail instead of a projected summary. */
162
+ /** `preflight --verbose`: print full diffs / raw engine detail instead of a projected summary. */
160
163
  verbose: boolean;
161
- /** `validate --instance <url>`: override XANO_VALIDATE_INSTANCE for this run. */
164
+ /** `preflight --instance <url>`: override XANO_VALIDATE_INSTANCE for this run. */
162
165
  instance: string | undefined;
163
- /** `sandbox export --format <json|multidoc>`: which artifact to emit (validated at parse time). */
166
+ /** `ephemeral export --format <json|multidoc>`: which artifact to emit (validated at parse time). */
164
167
  format: "json" | "multidoc" | undefined;
165
- /** `sandbox export --path <p>`: output location (`-` for stdout; a dir or a full file path). */
168
+ /** `<env> export --path <p>`: output location (`-` for stdout; a dir or a full file path). */
166
169
  path: string | undefined;
167
- /** `sandbox export --name <n>`: output basename override (default `sandbox`). Also the `init`/`codegen` app name (default: target dir basename). */
170
+ /** `<env> export --name <n>`: output basename override. Also the `init` app name (default: target dir basename). */
168
171
  name: string | undefined;
169
172
  /**
170
- * `init`/`codegen` `--ai <preset>` (repeatable, comma-separated): AI-assistant instruction
173
+ * `init` `--ai <preset>` (repeatable, comma-separated): AI-assistant instruction
171
174
  * files to scaffold (`claude`/`codex`/`cursor`/`none`). Empty = prompt in a TTY,
172
175
  * else write none. Validated in the init command, not at parse time.
173
176
  */
@@ -182,45 +185,68 @@ interface ParsedArgs {
182
185
  */
183
186
  marketplace: string[];
184
187
  /**
185
- * `init`/`codegen` `--framework <id>`: which frontend to scaffold
188
+ * `init --from <source>`: where `xano/` comes from — `workspace`,
189
+ * `ephemeral:<name>`, or a path to a bundle JSON already on disk. Undefined
190
+ * writes the empty-but-valid starter backend instead.
191
+ *
192
+ * Kept as the raw string here and resolved in `init-command.ts`, so the one
193
+ * place that knows the spellings is the one that reports a bad one.
194
+ */
195
+ from: string | undefined;
196
+ /**
197
+ * `init` `--framework <id>`: which frontend to scaffold
186
198
  * (`react`/`svelte`). Undefined = prompt in a TTY, else the default.
187
199
  * Validated in `frontend-presets.ts`, not at parse time.
188
200
  */
189
201
  framework: string | undefined;
190
202
  /**
191
- * `init`/`codegen` `--theme <id>`: the shadcn/ui palette to render into the
203
+ * `init` `--theme <id>`: the shadcn/ui palette to render into the
192
204
  * scaffold's stylesheet — a `<base>` or `<base>-<accent>` pair, a registry
193
205
  * theme URL, or a path to a registry item JSON file. Undefined = plain
194
206
  * shadcn. Validated in `theme-presets.ts`, not at parse time.
195
207
  */
196
208
  theme: string | undefined;
197
- /** `init`/`codegen` `--radius <len>`: corner radius override, bare number = rem. */
209
+ /** `init` `--radius <len>`: corner radius override, bare number = rem. */
198
210
  radius: string | undefined;
199
211
  /**
200
- * `init`/`codegen` `--dark <mode>`: what switches the scaffold into its dark
212
+ * `init` `--dark <mode>`: what switches the scaffold into its dark
201
213
  * palette — `system` (default), `toggle`, or `off`.
202
214
  */
203
215
  dark: string | undefined;
204
- /** `init`/`codegen` `--font <id>`: the body typeface (Tailwind's `--font-sans`). */
216
+ /** `init` `--font <id>`: the body typeface (Tailwind's `--font-sans`). */
205
217
  font: string | undefined;
206
- /** `init`/`codegen` `--font-mono <id>`: the code typeface. */
218
+ /** `init` `--font-mono <id>`: the code typeface. */
207
219
  fontMono: string | undefined;
208
- /** `init`/`codegen` `--font-heading <id>`: the heading typeface; absent inherits the body face. */
220
+ /** `init` `--font-heading <id>`: the heading typeface; absent inherits the body face. */
209
221
  fontHeading: string | undefined;
210
- /** `init`/`codegen` `--icons <id>`: the icon set (`lucide` default, `tabler`, `phosphor`). */
222
+ /** `init` `--icons <id>`: the icon set (`lucide` default, `tabler`, `phosphor`). */
211
223
  icons: string | undefined;
212
- /** `init`/`codegen` `--force`: scaffold into a non-empty target directory (overwrite our own files). */
224
+ /** `init` `--force`: scaffold into a non-empty target directory (overwrite our own files). */
213
225
  force: boolean;
214
- /** `init`/`codegen` `--no-install`: skip the post-scaffold `npm install`. For `codegen` this also means the round trip cannot be verified, since loading the tree needs its dependencies. */
226
+ /** `init` `--no-install`: skip the post-scaffold `npm install`. Under `--from` this also means the round trip cannot be verified, since loading the tree needs its dependencies. */
215
227
  noInstall: boolean;
216
228
  /**
217
- * `deploy --no-verify`: skip the post-deploy liveness checks. Everything is
218
- * still deployed; XanoTS just doesn't wait to confirm it came up — neither
229
+ * `deploy --skip-liveness`: skip the post-deploy liveness checks. Everything
230
+ * is still deployed; XanoTS just doesn't wait to confirm it came up — neither
219
231
  * that the edge is serving *this* static build (via `X-Xano-Canonical`) nor
220
232
  * that the workspace's microservices reached a ready state. Useful for fast
221
233
  * iterative deploys or when the deployed URL isn't reachable from the CLI host.
222
234
  */
223
- noVerify: boolean;
235
+ skipLiveness: boolean;
236
+ /**
237
+ * `init --from … --skip-roundtrip`: skip the offline check that the tree just
238
+ * written re-exports as the bundle it was decoded from. Entirely local — no
239
+ * network, no deploy, no workspace mutation — which is why it is not the same
240
+ * flag as {@link skipLiveness} despite both once being spelled `--no-verify`.
241
+ */
242
+ skipRoundtrip: boolean;
243
+ /**
244
+ * `lock prune --identity-only`: drop the named entries without loading the
245
+ * entry file. The third thing `--no-verify` used to mean, and the least
246
+ * related to the other two: nothing is verified either way, the question is
247
+ * whether the workspace is evaluated at all.
248
+ */
249
+ identityOnly: boolean;
224
250
  /**
225
251
  * `deploy --require-microservices`: fail the deploy when a microservice has
226
252
  * not reported ready by the end of the wait, not just when the engine says it
@@ -230,7 +256,7 @@ interface ParsedArgs {
230
256
  */
231
257
  requireMicroservices: boolean;
232
258
  /**
233
- * `codegen --report <grouped|full|json>`: how the findings are rendered.
259
+ * `init --from … --report <grouped|full|json>`: how the findings are rendered.
234
260
  *
235
261
  * `grouped` (the default) prints one line per distinct root cause with a count
236
262
  * and a collapsed object list; `full` prints every site; `json` prints the
@@ -383,7 +409,7 @@ interface CompiledBundle {
383
409
  }
384
410
  /**
385
411
  * Thin wrapper over {@link compileBundle} for the many callers that only need the
386
- * bundle text (export, validate, sandbox-export). Seed content is not built here.
412
+ * bundle text (export, preflight). Seed content is not built here.
387
413
  */
388
414
  declare function exportBundleJson(args: ParsedArgs): Promise<string>;
389
415
  /**
package/dist/cli.js CHANGED
@@ -8,17 +8,19 @@ import {
8
8
  resolveHelpRequest,
9
9
  resolveLockPath,
10
10
  run
11
- } from "./chunk-K3YSQDXJ.js";
12
- import "./chunk-JQLR64UC.js";
13
- import "./chunk-OYMR5AMJ.js";
11
+ } from "./chunk-RCT7UX7B.js";
12
+ import "./chunk-CTD5ZCV6.js";
13
+ import "./chunk-XEOX6AM7.js";
14
+ import "./chunk-F6CYJ7TN.js";
14
15
  import "./chunk-GNPVYOPB.js";
15
16
  import "./chunk-EZG76F7R.js";
16
- import "./chunk-UDL46O35.js";
17
- import "./chunk-OKNSR7MT.js";
18
- import "./chunk-QONOJO45.js";
17
+ import "./chunk-OWGCOGKK.js";
18
+ import "./chunk-DIA7CT7J.js";
19
+ import "./chunk-QK7ZQJLP.js";
19
20
  import "./chunk-WHOJWOSV.js";
21
+ import "./chunk-VAF6A3YD.js";
20
22
  import "./chunk-5XZ744TS.js";
21
- import "./chunk-7JDT4PBU.js";
23
+ import "./chunk-OHX6MIUZ.js";
22
24
  export {
23
25
  compileBundle,
24
26
  exportBundleJson,
@@ -0,0 +1,49 @@
1
+ import {
2
+ blameGeneratedFile,
3
+ fetchWorkspaceBundle,
4
+ isMissingDependencyError,
5
+ runInitFromCommand,
6
+ verifyCrashEntry
7
+ } from "./chunk-HYBN4H3F.js";
8
+ import "./chunk-ZQ2PKR6R.js";
9
+ import "./chunk-K5IOND4K.js";
10
+ import "./chunk-QKM4U5UK.js";
11
+ import "./chunk-FE5I6S6N.js";
12
+ import "./chunk-7ZYW652H.js";
13
+ import "./chunk-ZUTSMMAG.js";
14
+ import "./chunk-X4DVXBFY.js";
15
+ import "./chunk-3IGNIP6R.js";
16
+ import "./chunk-4IF54NU5.js";
17
+ import "./chunk-KA6G2L7U.js";
18
+ import "./chunk-ZSYZTGJH.js";
19
+ import "./chunk-G4EJMQLD.js";
20
+ import "./chunk-LU7TRWMC.js";
21
+ import "./chunk-YBC3IKMF.js";
22
+ import "./chunk-ANUDXFEX.js";
23
+ import "./chunk-Q77KNEUL.js";
24
+ import "./chunk-BSK7ELHU.js";
25
+ import "./chunk-UOZMSF4C.js";
26
+ import "./chunk-EHP3WPEG.js";
27
+ import "./chunk-3INK4Y4E.js";
28
+ import "./chunk-BC2C5GVI.js";
29
+ import "./chunk-RCT7UX7B.js";
30
+ import "./chunk-CTD5ZCV6.js";
31
+ import "./chunk-XEOX6AM7.js";
32
+ import "./chunk-F6CYJ7TN.js";
33
+ import "./chunk-GNPVYOPB.js";
34
+ import "./chunk-EZG76F7R.js";
35
+ import "./chunk-OWGCOGKK.js";
36
+ import "./chunk-DIA7CT7J.js";
37
+ import "./chunk-QK7ZQJLP.js";
38
+ import "./chunk-WHOJWOSV.js";
39
+ import "./chunk-VAF6A3YD.js";
40
+ import "./chunk-5XZ744TS.js";
41
+ import "./chunk-OHX6MIUZ.js";
42
+ export {
43
+ blameGeneratedFile,
44
+ fetchWorkspaceBundle,
45
+ isMissingDependencyError,
46
+ runInitFromCommand,
47
+ verifyCrashEntry
48
+ };
49
+ //# sourceMappingURL=codegen-command-FUT2KJB6.js.map
package/dist/codegen.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { a1 as Statement, a8 as Tag, w as FilterXdo, a9 as TaggedValue, p as FieldDescriptor, Z as ResponseDef } from './response-CVAE2kMj.js';
1
+ import { S as Statement, f as FieldDescriptor, w as ResponseDef } from './response-BQVQ24l1.js';
2
+ import { n as Tag, h as FilterXdo, o as TaggedValue } from './xdo-BjJj5W_E.js';
2
3
 
3
4
  /** A stored statement envelope as it appears in a Xano bundle's `run[]`. */
4
5
  type RawEnvelope = Record<string, unknown>;
@@ -6,7 +6,7 @@ import {
6
6
  liveCommandNames,
7
7
  liveSubcommandNames,
8
8
  visibleFlags
9
- } from "./chunk-OKNSR7MT.js";
9
+ } from "./chunk-DIA7CT7J.js";
10
10
 
11
11
  // src/emit/completion.ts
12
12
  var COMPLETION_SHELLS = ["bash", "zsh", "fish"];
@@ -296,4 +296,4 @@ export {
296
296
  renderCompletion,
297
297
  runCompletionCommand
298
298
  };
299
- //# sourceMappingURL=completion-A6BZ3XGU.js.map
299
+ //# sourceMappingURL=completion-WF46272M.js.map
@@ -81,4 +81,4 @@ export {
81
81
  resolveValidateConfig,
82
82
  verifyToken
83
83
  };
84
- //# sourceMappingURL=config-NL33PN4D.js.map
84
+ //# sourceMappingURL=config-476F3PT5.js.map