hub-launch 1.11.1 → 1.12.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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.12.0] - 2026-07-13
11
+
12
+ ### Changed
13
+
14
+ - `hula init` now preserves **all** existing config values on re-run, including custom/arbitrary keys and `hulaProject`/`hulaProjectUrl`, emitting any keys not in the documented template under a `// Preserved custom settings` block.
15
+ - `hula init` loads an existing config via native dynamic `import()` only; the lossy regex config parser has been removed. A syntactically broken config now fails fast with guidance to fix the file or run `hula init --force` to regenerate a fresh config (custom edits will be lost). `hula init --force` now correctly skips parsing the existing file.
16
+
17
+ ### Removed
18
+
19
+ - Removed the `overrideStartupScript` prompt from `hula init`. An existing `.hublaunch/hooks/deploymentStartupScript.ts` is never overwritten (created only when missing).
20
+
10
21
  ## [1.11.1] - 2026-07-09
11
22
 
12
23
  ### Added
@@ -1,8 +1,40 @@
1
1
  import type { Command } from 'commander';
2
2
  import type { Config } from '../types/index.js';
3
+ /**
4
+ * Keys whose **actual runtime value** is written by the config template below.
5
+ * A key belongs here if and only if emitting it a second time would duplicate
6
+ * it. Keys the template only ever renders as an illustrative `// comment`
7
+ * (never their real value) are intentionally excluded so a user's real value
8
+ * survives via the `// Preserved custom settings` block:
9
+ * - `commandAliases`, `priorityLevels`, `issueSortOrder` → comment-only → excluded.
10
+ *
11
+ * When adding any future documented field to the template, add its key here in
12
+ * the same change so it is not double-written (once documented, once preserved).
13
+ */
14
+ export declare const TEMPLATE_EMITTED_KEYS: Set<string>;
15
+ /**
16
+ * Build the `// Preserved custom settings` block for any keys present in the
17
+ * final config that the template does not itself emit (arbitrary/custom keys,
18
+ * plus `hulaProject`/`hulaProjectUrl`). Each value is serialized with
19
+ * `JSON.stringify`, which produces valid JS for all JSON-compatible values.
20
+ *
21
+ * Returns an empty string when there are no unknown keys, so no empty block is
22
+ * ever emitted. The returned string, when non-empty, begins with a newline and
23
+ * is intended to be concatenated immediately before the closing `};`.
24
+ *
25
+ * Note: preserved values may contain secrets — only key names are logged, never
26
+ * values.
27
+ */
28
+ export declare function buildPreservedSection(finalConfig: Record<string, any>): string;
3
29
  /**
4
30
  * Init command - Initialize HubLaunch configuration
5
31
  */
6
32
  export declare function initCommand(program: Command, _config: Config): void;
7
- export declare function executeInit(): Promise<void>;
33
+ /**
34
+ * Generate hook templates based on authentication provider
35
+ */
36
+ export declare function generateHookTemplates(projectRoot: string, authProvider: string): Promise<void>;
37
+ export declare function executeInit(options?: {
38
+ force?: boolean;
39
+ }): Promise<void>;
8
40
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAczC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AA2ChD;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAmBnE;AA01BD,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAgrBjD"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAczC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAehD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,aAwBhC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAe9E;AAkCD;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAmBnE;AA0bD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CA+Bf;AAuXD,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0qBhB"}
@@ -9,9 +9,66 @@ import { dirname } from 'path';
9
9
  import { DEFAULT_CONFIG } from '../types/config.schema.js';
10
10
  import { DEFAULT_POLL_INTERVAL_SECONDS } from '../types/common.schema.js';
11
11
  import { checkGhVersion } from '../utils/github-cli.js';
12
- import { parseExistingConfig, mergeConfigs } from '../utils/config-parser.js';
12
+ import { parseExistingConfig, mergeConfigs, CONFIG_PARSE_FAILED_PREFIX, } from '../utils/config-parser.js';
13
13
  import { getCliVersion } from '../utils/version.js';
14
14
  import { RESERVED_ENV_VARS } from '../utils/env-vars.js';
