@generacy-ai/generacy 0.2.1 → 0.3.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 (64) hide show
  1. package/dist/cli/commands/cluster/compose.d.ts +14 -0
  2. package/dist/cli/commands/cluster/compose.d.ts.map +1 -1
  3. package/dist/cli/commands/cluster/compose.js +58 -0
  4. package/dist/cli/commands/cluster/compose.js.map +1 -1
  5. package/dist/cli/commands/cluster/context.d.ts +8 -0
  6. package/dist/cli/commands/cluster/context.d.ts.map +1 -1
  7. package/dist/cli/commands/cluster/context.js +3 -0
  8. package/dist/cli/commands/cluster/context.js.map +1 -1
  9. package/dist/cli/commands/cluster/default-name.d.ts +9 -0
  10. package/dist/cli/commands/cluster/default-name.d.ts.map +1 -0
  11. package/dist/cli/commands/cluster/default-name.js +16 -0
  12. package/dist/cli/commands/cluster/default-name.js.map +1 -0
  13. package/dist/cli/commands/cluster/name-normalize.d.ts +9 -0
  14. package/dist/cli/commands/cluster/name-normalize.d.ts.map +1 -0
  15. package/dist/cli/commands/cluster/name-normalize.js +29 -0
  16. package/dist/cli/commands/cluster/name-normalize.js.map +1 -0
  17. package/dist/cli/commands/cluster/registry.d.ts +18 -0
  18. package/dist/cli/commands/cluster/registry.d.ts.map +1 -1
  19. package/dist/cli/commands/cluster/registry.js +3 -0
  20. package/dist/cli/commands/cluster/registry.js.map +1 -1
  21. package/dist/cli/commands/cluster/scaffolder.d.ts +3 -0
  22. package/dist/cli/commands/cluster/scaffolder.d.ts.map +1 -1
  23. package/dist/cli/commands/cluster/scaffolder.js +38 -4
  24. package/dist/cli/commands/cluster/scaffolder.js.map +1 -1
  25. package/dist/cli/commands/deploy/activation.d.ts.map +1 -1
  26. package/dist/cli/commands/deploy/activation.js +9 -1
  27. package/dist/cli/commands/deploy/activation.js.map +1 -1
  28. package/dist/cli/commands/deploy/index.d.ts.map +1 -1
  29. package/dist/cli/commands/deploy/index.js +16 -1
  30. package/dist/cli/commands/deploy/index.js.map +1 -1
  31. package/dist/cli/commands/deploy/remote-compose.d.ts.map +1 -1
  32. package/dist/cli/commands/deploy/remote-compose.js +6 -0
  33. package/dist/cli/commands/deploy/remote-compose.js.map +1 -1
  34. package/dist/cli/commands/deploy/scaffolder.d.ts +1 -1
  35. package/dist/cli/commands/deploy/scaffolder.d.ts.map +1 -1
  36. package/dist/cli/commands/deploy/scaffolder.js +4 -1
  37. package/dist/cli/commands/deploy/scaffolder.js.map +1 -1
  38. package/dist/cli/commands/deploy/types.d.ts +1 -0
  39. package/dist/cli/commands/deploy/types.d.ts.map +1 -1
  40. package/dist/cli/commands/deploy/types.js.map +1 -1
  41. package/dist/cli/commands/destroy/index.d.ts.map +1 -1
  42. package/dist/cli/commands/destroy/index.js +5 -1
  43. package/dist/cli/commands/destroy/index.js.map +1 -1
  44. package/dist/cli/commands/down/index.d.ts.map +1 -1
  45. package/dist/cli/commands/down/index.js +4 -1
  46. package/dist/cli/commands/down/index.js.map +1 -1
  47. package/dist/cli/commands/launch/index.d.ts.map +1 -1
  48. package/dist/cli/commands/launch/index.js +23 -1
  49. package/dist/cli/commands/launch/index.js.map +1 -1
  50. package/dist/cli/commands/launch/scaffolder.d.ts +1 -1
  51. package/dist/cli/commands/launch/scaffolder.d.ts.map +1 -1
  52. package/dist/cli/commands/launch/scaffolder.js +4 -1
  53. package/dist/cli/commands/launch/scaffolder.js.map +1 -1
  54. package/dist/cli/commands/launch/types.d.ts +4 -0
  55. package/dist/cli/commands/launch/types.d.ts.map +1 -1
  56. package/dist/cli/commands/launch/types.js +1 -0
  57. package/dist/cli/commands/launch/types.js.map +1 -1
  58. package/dist/cli/commands/launch/worker-count-resolver.d.ts.map +1 -1
  59. package/dist/cli/commands/launch/worker-count-resolver.js +2 -4
  60. package/dist/cli/commands/launch/worker-count-resolver.js.map +1 -1
  61. package/dist/cli/commands/stop/index.d.ts.map +1 -1
  62. package/dist/cli/commands/stop/index.js +4 -1
  63. package/dist/cli/commands/stop/index.js.map +1 -1
  64. package/package.json +5 -5
