@knowzai/cli 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/README.md +68 -0
  2. package/assets/portable/releases.json +42 -0
  3. package/assets/selfhosted/.env.example +22 -1
  4. package/assets/selfhosted/docker-compose.mssql.yml +113 -0
  5. package/assets/selfhosted/docker-compose.yml +29 -15
  6. package/assets/selfhosted/lmstudio-azure-bridge.mjs +73 -0
  7. package/assets/selfhosted/releases.json +129 -6
  8. package/bin/run.js +2 -0
  9. package/dist/.tsbuildinfo +1 -1
  10. package/dist/base-command.d.ts +2 -0
  11. package/dist/base-command.d.ts.map +1 -1
  12. package/dist/base-command.js +11 -1
  13. package/dist/base-command.js.map +1 -1
  14. package/dist/commands/ask.d.ts.map +1 -1
  15. package/dist/commands/ask.js +2 -0
  16. package/dist/commands/ask.js.map +1 -1
  17. package/dist/commands/backup.d.ts +1 -0
  18. package/dist/commands/backup.d.ts.map +1 -1
  19. package/dist/commands/backup.js +29 -10
  20. package/dist/commands/backup.js.map +1 -1
  21. package/dist/commands/chat.d.ts +2 -1
  22. package/dist/commands/chat.d.ts.map +1 -1
  23. package/dist/commands/chat.js +10 -4
  24. package/dist/commands/chat.js.map +1 -1
  25. package/dist/commands/down.d.ts +14 -27
  26. package/dist/commands/down.d.ts.map +1 -1
  27. package/dist/commands/down.js +6 -31
  28. package/dist/commands/down.js.map +1 -1
  29. package/dist/commands/knowledge/amend.d.ts +2 -2
  30. package/dist/commands/knowledge/amend.d.ts.map +1 -1
  31. package/dist/commands/knowledge/amend.js +5 -0
  32. package/dist/commands/knowledge/amend.js.map +1 -1
  33. package/dist/commands/login.d.ts +4 -0
  34. package/dist/commands/login.d.ts.map +1 -1
  35. package/dist/commands/login.js +21 -2
  36. package/dist/commands/login.js.map +1 -1
  37. package/dist/commands/menu.js +1 -1
  38. package/dist/commands/menu.js.map +1 -1
  39. package/dist/commands/platform/destroy.d.ts +15 -5
  40. package/dist/commands/platform/destroy.d.ts.map +1 -1
  41. package/dist/commands/platform/destroy.js +6 -33
  42. package/dist/commands/platform/destroy.js.map +1 -1
  43. package/dist/commands/platform/doctor.d.ts +18 -3
  44. package/dist/commands/platform/doctor.d.ts.map +1 -1
  45. package/dist/commands/platform/doctor.js +4 -10
  46. package/dist/commands/platform/doctor.js.map +1 -1
  47. package/dist/commands/platform/down.d.ts +15 -15
  48. package/dist/commands/platform/down.d.ts.map +1 -1
  49. package/dist/commands/platform/down.js +4 -8
  50. package/dist/commands/platform/down.js.map +1 -1
  51. package/dist/commands/platform/logs.d.ts +15 -14
  52. package/dist/commands/platform/logs.d.ts.map +1 -1
  53. package/dist/commands/platform/logs.js +5 -16
  54. package/dist/commands/platform/logs.js.map +1 -1
  55. package/dist/commands/platform/reset.d.ts +16 -13
  56. package/dist/commands/platform/reset.d.ts.map +1 -1
  57. package/dist/commands/platform/reset.js +7 -36
  58. package/dist/commands/platform/reset.js.map +1 -1
  59. package/dist/commands/platform/setup.d.ts +1 -0
  60. package/dist/commands/platform/setup.d.ts.map +1 -1
  61. package/dist/commands/platform/setup.js +1 -1
  62. package/dist/commands/platform/setup.js.map +1 -1
  63. package/dist/commands/platform/status.d.ts +14 -16
  64. package/dist/commands/platform/status.d.ts.map +1 -1
  65. package/dist/commands/platform/status.js +4 -29
  66. package/dist/commands/platform/status.js.map +1 -1
  67. package/dist/commands/restore.d.ts +10 -1
  68. package/dist/commands/restore.d.ts.map +1 -1
  69. package/dist/commands/restore.js +56 -13
  70. package/dist/commands/restore.js.map +1 -1
  71. package/dist/commands/runtime/destroy.d.ts +29 -0
  72. package/dist/commands/runtime/destroy.d.ts.map +1 -0
  73. package/dist/commands/runtime/destroy.js +13 -0
  74. package/dist/commands/runtime/destroy.js.map +1 -0
  75. package/dist/commands/runtime/doctor.d.ts +27 -0
  76. package/dist/commands/runtime/doctor.d.ts.map +1 -0
  77. package/dist/commands/runtime/doctor.js +11 -0
  78. package/dist/commands/runtime/doctor.js.map +1 -0
  79. package/dist/commands/runtime/logs.d.ts +28 -0
  80. package/dist/commands/runtime/logs.d.ts.map +1 -0
  81. package/dist/commands/runtime/logs.js +12 -0
  82. package/dist/commands/runtime/logs.js.map +1 -0
  83. package/dist/commands/runtime/status.d.ts +27 -0
  84. package/dist/commands/runtime/status.d.ts.map +1 -0
  85. package/dist/commands/runtime/status.js +11 -0
  86. package/dist/commands/runtime/status.js.map +1 -0
  87. package/dist/commands/runtime/upgrade.d.ts +28 -0
  88. package/dist/commands/runtime/upgrade.d.ts.map +1 -0
  89. package/dist/commands/runtime/upgrade.js +12 -0
  90. package/dist/commands/runtime/upgrade.js.map +1 -0
  91. package/dist/commands/setup.d.ts +1 -0
  92. package/dist/commands/setup.d.ts.map +1 -1
  93. package/dist/commands/setup.js +1 -1
  94. package/dist/commands/transfer.js +1 -1
  95. package/dist/commands/transfer.js.map +1 -1
  96. package/dist/commands/up.d.ts +3 -11
  97. package/dist/commands/up.d.ts.map +1 -1
  98. package/dist/commands/up.js +48 -36
  99. package/dist/commands/up.js.map +1 -1
  100. package/dist/commands/whoami.js +1 -1
  101. package/dist/commands/whoami.js.map +1 -1
  102. package/dist/hooks/init/launch-menu.d.ts.map +1 -1
  103. package/dist/hooks/init/launch-menu.js +2 -0
  104. package/dist/hooks/init/launch-menu.js.map +1 -1
  105. package/dist/lib/anonymous-registry.d.ts +3 -0
  106. package/dist/lib/anonymous-registry.d.ts.map +1 -0
  107. package/dist/lib/anonymous-registry.js +25 -0
  108. package/dist/lib/anonymous-registry.js.map +1 -0
  109. package/dist/lib/async-process.d.ts +15 -0
  110. package/dist/lib/async-process.d.ts.map +1 -0
  111. package/dist/lib/async-process.js +145 -0
  112. package/dist/lib/async-process.js.map +1 -0
  113. package/dist/lib/backup-process.d.ts +4 -0
  114. package/dist/lib/backup-process.d.ts.map +1 -0
  115. package/dist/lib/backup-process.js +20 -0
  116. package/dist/lib/backup-process.js.map +1 -0
  117. package/dist/lib/brand.d.ts +25 -0
  118. package/dist/lib/brand.d.ts.map +1 -0
  119. package/dist/lib/brand.js +105 -0
  120. package/dist/lib/brand.js.map +1 -0
  121. package/dist/lib/chat.d.ts +1 -0
  122. package/dist/lib/chat.d.ts.map +1 -1
  123. package/dist/lib/chat.js +12 -3
  124. package/dist/lib/chat.js.map +1 -1
  125. package/dist/lib/compose-status.d.ts +14 -0
  126. package/dist/lib/compose-status.d.ts.map +1 -0
  127. package/dist/lib/compose-status.js +31 -0
  128. package/dist/lib/compose-status.js.map +1 -0
  129. package/dist/lib/container-engine.js +2 -2
  130. package/dist/lib/container-engine.js.map +1 -1
  131. package/dist/lib/local-engine-context.d.ts +16 -0
  132. package/dist/lib/local-engine-context.d.ts.map +1 -0
  133. package/dist/lib/local-engine-context.js +123 -0
  134. package/dist/lib/local-engine-context.js.map +1 -0
  135. package/dist/lib/login-guided.d.ts.map +1 -1
  136. package/dist/lib/login-guided.js +2 -1
  137. package/dist/lib/login-guided.js.map +1 -1
  138. package/dist/lib/login.d.ts +3 -0
  139. package/dist/lib/login.d.ts.map +1 -1
  140. package/dist/lib/login.js +25 -5
  141. package/dist/lib/login.js.map +1 -1
  142. package/dist/lib/oci-registry-probe.d.ts +43 -0
  143. package/dist/lib/oci-registry-probe.d.ts.map +1 -0
  144. package/dist/lib/oci-registry-probe.js +110 -0
  145. package/dist/lib/oci-registry-probe.js.map +1 -0
  146. package/dist/lib/peer-command.d.ts.map +1 -1
  147. package/dist/lib/peer-command.js +3 -1
  148. package/dist/lib/peer-command.js.map +1 -1
  149. package/dist/lib/platform-acquisition.d.ts +27 -0
  150. package/dist/lib/platform-acquisition.d.ts.map +1 -0
  151. package/dist/lib/platform-acquisition.js +21 -0
  152. package/dist/lib/platform-acquisition.js.map +1 -0
  153. package/dist/lib/platform-backup.d.ts +1 -0
  154. package/dist/lib/platform-backup.d.ts.map +1 -1
  155. package/dist/lib/platform-backup.js +375 -157
  156. package/dist/lib/platform-backup.js.map +1 -1
  157. package/dist/lib/platform-command-shared.d.ts +2 -0
  158. package/dist/lib/platform-command-shared.d.ts.map +1 -1
  159. package/dist/lib/platform-command-shared.js +13 -5
  160. package/dist/lib/platform-command-shared.js.map +1 -1
  161. package/dist/lib/platform-edition.d.ts +3 -6
  162. package/dist/lib/platform-edition.d.ts.map +1 -1
  163. package/dist/lib/platform-edition.js +9 -17
  164. package/dist/lib/platform-edition.js.map +1 -1
  165. package/dist/lib/platform-frontdoor-runtime.d.ts.map +1 -1
  166. package/dist/lib/platform-frontdoor-runtime.js +44 -19
  167. package/dist/lib/platform-frontdoor-runtime.js.map +1 -1
  168. package/dist/lib/platform-frontdoor.d.ts +32 -5
  169. package/dist/lib/platform-frontdoor.d.ts.map +1 -1
  170. package/dist/lib/platform-frontdoor.js +251 -171
  171. package/dist/lib/platform-frontdoor.js.map +1 -1
  172. package/dist/lib/platform-image-admission.d.ts +16 -0
  173. package/dist/lib/platform-image-admission.d.ts.map +1 -0
  174. package/dist/lib/platform-image-admission.js +73 -0
  175. package/dist/lib/platform-image-admission.js.map +1 -0
  176. package/dist/lib/platform-image-source.d.ts.map +1 -1
  177. package/dist/lib/platform-image-source.js +2 -0
  178. package/dist/lib/platform-image-source.js.map +1 -1
  179. package/dist/lib/platform-lifecycle.d.ts +4 -0
  180. package/dist/lib/platform-lifecycle.d.ts.map +1 -1
  181. package/dist/lib/platform-lifecycle.js +42 -8
  182. package/dist/lib/platform-lifecycle.js.map +1 -1
  183. package/dist/lib/platform-onboarding.d.ts +10 -0
  184. package/dist/lib/platform-onboarding.d.ts.map +1 -1
  185. package/dist/lib/platform-onboarding.js +21 -0
  186. package/dist/lib/platform-onboarding.js.map +1 -1
  187. package/dist/lib/platform-preflight.d.ts +6 -3
  188. package/dist/lib/platform-preflight.d.ts.map +1 -1
  189. package/dist/lib/platform-preflight.js +52 -19
  190. package/dist/lib/platform-preflight.js.map +1 -1
  191. package/dist/lib/platform-release-manifest.d.ts +6 -1
  192. package/dist/lib/platform-release-manifest.d.ts.map +1 -1
  193. package/dist/lib/platform-release-manifest.js +10 -0
  194. package/dist/lib/platform-release-manifest.js.map +1 -1
  195. package/dist/lib/platform-runtime.d.ts +5 -2
  196. package/dist/lib/platform-runtime.d.ts.map +1 -1
  197. package/dist/lib/platform-runtime.js +7 -40
  198. package/dist/lib/platform-runtime.js.map +1 -1
  199. package/dist/lib/portable-release-digests.d.ts +5 -0
  200. package/dist/lib/portable-release-digests.d.ts.map +1 -0
  201. package/dist/lib/portable-release-digests.js +53 -0
  202. package/dist/lib/portable-release-digests.js.map +1 -0
  203. package/dist/lib/release-pin-matrix.d.ts +29 -0
  204. package/dist/lib/release-pin-matrix.d.ts.map +1 -0
  205. package/dist/lib/release-pin-matrix.js +67 -0
  206. package/dist/lib/release-pin-matrix.js.map +1 -0
  207. package/dist/lib/runtime-backup-archive.d.ts +20 -0
  208. package/dist/lib/runtime-backup-archive.d.ts.map +1 -0
  209. package/dist/lib/runtime-backup-archive.js +269 -0
  210. package/dist/lib/runtime-backup-archive.js.map +1 -0
  211. package/dist/lib/runtime-command.d.ts +37 -0
  212. package/dist/lib/runtime-command.d.ts.map +1 -0
  213. package/dist/lib/runtime-command.js +50 -0
  214. package/dist/lib/runtime-command.js.map +1 -0
  215. package/dist/lib/runtime-discovery.d.ts +18 -0
  216. package/dist/lib/runtime-discovery.d.ts.map +1 -0
  217. package/dist/lib/runtime-discovery.js +56 -0
  218. package/dist/lib/runtime-discovery.js.map +1 -0
  219. package/dist/lib/runtime-lock.d.ts +3 -0
  220. package/dist/lib/runtime-lock.d.ts.map +1 -0
  221. package/dist/lib/runtime-lock.js +50 -0
  222. package/dist/lib/runtime-lock.js.map +1 -0
  223. package/dist/lib/runtime-operations.d.ts +98 -0
  224. package/dist/lib/runtime-operations.d.ts.map +1 -0
  225. package/dist/lib/runtime-operations.js +182 -0
  226. package/dist/lib/runtime-operations.js.map +1 -0
  227. package/dist/lib/runtime-provider.d.ts +17 -0
  228. package/dist/lib/runtime-provider.d.ts.map +1 -0
  229. package/dist/lib/runtime-provider.js +52 -0
  230. package/dist/lib/runtime-provider.js.map +1 -0
  231. package/dist/lib/runtime-status.d.ts +24 -0
  232. package/dist/lib/runtime-status.d.ts.map +1 -0
  233. package/dist/lib/runtime-status.js +128 -0
  234. package/dist/lib/runtime-status.js.map +1 -0
  235. package/dist/lib/selfhosted-backup.d.ts +37 -0
  236. package/dist/lib/selfhosted-backup.d.ts.map +1 -0
  237. package/dist/lib/selfhosted-backup.js +446 -0
  238. package/dist/lib/selfhosted-backup.js.map +1 -0
  239. package/dist/lib/selfhosted-keyring.d.ts +19 -0
  240. package/dist/lib/selfhosted-keyring.d.ts.map +1 -0
  241. package/dist/lib/selfhosted-keyring.js +193 -0
  242. package/dist/lib/selfhosted-keyring.js.map +1 -0
  243. package/dist/lib/selfhosted-lifecycle.d.ts +66 -10
  244. package/dist/lib/selfhosted-lifecycle.d.ts.map +1 -1
  245. package/dist/lib/selfhosted-lifecycle.js +344 -39
  246. package/dist/lib/selfhosted-lifecycle.js.map +1 -1
  247. package/dist/lib/selfhosted-login.d.ts +34 -0
  248. package/dist/lib/selfhosted-login.d.ts.map +1 -0
  249. package/dist/lib/selfhosted-login.js +116 -0
  250. package/dist/lib/selfhosted-login.js.map +1 -0
  251. package/dist/lib/selfhosted-readiness.d.ts +3 -0
  252. package/dist/lib/selfhosted-readiness.d.ts.map +1 -0
  253. package/dist/lib/selfhosted-readiness.js +24 -0
  254. package/dist/lib/selfhosted-readiness.js.map +1 -0
  255. package/dist/lib/setup-capabilities.d.ts +15 -0
  256. package/dist/lib/setup-capabilities.d.ts.map +1 -0
  257. package/dist/lib/setup-capabilities.js +21 -0
  258. package/dist/lib/setup-capabilities.js.map +1 -0
  259. package/dist/lib/setup-console.d.ts +11 -0
  260. package/dist/lib/setup-console.d.ts.map +1 -1
  261. package/dist/lib/setup-console.js +136 -74
  262. package/dist/lib/setup-console.js.map +1 -1
  263. package/dist/lib/setup-page.d.ts +12 -0
  264. package/dist/lib/setup-page.d.ts.map +1 -1
  265. package/dist/lib/setup-page.js +56 -27
  266. package/dist/lib/setup-page.js.map +1 -1
  267. package/dist/lib/setup-plan.d.ts +1 -0
  268. package/dist/lib/setup-plan.d.ts.map +1 -1
  269. package/dist/lib/setup-plan.js +5 -1
  270. package/dist/lib/setup-plan.js.map +1 -1
  271. package/dist/lib/setup-server.d.ts +11 -2
  272. package/dist/lib/setup-server.d.ts.map +1 -1
  273. package/dist/lib/setup-server.js +150 -26
  274. package/dist/lib/setup-server.js.map +1 -1
  275. package/dist/lib/ui.d.ts +3 -1
  276. package/dist/lib/ui.d.ts.map +1 -1
  277. package/dist/lib/ui.js +39 -7
  278. package/dist/lib/ui.js.map +1 -1
  279. package/dist/lib/up-result.d.ts +3 -0
  280. package/dist/lib/up-result.d.ts.map +1 -1
  281. package/dist/lib/up-result.js.map +1 -1
  282. package/dist/menu/run.js +1 -1
  283. package/dist/menu/run.js.map +1 -1
  284. package/dist/menu/should-launch.d.ts +0 -14
  285. package/dist/menu/should-launch.d.ts.map +1 -1
  286. package/dist/menu/should-launch.js +5 -1
  287. package/dist/menu/should-launch.js.map +1 -1
  288. package/oclif.manifest.json +5052 -2825
  289. package/package.json +12 -9