15
+ /**
16
+ * Keys whose **actual runtime value** is written by the config template below.
17
+ * A key belongs here if and only if emitting it a second time would duplicate
18
+ * it. Keys the template only ever renders as an illustrative `// comment`
19
+ * (never their real value) are intentionally excluded so a user's real value
20
+ * survives via the `// Preserved custom settings` block:
21
+ * - `commandAliases`, `priorityLevels`, `issueSortOrder` → comment-only → excluded.
22
+ *
23
+ * When adding any future documented field to the template, add its key here in
24
+ * the same change so it is not double-written (once documented, once preserved).
25
+ */
26
+ export const TEMPLATE_EMITTED_KEYS = new Set([
27
+ 'version',
28
+ 'hulaApiKey',
29
+ 'anthropicApiKey',
30
+ 'daytonaApiKey',
31
+ 'daytonaTier',
32
+ 'containerResources',
33
+ 'updateNotificationUrl',
34
+ 'updateNotificationNameTag',
35
+ 'usageTier',
36
+ 'editorCommand',
37
+ 'planPath',
38
+ 'trackingFile',
39
+ 'createIssuesPreference',
40
+ 'planChoices',
41
+ 'skipUntrackedPrompt',
42
+ 'pollingProvider',
43
+ 'pollIntervalSeconds',
44
+ 'teamMembers',
45
+ 'services',
46
+ 'hooks',
47
+ 'browserHeadless',
48
+ 'worktreeBasePath',
49
+ 'envVars',
50
+ ]);
51
+ /**
52
+ * Build the `// Preserved custom settings` block for any keys present in the
53
+ * final config that the template does not itself emit (arbitrary/custom keys,
54
+ * plus `hulaProject`/`hulaProjectUrl`). Each value is serialized with
55
+ * `JSON.stringify`, which produces valid JS for all JSON-compatible values.
56
+ *
57
+ * Returns an empty string when there are no unknown keys, so no empty block is
58
+ * ever emitted. The returned string, when non-empty, begins with a newline and
59
+ * is intended to be concatenated immediately before the closing `};`.
60
+ *
61
+ * Note: preserved values may contain secrets — only key names are logged, never
62
+ * values.
63
+ */
64
+ export function buildPreservedSection(finalConfig) {
65
+ const unknownKeys = Object.keys(finalConfig).filter((key) => !TEMPLATE_EMITTED_KEYS.has(key) && finalConfig[key] !== undefined);
66
+ if (unknownKeys.length === 0) {
67
+ return '';
68
+ }
69
+ const lines = unknownKeys.map((key) => ` ${key}: ${JSON.stringify(finalConfig[key])},`);
70
+ return `\n\n // Preserved custom settings\n${lines.join('\n')}`;
71
+ }
15
72
  /**
16
73
  * Validate envVars input from the init form. Accepts an empty string (clears the
17
74
  * setting), the literal "all", or a comma-separated list of variable names. Each
@@ -47,9 +104,9 @@ export function initCommand(program, _config) {
47
104
  .command('init')
48
105
  .description('Initialize HubLaunch configuration (interactive)')
49
106
  .option('--force', 'Overwrite existing configuration')
50
- .action(async () => {
107
+ .action(async (options) => {
51
108
  try {
52
- await executeInit();
109
+ await executeInit(options);
53
110
  }
54
111
  catch (error) {
55
112
  // Handle user cancellation gracefully
@@ -492,13 +549,14 @@ Templates are automatically detected and used by HubLaunch when creating issues
492
549
  /**
493
550
  * Generate hook templates based on authentication provider
494
551
  */