@@ -12,6 +12,7 @@ import { forwardCredentialsToCluster } from './credential-forward.js';
12
12
  import { RegistryEntrySchema, readRegistry, writeRegistry } from '../cluster/registry.js';
13
13
  import { DeployError } from './types.js';
14
14
  import { resolveApiUrl } from '../../utils/cloud-url.js';
15
+ import { normalizeClusterName } from '../cluster/name-normalize.js';
15
16
  const DEFAULT_TIMEOUT_S = 300;
16
17
  async function handleDeploy(options) {
17
18
  const logger = getLogger();
@@ -41,9 +42,18 @@ async function handleDeploy(options) {
41
42
  }
42
43
  // 6. Resolve remote path
43
44
  const remotePath = target.remotePath ?? `~/generacy-clusters/${activation.projectId}`;
45
+ // 6b. Resolve display name from --name (no default generator for deploy)
46
+ let displayName;
47
+ if (options.name) {
48
+ const normalized = normalizeClusterName(options.name);
49
+ if (!normalized) {
50
+ throw new DeployError(`Invalid --name value: "${options.name}". After normalization the name is empty.`, 'INVALID_TARGET');
51
+ }
52
+ displayName = normalized;
53
+ }
44
54
  // 7. Scaffold bootstrap bundle
45
55
  logger.info('Generating bootstrap bundle...');
46
- const bundleDir = scaffoldBundle(launchConfig, activation, cloudUrl);
56
+ const bundleDir = scaffoldBundle(launchConfig, activation, cloudUrl, displayName);
47
57
  // 8. Transfer and start (with registry credentials if present)
48
58
  const registryCredentials = launchConfig.registryCredentials;
49
59
  try {
@@ -81,6 +91,9 @@ async function handleDeploy(options) {
81
91
  const entry = {
82
92
  clusterId: activation.clusterId,
83
93
  name: launchConfig.projectName,
94
+ displayName,
95
+ projectId: activation.projectId,
96
+ deploymentMode: 'cloud',
84
97
  path: remotePath,
85
98
  composePath: `${remotePath}/docker-compose.yml`,
86
99
  variant: launchConfig.variant,
@@ -109,6 +122,7 @@ export function deployCommand() {
109
122
  .description('Deploy a Generacy cluster to a remote VM via SSH')
110
123
  .argument('<target>', 'SSH target: ssh://[user@]host[:port][/path]')
111
124
  .option('--timeout <seconds>', 'Timeout for cluster registration in seconds', String(DEFAULT_TIMEOUT_S))
125
+ .option('--name <name>', 'Cluster display name (normalized; falls back to cluster id when omitted)')
112
126
  .addOption(new Option('--api-url <url>', 'Cloud API URL (overrides GENERACY_API_URL env var)'))
113
127
  .addOption(new Option('--cloud-url <url>', '[deprecated] Use --api-url instead').hideHelp())
114
128
  .action(async (target, opts) => {
@@ -120,6 +134,7 @@ export function deployCommand() {
120
134
  target,
121
135
  timeout: opts.timeout ? parseInt(opts.timeout, 10) : DEFAULT_TIMEOUT_S,
122
136
  cloudUrl: opts.apiUrl ?? opts.cloudUrl,
137
+ name: opts.name,
123
138
  });
124
139
  console.log(`\nCluster deployed successfully!`);
125
140
  console.log(` Cluster ID: ${result.clusterId}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"remote-compose.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/remote-compose.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAGzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,GACzC,IAAI,CA8CN"}
1
+ {"version":3,"file":"remote-compose.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/remote-compose.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAGzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;GAEG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,GACzC,IAAI,CAwDN"}
@@ -16,6 +16,12 @@ export function deployToRemote(target, bundleDir, remotePath, registryCredential
16
16
  logger.info('Writing registry credentials to remote host...');
17
17
  writeRemoteDockerConfig(target, remotePath, registryCredentials);
18
18
  }
19
+ // Ensure claude.json exists on the VM owned by uid 1000:1000 before compose
20
+ // up. `deploy` always uses claudeConfigMode: 'volume', which binds
21
+ // ./claude.json into the container; if the SCP'd file is owned by the SSH
22
+ // user the orchestrator can't write to it. chown is best-effort — non-root
23
+ // SSH users silently fall through via `|| true`.
24
+ sshExec(target, `test -f "${remotePath}/claude.json" || install -o 1000 -g 1000 -m 0600 /dev/null "${remotePath}/claude.json"; chown 1000:1000 "${remotePath}/claude.json" 2>/dev/null || true`);
19
25
  // Pull images
20
26
  logger.info('Pulling Docker images on remote host...');
21
27
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"remote-compose.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/remote-compose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAkB,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAG7F;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAiB,EACjB,SAAiB,EACjB,UAAkB,EAClB,mBAA0C;IAE1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,iBAAiB;IACjB,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IAClE,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAE5C,2EAA2E;IAC3E,MAAM,cAAc,GAAG,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7E,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC9D,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,cAAc;IACd,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,cAAc;YAChC,CAAC,CAAC,OAAO,UAAU,uBAAuB,UAAU,+BAA+B;YACnF,CAAC,CAAC,OAAO,UAAU,0BAA0B,CAAC;QAChD,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,4BAA4B,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACpG,aAAa,EACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,kEAAkE;QAClE,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,EAAE,OAAO,UAAU,2BAA2B,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,+BAA+B,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACvG,gBAAgB,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"remote-compose.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/remote-compose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAkB,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAG7F;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAiB,EACjB,SAAiB,EACjB,UAAkB,EAClB,mBAA0C;IAE1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,iBAAiB;IACjB,MAAM,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IAClE,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAE5C,2EAA2E;IAC3E,MAAM,cAAc,GAAG,mBAAmB,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7E,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAC9D,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,4EAA4E;IAC5E,mEAAmE;IACnE,0EAA0E;IAC1E,2EAA2E;IAC3E,iDAAiD;IACjD,OAAO,CACL,MAAM,EACN,YAAY,UAAU,+DAA+D,UAAU,mCAAmC,UAAU,mCAAmC,CAChL,CAAC;IAEF,cAAc;IACd,MAAM,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,cAAc;YAChC,CAAC,CAAC,OAAO,UAAU,uBAAuB,UAAU,+BAA+B;YACnF,CAAC,CAAC,OAAO,UAAU,0BAA0B,CAAC;QAChD,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,4BAA4B,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACpG,aAAa,EACb,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,kEAAkE;QAClE,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,EAAE,OAAO,UAAU,2BAA2B,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,+BAA+B,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACvG,gBAAgB,EAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -4,5 +4,5 @@ import type { ActivationResult } from '@generacy-ai/activation-client';
4
4
  * Generate bootstrap bundle files in a temp directory.
5
5
  * Returns the path to the temp directory.
6
6
  */
7
- export declare function scaffoldBundle(config: LaunchConfig, activation: ActivationResult, cloudUrl: string): string;
7
+ export declare function scaffoldBundle(config: LaunchConfig, activation: ActivationResult, cloudUrl: string, displayName?: string): string;
8
8
  //# sourceMappingURL=scaffolder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolder.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/scaffolder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAQvE;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,MAAM,GACf,MAAM,CA8CR"}
1
+ {"version":3,"file":"scaffolder.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/scaffolder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAQvE;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAiDR"}
@@ -11,7 +11,7 @@ import { scaffoldClusterJson, scaffoldClusterYaml, scaffoldDockerCompose, scaffo
11
11
  * Generate bootstrap bundle files in a temp directory.
12
12
  * Returns the path to the temp directory.
13
13
  */
14
- export function scaffoldBundle(config, activation, cloudUrl) {
14
+ export function scaffoldBundle(config, activation, cloudUrl, displayName) {
15
15
  const tmpDir = mkdtempSync(join(tmpdir(), 'generacy-deploy-'));
16
16
  const generacyDir = join(tmpDir, '.generacy');
17
17
  mkdirSync(generacyDir);
@@ -20,6 +20,7 @@ export function scaffoldBundle(config, activation, cloudUrl) {
20
20
  project_id: activation.projectId,
21
21
  org_id: activation.orgId,
22
22
  cloud_url: cloudUrl,
23
+ display_name: displayName,
23
24
  });
24
25
  scaffoldClusterYaml(generacyDir, {
25
26
  channel: 'stable',
@@ -42,6 +43,7 @@ export function scaffoldBundle(config, activation, cloudUrl) {
42
43
  });
43
44
  scaffoldEnvFile(generacyDir, {
44
45
  clusterId: activation.clusterId,
46
+ clusterName: displayName,
45
47
  projectId: activation.projectId,
46
48
  orgId: activation.orgId,
47
49
  cloudUrl,
@@ -50,6 +52,7 @@ export function scaffoldBundle(config, activation, cloudUrl) {
50
52
  repoBranch: config.repos?.primaryBranch,
51
53
  channel: 'stable',
52
54
  workers: 1,
55
+ preApprovedDeviceCode: config.preApprovedDeviceCode,
53
56
  });
54
57
  return tmpDir;
55
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/scaffolder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAoB,EACpB,UAA4B,EAC5B,QAAgB;IAEhB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,SAAS,CAAC,WAAW,CAAC,CAAC;IAEvB,mBAAmB,CAAC,WAAW,EAAE;QAC/B,UAAU,EAAE,UAAU,CAAC,SAAS;QAChC,UAAU,EAAE,UAAU,CAAC,SAAS;QAChC,MAAM,EAAE,UAAU,CAAC,KAAK;QACxB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;IAEH,mBAAmB,CAAC,WAAW,EAAE;QAC/B,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,OAAmD;KACpE,CAAC,CAAC;IAEH,qBAAqB,CAAC,WAAW,EAAE;QACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ;QACR,OAAO,EAAE,MAAM,CAAC,OAAmD;QACnE,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;QAC9B,gBAAgB,EAAE,QAAQ;KAC3B,CAAC,CAAC;IAEH,eAAe,CAAC,WAAW,EAAE;QAC3B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,QAAQ;QACR,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa;QACvC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/scaffolder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAoB,EACpB,UAA4B,EAC5B,QAAgB,EAChB,WAAoB;IAEpB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,SAAS,CAAC,WAAW,CAAC,CAAC;IAEvB,mBAAmB,CAAC,WAAW,EAAE;QAC/B,UAAU,EAAE,UAAU,CAAC,SAAS;QAChC,UAAU,EAAE,UAAU,CAAC,SAAS;QAChC,MAAM,EAAE,UAAU,CAAC,KAAK;QACxB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,WAAW;KAC1B,CAAC,CAAC;IAEH,mBAAmB,CAAC,WAAW,EAAE;QAC/B,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,OAAmD;KACpE,CAAC,CAAC;IAEH,qBAAqB,CAAC,WAAW,EAAE;QACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ;QACR,OAAO,EAAE,MAAM,CAAC,OAAmD;QACnE,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;QAC9B,gBAAgB,EAAE,QAAQ;KAC3B,CAAC,CAAC;IAEH,eAAe,CAAC,WAAW,EAAE;QAC3B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,WAAW;QACxB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,QAAQ;QACR,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO;QAC9B,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa;QACvC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,CAAC;QACV,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;KACpD,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -8,6 +8,7 @@ export interface DeployOptions {
8
8
  target: string;
9
9
  timeout?: number;
10
10
  cloudUrl?: string;
11
+ name?: string;
11
12
  }
12
13
  export interface DeployResult {
13
14
  clusterId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,eAAe,GACvB,gBAAgB,GAChB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,sBAAsB,GACtB,YAAY,GACZ,gBAAgB,GAChB,sBAAsB,GACtB,aAAa,GACb,yBAAyB,CAAC;AAE9B,qBAAa,WAAY,SAAQ,KAAK;aAGlB,IAAI,EAAE,eAAe;aACrB,KAAK,CAAC,EAAE,KAAK;gBAF7B,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,eAAe,EACrB,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,eAAe,GACvB,gBAAgB,GAChB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,sBAAsB,GACtB,YAAY,GACZ,gBAAgB,GAChB,sBAAsB,GACtB,aAAa,GACb,yBAAyB,CAAC;AAE9B,qBAAa,WAAY,SAAQ,KAAK;aAGlB,IAAI,EAAE,eAAe;aACrB,KAAK,CAAC,EAAE,KAAK;gBAF7B,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,eAAe,EACrB,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/types.ts"],"names":[],"mappings":"AAkCA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAGlB;IACA;IAHlB,YACE,OAAe,EACC,IAAqB,EACrB,KAAa;QAE7B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAiB;QACrB,UAAK,GAAL,KAAK,CAAQ;QAG7B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/types.ts"],"names":[],"mappings":"AAmCA,MAAM,OAAO,WAAY,SAAQ,KAAK;IAGlB;IACA;IAHlB,YACE,OAAe,EACC,IAAqB,EACrB,KAAa;QAE7B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAiB;QACrB,UAAK,GAAL,KAAK,CAAQ;QAG7B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;IAC5B,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/destroy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,cAAc,IAAI,OAAO,CA4BxC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/destroy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,cAAc,IAAI,OAAO,CAiCxC"}
@@ -4,7 +4,7 @@ import * as fs from 'node:fs';
4
4
  import { getLogger } from '../../utils/logger.js';
5
5
  import { ensureDocker } from '../cluster/docker.js';
6
6
  import { getClusterContext } from '../cluster/context.js';
7
- import { runCompose } from '../cluster/compose.js';
7
+ import { lifecycleAction, runCompose } from '../cluster/compose.js';
8
8
  import { removeRegistryEntry } from '../cluster/registry.js';
9
9
  export function destroyCommand() {
10
10
  return new Command('destroy')
@@ -23,6 +23,10 @@ export function destroyCommand() {
23
23
  return;
24
24
  }
25
25
  }
26
+ // Best-effort: unregister the VS Code tunnel name with Microsoft's
27
+ // tunnel service so the cluster's tunnel name is fully reclaimable
28
+ // (FR-010). Failures surface via relay event, not as CLI errors.
29
+ lifecycleAction(ctx, 'vscode-tunnel-unregister');
26
30
  const result = runCompose(ctx, ['down', '-v']);
27
31
  if (!result.ok) {
28
32
  throw new Error(`Failed to destroy cluster: ${result.stderr || result.stdout}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/destroy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;SAC1B,WAAW,CAAC,uEAAuE,CAAC;SACpF,MAAM,CAAC,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC;SAClD,MAAM,CAAC,KAAK,EAAE,OAAyB,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;gBAChC,OAAO,EAAE,sBAAsB,GAAG,CAAC,WAAW,uEAAuE;aACtH,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/destroy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;SAC1B,WAAW,CAAC,uEAAuE,CAAC;SACpF,MAAM,CAAC,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC;SAClD,MAAM,CAAC,KAAK,EAAE,OAAyB,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAEhC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;gBAChC,OAAO,EAAE,sBAAsB,GAAG,CAAC,WAAW,uEAAuE;aACtH,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,mEAAmE;QACnE,iEAAiE;QACjE,eAAe,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/down/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,WAAW,IAAI,OAAO,CAkBrC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/down/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,WAAW,IAAI,OAAO,CAuBrC"}
@@ -2,7 +2,7 @@ import { Command } from 'commander';
2
2
  import { getLogger } from '../../utils/logger.js';
3
3
  import { ensureDocker } from '../cluster/docker.js';
4
4
  import { getClusterContext } from '../cluster/context.js';
5
- import { runCompose } from '../cluster/compose.js';
5
+ import { lifecycleAction, runCompose } from '../cluster/compose.js';
6
6
  export function downCommand() {
7
7
  return new Command('down')
8
8
  .description('Remove cluster containers (named volumes preserved unless --volumes)')
@@ -11,6 +11,9 @@ export function downCommand() {
11
11
  const logger = getLogger();
12
12
  ensureDocker();
13
13
  const ctx = getClusterContext();
14
+ // Best-effort: pause the VS Code tunnel before compose down so the
15
+ // tunnel process exits cleanly (FR-009).
16
+ lifecycleAction(ctx, 'vscode-tunnel-stop');
14
17
  const args = ['down'];
15
18
  if (options.volumes) {
16
19
  args.push('--volumes');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/down/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,sEAAsE,CAAC;SACnF,MAAM,CAAC,WAAW,EAAE,2BAA2B,EAAE,KAAK,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAA6B,EAAE,EAAE;QAC9C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/down/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpE,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,sEAAsE,CAAC;SACnF,MAAM,CAAC,WAAW,EAAE,2BAA2B,EAAE,KAAK,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAA6B,EAAE,EAAE;QAC9C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAEhC,mEAAmE;QACnE,yCAAyC;QACzC,eAAe,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QAE3C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AA2BlE;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAmBvC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAC;AA8BlE;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAoBvC"}
@@ -28,6 +28,9 @@ import { sanitizeComposeProjectName } from '../cluster/scaffolder.js';
28
28
  import { clearStaleActivation } from './volume-cleanup.js';
29
29
  import { probeControlPlaneReady, forwardRegistryCredentials, cleanupScopedDockerConfig } from './credential-forward.js';
30
30
  import { resolveWorkerCount } from './worker-count-resolver.js';
31
+ import { normalizeClusterName } from '../cluster/name-normalize.js';
32
+ import { generateDefaultName } from '../cluster/default-name.js';
33
+ import { readRegistry } from '../cluster/registry.js';
31
34
  function parseWorkersFlag(value) {
32
35
  const parsed = Number.parseInt(value, 10);
33
36
  if (!Number.isInteger(parsed) || parsed < 1 || String(parsed) !== value.trim()) {
@@ -44,6 +47,7 @@ export function launchCommand() {
44
47
  .description('Bootstrap a new cluster from a cloud-issued claim code')
45
48
  .option('--claim <code>', 'Claim code from the Generacy cloud dashboard')
46
49
  .option('--dir <path>', 'Project directory (default: ~/Generacy/<projectName>)')
50
+ .option('--name <name>', 'Cluster display name (normalized; defaults to <project>-local-<n>)')
47
51
  .addOption(new Option('--api-url <url>', 'Cloud API URL (overrides GENERACY_API_URL env var)'))
48
52
  .addOption(new Option('--cloud-url <url>', '[deprecated] Use --api-url instead').hideHelp())
49
53
  .option('--workers <N>', 'Number of workers to run on this host', parseWorkersFlag)
@@ -132,9 +136,24 @@ async function launchAction(opts) {
132
136
  p.log.error(msg);
133
137
  process.exit(1);
134
138
  }
139
+ // ── 5c. Resolve display name (user-provided or generated) ───────────
140
+ let displayName;
141
+ if (opts.name) {
142
+ const normalized = normalizeClusterName(opts.name);
143
+ if (!normalized) {
144
+ p.log.error(`Invalid --name value: "${opts.name}". After normalization the name is empty. ` +
145
+ 'Provide a name with at least one ASCII letter or digit.');
146
+ process.exit(1);
147
+ }
148
+ displayName = normalized;
149
+ }
150
+ else {
151
+ displayName = generateDefaultName(config.projectId, config.projectName, readRegistry());
152
+ }
153
+ logger.debug({ displayName }, 'Resolved cluster display name');
135
154
  // ── 6. Scaffold project directory ───────────────────────────────────
136
155
  try {
137
- scaffoldProject(projectDir, config, workerCount);
156
+ scaffoldProject(projectDir, config, workerCount, displayName);
138
157
  p.log.success('Project directory created');
139
158
  }
140
159
  catch (error) {
@@ -223,6 +242,9 @@ async function launchAction(opts) {
223
242
  registerCluster({
224
243
  clusterId: config.clusterId,
225
244
  name: config.projectName,
245
+ displayName,
246
+ projectId: config.projectId,
247
+ deploymentMode: 'local',
226
248
  path: projectDir,
227
249
  composePath,
228
250
  variant: config.variant ?? 'cluster-base',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/index.ts"],"names":[],"mappings":"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"}
@@ -22,5 +22,5 @@ export declare function resolveProjectDir(projectName: string, dirOverride?: str
22
22
  *
23
23
  * @throws If `.generacy/` already exists inside `projectDir`.
24
24
  */
25
- export declare function scaffoldProject(projectDir: string, config: LaunchConfig, workers: number): void;
25
+ export declare function scaffoldProject(projectDir: string, config: LaunchConfig, workers: number, displayName?: string): void;
26
26
  //# sourceMappingURL=scaffolder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolder.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/scaffolder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAQ/C;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAKnF;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAyD/F"}
1
+ {"version":3,"file":"scaffolder.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/scaffolder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAQ/C;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAKnF;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CA4DN"}
@@ -40,7 +40,7 @@ export function resolveProjectDir(projectName, dirOverride) {
40
40
  *
41
41
  * @throws If `.generacy/` already exists inside `projectDir`.
42
42
  */
43
- export function scaffoldProject(projectDir, config, workers) {
43
+ export function scaffoldProject(projectDir, config, workers, displayName) {
44
44
  mkdirSync(projectDir, { recursive: true });
45
45
  const generacyDir = join(projectDir, '.generacy');
46
46
  if (existsSync(generacyDir)) {
@@ -53,6 +53,7 @@ export function scaffoldProject(projectDir, config, workers) {
53
53
  project_id: config.projectId,
54
54
  org_id: config.orgId,
55
55
  cloud_url: config.cloudUrl,
56
+ display_name: displayName,
56
57
  });
57
58
  scaffoldClusterYaml(generacyDir, {
58
59
  channel: config.channel ?? 'preview',
@@ -74,6 +75,7 @@ export function scaffoldProject(projectDir, config, workers) {
74
75
  });
75
76
  scaffoldEnvFile(generacyDir, {
76
77
  clusterId: config.clusterId,
78
+ clusterName: displayName,
77
79
  projectId: config.projectId,
78
80
  orgId: config.orgId,
79
81
  cloudUrl: config.cloudUrl,
@@ -85,6 +87,7 @@ export function scaffoldProject(projectDir, config, workers) {
85
87
  cloud: config.cloud
86
88
  ? { apiUrl: config.cloud.apiUrl, relayUrl: config.cloud.relayUrl }
87
89
  : undefined,
90
+ preApprovedDeviceCode: config.preApprovedDeviceCode,
88
91
  });
89
92
  preCreateClaudeJson();
90
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/scaffolder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffolder.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/scaffolder.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface LaunchOptions {
12
12
  cloudUrl?: string;
13
13
  logLevel?: string;
14
14
  workers?: number;
15
+ name?: string;
15
16
  }
16
17
  /**
17
18
  * Structured cloud URL triplet sent by the cloud in LaunchConfig.
@@ -107,6 +108,7 @@ export declare const LaunchConfigSchema: z.ZodObject<{
107
108
  password: string;
108
109
  }>, "many">>;
109
110
  tierCap: z.ZodOptional<z.ZodNumber>;
111
+ preApprovedDeviceCode: z.ZodOptional<z.ZodString>;
110
112
  }, "strip", z.ZodTypeAny, {
111
113
  repos: {
112
114
  primary: string;
@@ -133,6 +135,7 @@ export declare const LaunchConfigSchema: z.ZodObject<{
133
135
  password: string;
134
136
  }[] | undefined;
135
137
  tierCap?: number | undefined;
138
+ preApprovedDeviceCode?: string | undefined;
136
139
  }, {
137
140
  repos: {
138
141
  primary: string;
@@ -159,6 +162,7 @@ export declare const LaunchConfigSchema: z.ZodObject<{
159
162
  password: string;
160
163
  }[] | undefined;
161
164
  tierCap?: number | undefined;
165
+ preApprovedDeviceCode?: string | undefined;
162
166
  }>;
163
167
  /**
164
168
  * Response from GET /api/clusters/launch-config?claim=<code>.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAInC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkB7B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;EAInC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB7B,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -44,5 +44,6 @@ export const LaunchConfigSchema = z.object({
44
44
  cloud: CloudUrlsSchema.optional(),
45
45
  registryCredentials: z.array(RegistryCredentialSchema).optional(),
46
46
  tierCap: z.number().int().min(1).optional(),
47
+ preApprovedDeviceCode: z.string().min(1).optional(),
47
48
  });
48
49
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC3B,CAAC,CAAC;AAIH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC5B,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC3C,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACnC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KACtC,CAAC;IACF,KAAK,EAAE,eAAe,CAAC,QAAQ,EAAE;IACjC,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;IACjE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC3B,CAAC,CAAC;AAIH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC5B,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;QAC3C,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;QACnC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KACtC,CAAC;IACF,KAAK,EAAE,eAAe,CAAC,QAAQ,EAAE;IACjC,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,QAAQ,EAAE;IACjE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3C,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker-count-resolver.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/worker-count-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG9D,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IACtC,aAAa,EAAE,eAAe,GAAG,UAAU,CAAC;IAC5C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAaD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,aAAa,EACnB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,qBAAqB,CAAC,CA8ChC"}
1
+ {"version":3,"file":"worker-count-resolver.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/launch/worker-count-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI9D,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IACtC,aAAa,EAAE,eAAe,GAAG,UAAU,CAAC;IAC5C,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAaD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,aAAa,EACnB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,qBAAqB,CAAC,CA4ChC"}
@@ -1,4 +1,5 @@
1
1
  import { promptWorkerCount } from './prompts.js';
2
+ import { formatTierLimitError } from '@generacy-ai/activation-client';
2
3
  export const CLI_FALLBACK_TIER_CAP = 8;
3
4
  export const SUGGESTED_FROM_HOST = 2;
4
5
  const FALLBACK_WARNING = `tierCap fallback (${CLI_FALLBACK_TIER_CAP}) in use because launch-config did not include tierCap. ` +
@@ -17,10 +18,7 @@ export async function resolveWorkerCount(opts, launchConfig, isTTY) {
17
18
  throw new Error(`--workers must be a positive integer; got: ${opts.workers}`);
18
19
  }
19
20
  if (opts.workers > tierCap) {
20
- const suffix = tierCapSource === 'fallback'
21
- ? ' (CLI fallback cap; real cap will be available after the cloud companion ships).'
22
- : '. Upgrade your tier or reduce --workers.';
23
- throw new Error(`--workers=${opts.workers} exceeds tier cap of ${tierCap}${suffix}`);
21
+ throw new Error(formatTierLimitError({ requested: opts.workers, cap: tierCap, tier: '' }));
24
22
  }
25
23
  return {
26
24
  workerCount: opts.workers,
@@ -1 +1 @@
1
- {"version":3,"file":"worker-count-resolver.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/worker-count-resolver.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AASrC,MAAM,gBAAgB,GACpB,qBAAqB,qBAAqB,0DAA0D;IACpG,oCAAoC,CAAC;AAEvC,SAAS,YAAY,CAAC,cAAsB;IAC1C,OAAO,CACL,6DAA6D,cAAc,YAAY;QACvF,sDAAsD,cAAc,cAAc,CACnF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAmB,EACnB,YAA0B,EAC1B,KAAc;IAEd,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,qBAAqB,CAAC;IAC9D,MAAM,aAAa,GACjB,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9D,MAAM,YAAY,GAAa,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtF,kCAAkC;IAClC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GACV,aAAa,KAAK,UAAU;gBAC1B,CAAC,CAAC,kFAAkF;gBACpF,CAAC,CAAC,0CAA0C,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,OAAO,wBAAwB,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,MAAM,EAAE,MAAM;YACd,aAAa;YACb,QAAQ,EAAE,YAAY;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAE9D,iCAAiC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAChE,OAAO;YACL,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,QAAQ;YAChB,aAAa;YACb,QAAQ,EAAE,YAAY;SACvB,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,OAAO;QACL,WAAW,EAAE,cAAc;QAC3B,MAAM,EAAE,SAAS;QACjB,aAAa;QACb,QAAQ,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,GAAG,YAAY,CAAC;KAC1D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"worker-count-resolver.js","sourceRoot":"","sources":["../../../../src/cli/commands/launch/worker-count-resolver.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AASrC,MAAM,gBAAgB,GACpB,qBAAqB,qBAAqB,0DAA0D;IACpG,oCAAoC,CAAC;AAEvC,SAAS,YAAY,CAAC,cAAsB;IAC1C,OAAO,CACL,6DAA6D,cAAc,YAAY;QACvF,sDAAsD,cAAc,cAAc,CACnF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAmB,EACnB,YAA0B,EAC1B,KAAc;IAEd,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,qBAAqB,CAAC;IAC9D,MAAM,aAAa,GACjB,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9D,MAAM,YAAY,GAAa,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtF,kCAAkC;IAClC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,GAAG,OAAO,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,oBAAoB,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,OAAO;YACzB,MAAM,EAAE,MAAM;YACd,aAAa;YACb,QAAQ,EAAE,YAAY;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAE9D,iCAAiC;IACjC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAChE,OAAO;YACL,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,QAAQ;YAChB,aAAa;YACb,QAAQ,EAAE,YAAY;SACvB,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,OAAO;QACL,WAAW,EAAE,cAAc;QAC3B,MAAM,EAAE,SAAS;QACjB,aAAa;QACb,QAAQ,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,GAAG,YAAY,CAAC;KAC1D,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/stop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,WAAW,IAAI,OAAO,CAarC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/stop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,wBAAgB,WAAW,IAAI,OAAO,CAkBrC"}
@@ -2,7 +2,7 @@ import { Command } from 'commander';
2
2
  import { getLogger } from '../../utils/logger.js';
3
3
  import { ensureDocker } from '../cluster/docker.js';
4
4
  import { getClusterContext } from '../cluster/context.js';
5
- import { runCompose } from '../cluster/compose.js';
5
+ import { lifecycleAction, runCompose } from '../cluster/compose.js';
6
6
  export function stopCommand() {
7
7
  return new Command('stop')
8
8
  .description('Stop the cluster (containers preserved)')
@@ -10,6 +10,9 @@ export function stopCommand() {
10
10
  const logger = getLogger();
11
11
  ensureDocker();
12
12
  const ctx = getClusterContext();
13
+ // Best-effort: pause the VS Code tunnel before compose stop so the
14
+ // tunnel process exits cleanly (FR-009).
15
+ lifecycleAction(ctx, 'vscode-tunnel-stop');
13
16
  const result = runCompose(ctx, ['stop']);
14
17
  if (!result.ok) {
15
18
  throw new Error(`Failed to stop cluster: ${result.stderr || result.stdout}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/stop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/stop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEpE,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,YAAY,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAEhC,mEAAmE;QACnE,yCAAyC;QACzC,eAAe,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QAE3C,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACP,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@generacy-ai/generacy",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Headless workflow execution CLI for Generacy - run workflows in containers without VS Code",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -36,10 +36,10 @@
36
36
  "pino-pretty": "^11.0.0",
37
37
  "yaml": "^2.4.0",
38
38
  "zod": "^3.23.0",
39
- "@generacy-ai/activation-client": "0.2.0",
39
+ "@generacy-ai/activation-client": "0.3.0",
40
40
  "@generacy-ai/config": "0.2.0",
41
- "@generacy-ai/workflow-engine": "0.1.2",
42
- "@generacy-ai/orchestrator-types": "0.1.0"
41
+ "@generacy-ai/orchestrator-types": "0.1.0",
42
+ "@generacy-ai/workflow-engine": "0.1.2"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@types/diff": "^7",
@@ -50,7 +50,7 @@
50
50
  "eslint": "^8.57.0",
51
51
  "typescript": "^5.4.5",
52
52
  "vitest": "^4.0.18",
53
- "@generacy-ai/orchestrator": "0.2.0"
53
+ "@generacy-ai/orchestrator": "0.3.0"
54
54
  },
55
55
  "engines": {
56
56
  "node": ">=22"