@@ -5,12 +5,21 @@ export default class Restore extends BaseCommand {
5
5
  archive: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
6
6
  };
7
7
  static flags: {
8
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
9
  'replace-installation': import("@oclif/core/interfaces").BooleanFlag<boolean>;
9
10
  clone: import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
11
  name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
11
12
  'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
13
  yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
14
  };
14
- run(): Promise<import("../lib/platform-backup.js").PortableRestoreResult>;
15
+ run(): Promise<{
16
+ edition: "selfhosted";
17
+ version: string;
18
+ platformName: string;
19
+ integrityChecked: boolean;
20
+ healthPassed: boolean;
21
+ next: string;
22
+ warning: string;
23
+ } | import("../lib/platform-backup.js").PortableRestoreResult>;
15
24
  }
16
25
  //# sourceMappingURL=restore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAKhD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW;IAC9C,OAAgB,WAAW,SAAoF;IAC/G,OAAgB,IAAI;;MAAqG;IACzH,OAAgB,KAAK;;;;;;MAMpB;IAEK,GAAG;CAgCV"}
1
+ {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAUjD,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW;IAC9C,OAAgB,WAAW,SAC0E;IACrG,OAAgB,IAAI;;MAElB;IACF,OAAgB,KAAK;;;;;;;MAcnB;IAEI,GAAG;;;;;;;;;CA+EV"}
@@ -1,15 +1,30 @@
1
1
  import { Args, Flags } from '@oclif/core';
2
2
  import { ExitCode, KnowzError, registerSecret } from '@knowzai/core';
3
3
  import { BaseCommand } from '../base-command.js';
4
- import { resolveEngineStatus, runEngineProbes } from '../lib/container-engine.js';
4
+ import { resolveEngineStatus, runEngineProbesAsync } from '../lib/container-engine.js';
5
5
  import { resolveRestoreIdentityMode, runPortableRestore } from '../lib/platform-backup.js';
6
- import { nodeProcessRunner, resolvePlatformPaths } from '../lib/platform-runtime.js';
6
+ import { discoverRuntime } from '../lib/runtime-discovery.js';
7
+ import { inspectRuntimeBackup } from '../lib/runtime-backup-archive.js';
8
+ import { runSelfHostedRestore } from '../lib/selfhosted-backup.js';
9
+ import { resolveSelfHostedPaths } from '../lib/selfhosted-lifecycle.js';
10
+ import { resolvePlatformPaths } from '../lib/platform-runtime.js';
11
+ import { createBackupProcessRunner } from '../lib/backup-process.js';
7
12
  export default class Restore extends BaseCommand {
8
- static description = 'Restore a portable-platform backup after validating its manifest and checksums.';
9
- static args = { archive: Args.string({ required: true, description: 'Backup .tar.gz or .tar.gz.enc archive' }) };
13
+ static description = 'Restore a selfhosted or portable backup after validating edition, integrity and target identity.';
14
+ static args = {
15
+ archive: Args.string({ required: true, description: 'Backup .tar.gz or .tar.gz.enc archive' }),
16
+ };
10
17
  static flags = {
11
- 'replace-installation': Flags.boolean({ description: 'Restore the same installation identity and seat' }),
12
- clone: Flags.boolean({ description: 'Create an empty identity volume for a new installation and seat' }),
18
+ edition: Flags.string({
19
+ options: ['selfhosted', 'portable'],
20
+ description: 'Require this archive/runtime edition',
21
+ }),
22
+ 'replace-installation': Flags.boolean({
23
+ description: 'Explicitly replace a stopped target; preserve portable installation identity',
24
+ }),
25
+ clone: Flags.boolean({
26
+ description: 'Create an empty identity volume for a new installation and seat',
27
+ }),
13
28
  name: Flags.string({ description: 'Runtime project name', default: 'knowz' }),
14
29
  'config-dir': Flags.string({ description: 'Knowz configuration root' }),
15
30
  yes: Flags.boolean({ char: 'y', description: 'Bypass typed destructive confirmation' }),
@@ -17,7 +32,8 @@ export default class Restore extends BaseCommand {
17
32
  async run() {
18
33
  const { args, flags } = await this.parse(Restore);
19
34
  const mode = resolveRestoreIdentityMode({
20
- replaceInstallation: flags['replace-installation'], clone: flags.clone,
35
+ replaceInstallation: flags['replace-installation'],
36
+ clone: flags.clone,
21
37
  });
22
38
  let passphrase = process.env.KNOWZ_BACKUP_PASSPHRASE;
23
39
  if (args.archive.endsWith('.enc') && !passphrase) {
@@ -28,9 +44,34 @@ export default class Restore extends BaseCommand {
28
44
  }
29
45
  if (passphrase)
30
46
  registerSecret(passphrase);
31
- const paths = resolvePlatformPaths(flags.name, flags['config-dir']);
32
- const engine = resolveEngineStatus(runEngineProbes(nodeProcessRunner), process.platform, process.env);
33
- const result = await runPortableRestore({
47
+ const runner = createBackupProcessRunner();
48
+ const archiveInfo = await inspectRuntimeBackup({
49
+ archive: args.archive,
50
+ passphrase,
51
+ runner,
52
+ });
53
+ if (flags.edition && flags.edition !== archiveInfo.edition)
54
+ throw new KnowzError('Requested edition differs from the backup archive. Cross-edition infrastructure restore is not supported.', ExitCode.Usage);
55
+ const installed = discoverRuntime({ name: flags.name, configDir: flags['config-dir'] });
56
+ if (installed && installed.edition !== archiveInfo.edition)
57
+ throw new KnowzError('Target name belongs to another edition. Restore into a new --name.', ExitCode.Usage);
58
+ if (installed && !flags['replace-installation'])
59
+ throw new KnowzError('Target is occupied. Use a new --name or explicitly --replace-installation after stopping it.', ExitCode.Usage);
60
+ const sh = resolveSelfHostedPaths(flags.name, flags['config-dir']);
61
+ const paths = installed?.paths ??
62
+ (archiveInfo.edition === 'portable'
63
+ ? resolvePlatformPaths(flags.name, flags['config-dir'])
64
+ : {
65
+ runtimeDir: sh.root,
66
+ composeFile: sh.composeFile,
67
+ envFile: sh.envFile,
68
+ stateFile: sh.stateFile,
69
+ postgresInitDir: sh.root,
70
+ });
71
+ const engine = resolveEngineStatus(await runEngineProbesAsync(runner), process.platform, process.env);
72
+ const restore = archiveInfo.edition === 'selfhosted' ? runSelfHostedRestore : runPortableRestore;
73
+ const result = await restore({
74
+ replaceExisting: flags['replace-installation'],
34
75
  archive: args.archive,
35
76
  paths,
36
77
  projectName: flags.name,
@@ -39,13 +80,15 @@ export default class Restore extends BaseCommand {
39
80
  isTty: process.stdin.isTTY === true,
40
81
  passphrase,
41
82
  engine,
42
- runner: nodeProcessRunner,
83
+ runner,
43
84
  confirmName: async () => {
44
85
  const { input } = await import('@inquirer/prompts');
45
86
  return input({ message: `Type '${flags.name}' to confirm destructive restore` });
46
87
  },
47
- emit: line => { if (!this.jsonEnabled())
48
- this.log(line); },
88
+ emit: (line) => {
89
+ if (!this.jsonEnabled())
90
+ this.log(line);
91
+ },
49
92
  });
50
93
  return result;
51
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { RuntimeCommand } from '../../lib/runtime-command.js';
2
+ export default class RuntimeDestroy extends RuntimeCommand {
3
+ static id: string;
4
+ static description: string;
5
+ static flags: {
6
+ yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ 'purge-profile': import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
10
+ 'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ };
12
+ run(): Promise<{
13
+ output: string;
14
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
15
+ name: string;
16
+ edition: "selfhosted" | "portable";
17
+ installedVersion: string;
18
+ runtimeDir: string;
19
+ engine: import("../../lib/container-engine.js").ContainerEngineId;
20
+ } | {
21
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
22
+ name: string;
23
+ error: {
24
+ code: string;
25
+ message: string;
26
+ };
27
+ }>;
28
+ }
29
+ //# sourceMappingURL=destroy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destroy.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime/destroy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACxD,OAAgB,EAAE,SAAqB;IACvC,OAAgB,WAAW,SAA+E;IAC1G,OAAgB,KAAK;;;;;;MAC+F;IAE9G,GAAG;;;;;;;;;;;;;;;;CAIV"}
@@ -0,0 +1,13 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { RuntimeCommand, runtimeIdentityFlags } from '../../lib/runtime-command.js';
3
+ export default class RuntimeDestroy extends RuntimeCommand {
4
+ static id = 'runtime:destroy';
5
+ static description = 'Permanently destroy only the selected runtime and its owned data volumes.';
6
+ static flags = { ...runtimeIdentityFlags, yes: Flags.boolean({ char: 'y', description: 'Confirm permanent runtime and volume deletion' }),
7
+ 'purge-profile': Flags.boolean({ description: 'Also remove the runtime CLI profile if it still points here' }), };
8
+ async run() {
9
+ const { flags } = await this.parse(RuntimeDestroy);
10
+ return this.runOperation('destroy', flags);
11
+ }
12
+ }
13
+ //# sourceMappingURL=destroy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"destroy.js","sourceRoot":"","sources":["../../../src/commands/runtime/destroy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACxD,MAAM,CAAU,EAAE,GAAG,iBAAiB,CAAC;IACvC,MAAM,CAAU,WAAW,GAAG,2EAA2E,CAAC;IAC1G,MAAM,CAAU,KAAK,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,+CAA+C,EAAE,CAAC;QAChJ,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,6DAA6D,EAAE,CAAC,GAAG,CAAC;IAEpH,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { RuntimeCommand } from '../../lib/runtime-command.js';
2
+ export default class RuntimeDoctor extends RuntimeCommand {
3
+ static id: string;
4
+ static description: string;
5
+ static flags: {
6
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
8
+ 'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ };
10
+ run(): Promise<{
11
+ output: string;
12
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
13
+ name: string;
14
+ edition: "selfhosted" | "portable";
15
+ installedVersion: string;
16
+ runtimeDir: string;
17
+ engine: import("../../lib/container-engine.js").ContainerEngineId;
18
+ } | {
19
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
20
+ name: string;
21
+ error: {
22
+ code: string;
23
+ message: string;
24
+ };
25
+ }>;
26
+ }
27
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,OAAgB,EAAE,SAAoB;IACtC,OAAgB,WAAW,SAA6F;IACxH,OAAgB,KAAK;;;;MAAwB;IAEvC,GAAG;;;;;;;;;;;;;;;;CAIV"}
@@ -0,0 +1,11 @@
1
+ import { RuntimeCommand, runtimeIdentityFlags } from '../../lib/runtime-command.js';
2
+ export default class RuntimeDoctor extends RuntimeCommand {
3
+ static id = 'runtime:doctor';
4
+ static description = 'Check the selected runtime engine, service health, versions and provider configuration.';
5
+ static flags = runtimeIdentityFlags;
6
+ async run() {
7
+ const { flags } = await this.parse(RuntimeDoctor);
8
+ return this.runOperation('doctor', flags);
9
+ }
10
+ }
11
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/commands/runtime/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,MAAM,CAAU,EAAE,GAAG,gBAAgB,CAAC;IACtC,MAAM,CAAU,WAAW,GAAG,yFAAyF,CAAC;IACxH,MAAM,CAAU,KAAK,GAAG,oBAAoB,CAAC;IAE7C,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { RuntimeCommand } from '../../lib/runtime-command.js';
2
+ export default class RuntimeLogs extends RuntimeCommand {
3
+ static id: string;
4
+ static description: string;
5
+ static flags: {
6
+ tail: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
7
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
+ 'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ };
11
+ run(): Promise<{
12
+ output: string;
13
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
14
+ name: string;
15
+ edition: "selfhosted" | "portable";
16
+ installedVersion: string;
17
+ runtimeDir: string;
18
+ engine: import("../../lib/container-engine.js").ContainerEngineId;
19
+ } | {
20
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
21
+ name: string;
22
+ error: {
23
+ code: string;
24
+ message: string;
25
+ };
26
+ }>;
27
+ }
28
+ //# sourceMappingURL=logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime/logs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IACrD,OAAgB,EAAE,SAAkB;IACpC,OAAgB,WAAW,SAAyD;IACpF,OAAgB,KAAK;;;;;MAAyG;IAExH,GAAG;;;;;;;;;;;;;;;;CAIV"}
@@ -0,0 +1,12 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { RuntimeCommand, runtimeIdentityFlags } from '../../lib/runtime-command.js';
3
+ export default class RuntimeLogs extends RuntimeCommand {
4
+ static id = 'runtime:logs';
5
+ static description = 'Show redacted logs from the selected Knowz runtime.';
6
+ static flags = { ...runtimeIdentityFlags, tail: Flags.integer({ description: 'Lines per service', default: 100 }), };
7
+ async run() {
8
+ const { flags } = await this.parse(RuntimeLogs);
9
+ return this.runOperation('logs', flags);
10
+ }
11
+ }
12
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/commands/runtime/logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IACrD,MAAM,CAAU,EAAE,GAAG,cAAc,CAAC;IACpC,MAAM,CAAU,WAAW,GAAG,qDAAqD,CAAC;IACpF,MAAM,CAAU,KAAK,GAAG,EAAE,GAAG,oBAAoB,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC;IAE9H,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { RuntimeCommand } from '../../lib/runtime-command.js';
2
+ export default class RuntimeStatus extends RuntimeCommand {
3
+ static id: string;
4
+ static description: string;
5
+ static flags: {
6
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
8
+ 'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ };
10
+ run(): Promise<{
11
+ output: string;
12
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
13
+ name: string;
14
+ edition: "selfhosted" | "portable";
15
+ installedVersion: string;
16
+ runtimeDir: string;
17
+ engine: import("../../lib/container-engine.js").ContainerEngineId;
18
+ } | {
19
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
20
+ name: string;
21
+ error: {
22
+ code: string;
23
+ message: string;
24
+ };
25
+ }>;
26
+ }
27
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,OAAgB,EAAE,SAAoB;IACtC,OAAgB,WAAW,SAAkF;IAC7G,OAAgB,KAAK;;;;MAAwB;IAEvC,GAAG;;;;;;;;;;;;;;;;CAIV"}
@@ -0,0 +1,11 @@
1
+ import { RuntimeCommand, runtimeIdentityFlags } from '../../lib/runtime-command.js';
2
+ export default class RuntimeStatus extends RuntimeCommand {
3
+ static id = 'runtime:status';
4
+ static description = 'Show actual container health and installed version for either Knowz edition.';
5
+ static flags = runtimeIdentityFlags;
6
+ async run() {
7
+ const { flags } = await this.parse(RuntimeStatus);
8
+ return this.runOperation('status', flags);
9
+ }
10
+ }
11
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/runtime/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,cAAc;IACvD,MAAM,CAAU,EAAE,GAAG,gBAAgB,CAAC;IACtC,MAAM,CAAU,WAAW,GAAG,8EAA8E,CAAC;IAC7G,MAAM,CAAU,KAAK,GAAG,oBAAoB,CAAC;IAE7C,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { RuntimeCommand } from '../../lib/runtime-command.js';
2
+ export default class RuntimeUpgrade extends RuntimeCommand {
3
+ static id: string;
4
+ static description: string;
5
+ static flags: {
6
+ version: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
7
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ name: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
9
+ 'config-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ };
11
+ run(): Promise<{
12
+ output: string;
13
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
14
+ name: string;
15
+ edition: "selfhosted" | "portable";
16
+ installedVersion: string;
17
+ runtimeDir: string;
18
+ engine: import("../../lib/container-engine.js").ContainerEngineId;
19
+ } | {
20
+ action: import("../../lib/runtime-operations.js").RuntimeAction;
21
+ name: string;
22
+ error: {
23
+ code: string;
24
+ message: string;
25
+ };
26
+ }>;
27
+ }
28
+ //# sourceMappingURL=upgrade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime/upgrade.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACxD,OAAgB,EAAE,SAAqB;IACvC,OAAgB,WAAW,SAAyF;IACpH,OAAgB,KAAK;;;;;MAAoH;IAEnI,GAAG;;;;;;;;;;;;;;;;CAIV"}
@@ -0,0 +1,12 @@
1
+ import { Flags } from '@oclif/core';
2
+ import { RuntimeCommand, runtimeIdentityFlags } from '../../lib/runtime-command.js';
3
+ export default class RuntimeUpgrade extends RuntimeCommand {
4
+ static id = 'runtime:upgrade';
5
+ static description = 'Upgrade an existing runtime to an explicit compatible version, preserving its data.';
6
+ static flags = { ...runtimeIdentityFlags, version: Flags.string({ description: 'Pinned compatible SemVer', required: true }), };
7
+ async run() {
8
+ const { flags } = await this.parse(RuntimeUpgrade);
9
+ return this.runOperation('upgrade', flags);
10
+ }
11
+ }
12
+ //# sourceMappingURL=upgrade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/commands/runtime/upgrade.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACxD,MAAM,CAAU,EAAE,GAAG,iBAAiB,CAAC;IACvC,MAAM,CAAU,WAAW,GAAG,qFAAqF,CAAC;IACpH,MAAM,CAAU,KAAK,GAAG,EAAE,GAAG,oBAAoB,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,0BAA0B,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC;IAEzI,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC"}
@@ -4,6 +4,7 @@ export default class Setup extends BaseCommand {
4
4
  static description: string;
5
5
  static examples: string[];
6
6
  static flags: {
7
+ edition: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
8
  version: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
9
  'api-port': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
10
  'web-port': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW;IAC5C,OAAgB,EAAE,SAAW;IAC7B,OAAgB,WAAW,SAAmF;IAC9G,OAAgB,QAAQ,WAGtB;IACF,OAAgB,KAAK;;;;;;;;;;;MAAqB;IAEpC,GAAG,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAYxE"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW;IAC5C,OAAgB,EAAE,SAAW;IAC7B,OAAgB,WAAW,SAAmF;IAC9G,OAAgB,QAAQ,WAGtB;IACF,OAAgB,KAAK;;;;;;;;;;;;MAAqB;IAEpC,GAAG,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CAYxE"}
@@ -2,7 +2,7 @@ import { BaseCommand } from '../base-command.js';
2
2
  import { runSetupConsoleCommand, setupConsoleFlags } from '../lib/platform-command-shared.js';
3
3
  export default class Setup extends BaseCommand {
4
4
  static id = 'setup';
5
- static description = 'Open the one-shot loopback setup console for a local portable Knowz platform.';
5
+ static description = 'Open local browser setup for Knowz; public selfhosted is the default edition.';
6
6
  static examples = [
7
7
  '<%= config.bin %> setup',
8
8
  '<%= config.bin %> setup --no-open',
@@ -102,7 +102,7 @@ export default class Transfer extends BaseCommand {
102
102
  // Smoke MED — portability resolves a USER identity: a tenant kz_ key would
103
103
  // 401 despite being "logged in". Reject locally, naming the side.
104
104
  assertPortabilityKeyKind(header.value, profile);
105
- const client = createApiClient({ baseUrl: auth.apiUrl, auth: () => header });
105
+ const client = createApiClient({ baseUrl: auth.apiUrl, dialect: auth.apiDialect, contractVersion: auth.apiContractVersion, auth: () => header });
106
106
  return {
107
107
  client,
108
108
  transferSide: {
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../src/commands/transfer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../src/commands/transfer.ts"],"names":[],"mappings":"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"}
@@ -6,14 +6,6 @@ export declare function resolveAccountIdentity(nameValue: string | undefined, em
6
6
  email: string;
7
7
  ageAttested: true;
8
8
  } | undefined>;
9
- /**
10
- * Log sink for the front door. In `--json` mode (`quiet`) this MUST be an
11
- * explicit no-op — NOT `undefined`, because `runFrontDoor`/`runOnboarding` fall
12
- * back to `console.log` on an undefined sink, which would interleave plain-text
13
- * status lines with the single JSON object oclif prints and corrupt the stdout
14
- * envelope (MED-1). Extracted so the binding decision is unit-testable without a
15
- * real Docker boot.
16
- */
17
9
  export declare function frontDoorLogSink(quiet: boolean, emit: (line: string) => void): (line: string) => void;
18
10
  export declare function selfServeErrorEnvelope(error: SelfServeResolutionError): {
19
11
  error: {
@@ -23,9 +15,9 @@ export declare function selfServeErrorEnvelope(error: SelfServeResolutionError):
23
15
  };
24
16
  /**
25
17
  * `knowz up` — the opinionated one-command front door: pick an AI provider,
26
- * start the portable platform, wait for health, sign a `local` profile in,
27
- * print SuperAdmin creds, and open the dashboard. The orchestration lives in
28
- * `lib/platform-frontdoor.ts` (pure + injectable); this command only parses
18
+ * start the selected edition (public selfhosted by default), wait for health,
19
+ * complete local access, and open the dashboard. `lib/platform-frontdoor.ts`
20
+ * owns injectable orchestration; this command only parses
29
21
  * flags and binds the real side-effect dependencies.
30
22
  */
31
23
  export default class Up extends BaseCommand {
@@ -1 +1 @@
1
- {"version":3,"file":"up.d.ts","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAwD,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAW7G,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,EACxB,MAAM,qCAAqC,CAAC;AAG7C,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EAChD,WAAW,EAAE,OAAO,GAAG,SAAS,EAChC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAChD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,IAAI,CAAA;CAAE,GAAG,SAAS,CAAC,CAuBzE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAErG;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,wBAAwB,GAAG;IACvE,KAAK,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD,CAOA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,WAAW;IACzC,OAAgB,WAAW,SAC2E;IACtG,OAAgB,QAAQ,WAStB;IACF,OAAgB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiCnB;IAEI,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC;cAuJR,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;CAOnF"}
1
+ {"version":3,"file":"up.d.ts","sourceRoot":"","sources":["../../src/commands/up.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAwD,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAW7G,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,EACxB,MAAM,qCAAqC,CAAC;AAG7C,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EAChD,WAAW,EAAE,OAAO,GAAG,SAAS,EAChC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GAChD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,IAAI,CAAA;CAAE,GAAG,SAAS,CAAC,CAuBzE;AAGD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAErG;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,wBAAwB,GAAG;IACvE,KAAK,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD,CAOA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,WAAW;IACzC,OAAgB,WAAW,SAAmG;IAC9H,OAAgB,QAAQ,WAStB;IACF,OAAgB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAiCnB;IAEI,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC;cAmKR,KAAK,CAAC,GAAG,EAAE,KAAK,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,KAAK,CAAC;CAOnF"}