495
- async function generateHookTemplates(projectRoot, authProvider, overrideStartupScript) {
552
+ export async function generateHookTemplates(projectRoot, authProvider) {
496
553
  const hooksDir = join(projectRoot, '.hublaunch/hooks');
497
554
  // Create hooks directory
498
555
  await mkdir(hooksDir, { recursive: true });
499
556
  logger.success(`Created directory: .hublaunch/hooks/`);
500
557
  // Generate deploymentStartupScript.ts template based on auth provider
501
- // Only create if auth provider is configured (not "none")
558
+ // Only create if auth provider is configured (not "none"). An existing script
559
+ // is never overwritten — the user may have customized it.
502
560
  if (authProvider !== 'none') {
503
561
  const startupScriptPath = join(hooksDir, 'deploymentStartupScript.ts');
504
562
  if (!existsSync(startupScriptPath)) {
@@ -506,11 +564,6 @@ async function generateHookTemplates(projectRoot, authProvider, overrideStartupS
506
564
  await writeFile(startupScriptPath, template, 'utf-8');
507
565
  logger.success(`Created: .hublaunch/hooks/deploymentStartupScript.ts`);
508
566
  }
509
- else if (overrideStartupScript) {
510
- const template = getDeploymentStartupTemplate(authProvider);
511
- await writeFile(startupScriptPath, template, 'utf-8');
512
- logger.success(`Overridden: .hublaunch/hooks/deploymentStartupScript.ts`);
513
- }
514
567
  else {
515
568
  logger.info('Keeping existing deploymentStartupScript.ts');
516
569
  }
@@ -807,7 +860,7 @@ function displayConfigSummary(config) {
807
860
  }
808
861
  logger.blank();
809
862
  }
810
- export async function executeInit() {
863
+ export async function executeInit(options) {
811
864
  logger.section('Initialize HubLaunch Configuration');
812
865
  // Validate GitHub CLI version
813
866
  logger.info('Checking GitHub CLI version...');
@@ -830,9 +883,24 @@ export async function executeInit() {
830
883
  : existsSync(configPath)
831
884
  ? configPath
832
885
  : null;
833
- if (existingConfigPath) {
886
+ // With --force, skip parsing entirely so a broken existing file does not
887
+ // block regeneration (custom edits are intentionally lost, as documented).
888
+ if (existingConfigPath && !options?.force) {
834
889
  logger.info(`📋 Detected existing config: ${relative(repoRoot, existingConfigPath)}`);
835
- existingConfig = await parseExistingConfig(existingConfigPath);
890
+ try {
891
+ existingConfig = await parseExistingConfig(existingConfigPath);
892
+ }
893
+ catch (error) {
894
+ const message = error instanceof Error ? error.message : String(error);
895
+ if (message.startsWith(CONFIG_PARSE_FAILED_PREFIX)) {
896
+ logger.error(`Existing config at ${relative(repoRoot, existingConfigPath)} could not be parsed (syntax error).`);
897
+ logger.error('Fix the file, or run `hula init --force` to regenerate a fresh config (custom edits will be lost).');
898
+ process.exit(1);
899
+ }
900
+ // Any other error (e.g. the hulaRepository legacy-key guard) is a real
901
+ // configuration problem — surface it as-is.
902
+ throw error;
903
+ }
836
904
  if (existingConfig) {
837
905
  const preservedKeys = [];
838
906
  if (existingConfig.hulaApiKey)
@@ -890,9 +958,7 @@ export async function executeInit() {
890
958
  logger.info('💡 Hint: For enum fields, valid values are shown in parentheses');
891
959
  logger.info('💡 Leave fields unchanged to keep current values, or edit to update');
892
960
  logger.blank();
893
- // Check if override files exist - only ask about overriding if they exist
894
- const startupScriptExists = existsSync(join(repoRoot, '.hublaunch/hooks/deploymentStartupScript.ts'));
895
- // Build form choices dynamically - only include override options for files that exist
961
+ // Build form choices dynamically
896
962
  const formChoices = [
897
963
  {
898
964
  name: 'anthropicApiKey',
@@ -995,18 +1061,6 @@ export async function executeInit() {
995
1061
  validate: validateEnvVarsInput,
996
1062
  },
997
1063
  ];
998
- // Only add override options for files that already exist
999
- if (startupScriptExists) {
1000
- formChoices.push({
1001
- name: 'overrideStartupScript',
1002
- message: 'Override existing deploymentStartupScript.ts? (true|false)',
1003
- initial: 'false',
1004
- validate: (value) => {
1005
- const valid = ['true', 'false', 'yes', 'no'];
1006
- return valid.includes(value.toLowerCase()) || 'Must be true or false';
1007
- },
1008
- });
1009
- }
1010
1064
  // Single Unified Form for ALL fields
1011
1065
  const formData = await form('HubLaunch Configuration', formChoices);
1012
1066
  // Parse form results with fallbacks
@@ -1026,10 +1080,6 @@ export async function executeInit() {
1026
1080
  .map((m) => m.trim())
1027
1081
  .filter((m) => m.length > 0);
1028
1082
  const authProvider = (formData.authProvider || 'none');
1029
- // Override defaults to true for new files (they will be created), false for existing
1030
- const overrideStartupScript = startupScriptExists
1031
- ? ['true', 'yes'].includes((formData.overrideStartupScript || 'false').toLowerCase())
1032
- : true;
1033
1083
  // Parse VS Code auto-approval preference
1034
1084
  const configureVsCodeAutoApproval = ['true', 'yes'].includes((formData.configureVsCodeAutoApproval || 'true').toLowerCase());
1035
1085
  // Parse envVars: can be "all" or comma-separated array
@@ -1219,7 +1269,7 @@ ${hooksConfigSection}
1219
1269
 
1220
1270
  // Worktree base path (used by /hula-fix, /hula-merge, /hula-upload)
1221
1271
  worktreeBasePath: "${(finalConfig.worktreeBasePath || '.hula-worktrees').replace(/\\/g, '\\\\').replace(/"/g, '\\"')}",
1222
- ${envVarsLine}
1272
+ ${envVarsLine}${buildPreservedSection(finalConfig)}
1223
1273
  };
1224
1274
  `;
1225
1275
  // Create directory if it doesn't exist
@@ -1307,7 +1357,7 @@ ${envVarsLine}
1307
1357
  // Always generate hooks directory structure (with README and optionally script)
1308
1358
  logger.blank();
1309
1359
  logger.info('Generating hooks directory structure...');
1310
- await generateHookTemplates(repoRoot, authProvider, overrideStartupScript);
1360
+ await generateHookTemplates(repoRoot, authProvider);
1311
1361
  // Always generate adapters directory structure
1312
1362
  logger.blank();
1313
1363
  logger.info('Generating adapter directory structure...');
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,29 @@
1
1
  /**
2
- * Parse existing config file and extract current values
3
- * Handles both .js and .ts config files
2
+ * Prefix used to mark errors that originate from a failed dynamic `import()` of
3
+ * an existing config file (i.e. a syntactically broken config). Callers can test
4
+ * for this prefix to distinguish a parse failure from any other error and turn it
5
+ * into an actionable, user-facing hard failure.
4
6
  */
5
- export declare function parseExistingConfig(configPath: string): Promise<Partial<Record<string, any>> | null>;
7
+ export declare const CONFIG_PARSE_FAILED_PREFIX = "CONFIG_PARSE_FAILED: ";
6
8
  /**
7
- * Extract config values using regex patterns (fallback method)
8
- * Useful when dynamic import fails due to syntax errors
9
+ * Parse an existing config file by loading it via native dynamic `import()`.
10
+ * Handles both `.js` and `.ts` config files (the latter through the `tsx`
11
+ * loader already registered for the process).
12
+ *
13
+ * Returns the full config object — including any arbitrary/custom keys — so the
14
+ * caller can preserve every value across regeneration. Returns `null` only when
15
+ * the file does not exist.
16
+ *
17
+ * On a syntactically broken config the dynamic import throws; this function
18
+ * re-throws a wrapped error prefixed with {@link CONFIG_PARSE_FAILED_PREFIX} so
19
+ * the caller can hard-fail with guidance instead of silently preserving only a
20
+ * subset of keys. It never falls back to lossy regex extraction.
21
+ *
22
+ * @throws Error prefixed with {@link CONFIG_PARSE_FAILED_PREFIX} when the config
23
+ * cannot be imported, or the `hulaRepository` remediation error when the
24
+ * legacy key is present.
9
25
  */
10
- export declare function extractConfigViaRegex(content: string): Partial<Record<string, any>>;
26
+ export declare function parseExistingConfig(configPath: string): Promise<Partial<Record<string, any>> | null>;
11
27
  /**
12
28
  * Merge existing config values with new config values
13
29
  * Priority: existing > new (preserve user customizations)
@@ -1 +1 @@
1
- {"version":3,"file":"config-parser.d.ts","sourceRoot":"","sources":["../../src/utils/config-parser.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAoD9C;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CA6K9B;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,EAC7C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAkBrB"}
1
+ {"version":3,"file":"config-parser.d.ts","sourceRoot":"","sources":["../../src/utils/config-parser.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAyC9C;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,EAC7C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAkBrB"}
@@ -1,189 +1,61 @@
1
- import { readFile } from 'fs/promises';
2
1
  import { existsSync } from 'fs';
3
2
  import { pathToFileURL } from 'url';
4
3
  import { logger } from './logger.js';
5
4
  /**
6
- * Parse existing config file and extract current values
7
- * Handles both .js and .ts config files
5
+ * Prefix used to mark errors that originate from a failed dynamic `import()` of
6
+ * an existing config file (i.e. a syntactically broken config). Callers can test
7
+ * for this prefix to distinguish a parse failure from any other error and turn it
8
+ * into an actionable, user-facing hard failure.
9
+ */
10
+ export const CONFIG_PARSE_FAILED_PREFIX = 'CONFIG_PARSE_FAILED: ';
11
+ /**
12
+ * Parse an existing config file by loading it via native dynamic `import()`.
13
+ * Handles both `.js` and `.ts` config files (the latter through the `tsx`
14
+ * loader already registered for the process).
15
+ *
16
+ * Returns the full config object — including any arbitrary/custom keys — so the
17
+ * caller can preserve every value across regeneration. Returns `null` only when
18
+ * the file does not exist.
19
+ *
20
+ * On a syntactically broken config the dynamic import throws; this function
21
+ * re-throws a wrapped error prefixed with {@link CONFIG_PARSE_FAILED_PREFIX} so
22
+ * the caller can hard-fail with guidance instead of silently preserving only a
23
+ * subset of keys. It never falls back to lossy regex extraction.
24
+ *
25
+ * @throws Error prefixed with {@link CONFIG_PARSE_FAILED_PREFIX} when the config
26
+ * cannot be imported, or the `hulaRepository` remediation error when the
27
+ * legacy key is present.
8
28
  */
9
29
  export async function parseExistingConfig(configPath) {
10
30
  if (!existsSync(configPath)) {
11
31
  return null;
12
32
  }
13
33
  const spinner = logger.spinner('Parsing existing configuration...');
34
+ let parsed;
14
35
  try {
15
- // Try dynamic import first (best for valid JS/TS files)
36
+ // Load via dynamic import (best for valid JS/TS files). This mirrors the
37
+ // runtime ConfigLoader.load() in src/config/index.ts.
16
38
  const configUrl = pathToFileURL(configPath).href;
17
39
  const moduleUrl = `${configUrl}?parse=${Date.now()}`;
18
40
  const configModule = (await import(moduleUrl));
19
- const parsed = (configModule.default ||
41
+ parsed = (configModule.default ||
20
42
  configModule.config ||
21
43
  configModule);
22
- spinner.stop();
23
- return parsed;
24
44
  }
25
45
  catch (importError) {
26
- // Fallback: Regex extraction for malformed files
27
- spinner.update('Config has errors, using fallback parser...');
28
- logger.debug(`Dynamic import failed: ${importError instanceof Error ? importError.message : String(importError)}`);
29
- try {
30
- const content = await readFile(configPath, 'utf-8');
31
- const result = extractConfigViaRegex(content);
32
- spinner.stop();
33
- logger.warning('⚠️ Config file has syntax errors. Preserved values using regex extraction.');
34
- return result;
35
- }
36
- catch (readError) {
37
- spinner.stop();
38
- logger.error(`Failed to parse existing config: ${readError instanceof Error ? readError.message : String(readError)}`);
39
- logger.warning('Config preservation failed. Proceeding with fresh initialization.');
40
- return null;
41
- }
42
- }
43
- }
44
- /**
45
- * Extract config values using regex patterns (fallback method)
46
- * Useful when dynamic import fails due to syntax errors
47
- */
48
- export function extractConfigViaRegex(content) {
49
- const extracted = {};
50
- // Extract hulaApiKey
51
- const apiKeyMatch = content.match(/hulaApiKey:\s*['"]([^'"]+)['"]/);
52
- if (apiKeyMatch) {
53
- extracted.hulaApiKey = apiKeyMatch[1];
54
- }
55
- // Extract anthropicApiKey
56
- const anthropicKeyMatch = content.match(/anthropicApiKey:\s*['"]([^'"]+)['"]/);
57
- if (anthropicKeyMatch) {
58
- extracted.anthropicApiKey = anthropicKeyMatch[1];
59
- }
60
- // Extract daytonaApiKey
61
- const daytonaKeyMatch = content.match(/daytonaApiKey:\s*['"]([^'"]+)['"]/);
62
- if (daytonaKeyMatch) {
63
- extracted.daytonaApiKey = daytonaKeyMatch[1];
64
- }
65
- // Extract daytonaTier (number)
66
- const daytonaTierMatch = content.match(/daytonaTier:\s*(\d+)/);
67
- if (daytonaTierMatch && daytonaTierMatch[1]) {
68
- extracted.daytonaTier = parseInt(daytonaTierMatch[1], 10);
69
- }
70
- // Extract hulaProjectUrl
71
- const urlMatch = content.match(/hulaProjectUrl:\s*['"]([^'"]+)['"]/);
72
- if (urlMatch) {
73
- extracted.hulaProjectUrl = urlMatch[1];
74
- }
75
- // Detect legacy hulaRepository key and fail fast with remediation
76
- if (/hulaRepository\s*:/.test(content)) {
46
+ spinner.stop();
47
+ const message = importError instanceof Error ? importError.message : String(importError);
48
+ throw new Error(`${CONFIG_PARSE_FAILED_PREFIX}${message}`);
49
+ }
50
+ spinner.stop();
51
+ // Detect legacy hulaRepository key and fail fast with remediation. Runs
52
+ // against the imported object so the guard survives the removal of the regex
53
+ // parser.
54
+ if (parsed && Object.prototype.hasOwnProperty.call(parsed, 'hulaRepository')) {
77
55
  throw new Error('Config key `hulaRepository` is no longer supported. Rename it to ' +
78
56
  '`hulaProject` in .hublaunch/hublaunch.config.js. See CHANGELOG.md.');
79
57
  }
80
- // Extract hulaProject (formerly hulaRepository)
81
- const repoMatch = content.match(/hulaProject:\s*['"]([^'"]+)['"]/);
82
- if (repoMatch) {
83
- extracted.hulaProject = repoMatch[1];
84
- }
85
- // Extract editorCommand
86
- const editorMatch = content.match(/editorCommand:\s*['"]([^'"]+)['"]/);
87
- if (editorMatch) {
88
- extracted.editorCommand = editorMatch[1];
89
- }
90
- // Extract planPath
91
- const planPathMatch = content.match(/planPath:\s*['"]([^'"]+)['"]/);
92
- if (planPathMatch) {
93
- extracted.planPath = planPathMatch[1];
94
- }
95
- // Extract trackingFile
96
- const trackingMatch = content.match(/trackingFile:\s*['"]([^'"]+)['"]/);
97
- if (trackingMatch) {
98
- extracted.trackingFile = trackingMatch[1];
99
- }
100
- // Extract createIssuesPreference
101
- const createIssuesMatch = content.match(/createIssuesPreference:\s*['"]([^'"]+)['"]/);
102
- if (createIssuesMatch) {
103
- extracted.createIssuesPreference = createIssuesMatch[1];
104
- }
105
- // Extract planChoices (number)
106
- const planChoicesMatch = content.match(/planChoices:\s*(\d+)/);
107
- if (planChoicesMatch && planChoicesMatch[1]) {
108
- extracted.planChoices = parseInt(planChoicesMatch[1], 10);
109
- }
110
- // Extract skipUntrackedPrompt (boolean)
111
- const skipMatch = content.match(/skipUntrackedPrompt:\s*(true|false)/);
112
- if (skipMatch) {
113
- extracted.skipUntrackedPrompt = skipMatch[1] === 'true';
114
- }
115
- // Extract teamMembers array
116
- const teamMembersMatch = content.match(/teamMembers:\s*\[([\s\S]*?)\]/);
117
- if (teamMembersMatch) {
118
- try {
119
- const arrayContent = teamMembersMatch[1];
120
- // Extract quoted strings
121
- const members = arrayContent?.match(/['"]([^'"]+)['"]/g);
122
- if (members) {
123
- extracted.teamMembers = members.map((m) => m.slice(1, -1));
124
- }
125
- }
126
- catch {
127
- // Ignore parsing errors
128
- }
129
- }
130
- // Extract services object (simplified)
131
- const servicesMatch = content.match(/services:\s*{([\s\S]*?)},?\s*\n/);
132
- if (servicesMatch) {
133
- const servicesContent = servicesMatch[1];
134
- const services = {};
135
- // Extract authentication provider
136
- const authMatch = servicesContent?.match(/authentication:\s*{\s*provider:\s*['"]([^'"]+)['"]/);
137
- if (authMatch) {
138
- services.authentication = { provider: authMatch[1] };
139
- }
140
- if (Object.keys(services).length > 0) {
141
- extracted.services = services;
142
- }
143
- }
144
- // Extract hooks object
145
- const hooksMatch = content.match(/hooks:\s*{([\s\S]*?)},?\s*\n/);
146
- if (hooksMatch) {
147
- const hooksContent = hooksMatch[1];
148
- const hooks = {};
149
- // Extract deploymentStartup
150
- const deployMatch = hooksContent?.match(/deploymentStartup:\s*['"]([^'"]+)['"]/);
151
- if (deployMatch && deployMatch[1]) {
152
- hooks.deploymentStartup = deployMatch[1];
153
- }
154
- if (Object.keys(hooks).length > 0) {
155
- extracted.hooks = hooks;
156
- }
157
- }
158
- // Extract worktreeBasePath
159
- const worktreeBaseMatch = content.match(/worktreeBasePath:\s*['"]([^'"]+)['"]/);
160
- if (worktreeBaseMatch) {
161
- extracted.worktreeBasePath = worktreeBaseMatch[1];
162
- }
163
- // Extract browserHeadless
164
- const browserMatch = content.match(/browserHeadless:\s*['"]([^'"]+)['"]/);
165
- if (browserMatch) {
166
- extracted.browserHeadless = browserMatch[1];
167
- }
168
- // Extract containerResources object
169
- const containerResourcesMatch = content.match(/containerResources:\s*\{([^}]+)\}/);
170
- if (containerResourcesMatch && containerResourcesMatch[1]) {
171
- const resourcesContent = containerResourcesMatch[1];
172
- const resources = {};
173
- const cpuMatch = resourcesContent.match(/cpu:\s*(\d+)/);
174
- if (cpuMatch && cpuMatch[1])
175
- resources.cpu = parseInt(cpuMatch[1], 10);
176
- const memoryMatch = resourcesContent.match(/memory:\s*(\d+)/);
177
- if (memoryMatch && memoryMatch[1])
178
- resources.memory = parseInt(memoryMatch[1], 10);
179
- const diskMatch = resourcesContent.match(/disk:\s*(\d+)/);
180
- if (diskMatch && diskMatch[1])
181
- resources.disk = parseInt(diskMatch[1], 10);
182
- if (Object.keys(resources).length > 0) {
183
- extracted.containerResources = resources;
184
- }
185
- }
186
- return extracted;
58
+ return parsed;
187
59
  }
188
60
  /**
189
61
  * Merge existing config values with new config values
@@ -1 +1 @@
1
- {"version":3,"file":"config-parser.js","sourceRoot":"","sources":["../../src/utils/config-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-parser.js","sourceRoot":"","sources":["../../src/utils/config-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAAC;AAElE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,UAAkB;IAElB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;IAEpE,IAAI,MAA2B,CAAC;IAChC,IAAI,CAAC;QACH,yEAAyE;QACzE,sDAAsD;QACtD,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;QACjD,MAAM,SAAS,GAAG,GAAG,SAAS,UAAU,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACrD,MAAM,YAAY,GAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAG5C,CAAC;QAEF,MAAM,GAAG,CAAC,YAAY,CAAC,OAAO;YAC5B,YAAY,CAAC,MAAM;YACnB,YAAY,CAAwB,CAAC;IACzC,CAAC;IAAC,OAAO,WAAW,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,OAAO,GACX,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,GAAG,0BAA0B,GAAG,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,IAAI,EAAE,CAAC;IAEf,wEAAwE;IACxE,6EAA6E;IAC7E,UAAU;IACV,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAC7E,MAAM,IAAI,KAAK,CACb,mEAAmE;YACjE,oEAAoE,CACvE,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAC1B,QAA6C,EAC7C,SAA8B;IAE9B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,GAAG,SAAS;QACZ,GAAG,QAAQ;QACX,gCAAgC;QAChC,QAAQ,EAAE;YACR,GAAG,SAAS,CAAC,QAAQ;YACrB,GAAG,QAAQ,CAAC,QAAQ;SACrB;QACD,KAAK,EAAE;YACL,GAAG,SAAS,CAAC,KAAK;YAClB,GAAG,QAAQ,CAAC,KAAK;SAClB;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hub-launch",
3
- "version": "1.11.1",
3
+ "version": "1.12.0",
4
4
  "description": "GitHub Issue and PR automation CLI tool with plugin/hook system for project-specific customizations",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",