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 +11 -0
- package/dist/commands/init.d.ts +33 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +84 -34
- package/dist/commands/init.js.map +1 -1
- package/dist/utils/config-parser.d.ts +22 -6
- package/dist/utils/config-parser.d.ts.map +1 -1
- package/dist/utils/config-parser.js +37 -165
- package/dist/utils/config-parser.js.map +1 -1
- package/package.json +1 -1
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
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -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
|
-
|
|
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;
|
|
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"}
|
package/dist/commands/init.js
CHANGED
|
@@ -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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
//
|
|
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
|
|
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
|
-
*
|
|
3
|
-
*
|
|
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
|
|
7
|
+
export declare const CONFIG_PARSE_FAILED_PREFIX = "CONFIG_PARSE_FAILED: ";
|
|
6
8
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
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
|
|
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":"
|
|
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
|
-
*
|
|
7
|
-
*
|
|
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
|
-
//
|
|
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
|
-
|
|
41
|
+
parsed = (configModule.default ||
|
|
20
42
|
configModule.config ||
|
|
21
43
|
configModule);
|
|
22
|
-
spinner.stop();
|
|
23
|
-
return parsed;
|
|
24
44
|
}
|
|
25
45
|
catch (importError) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
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
|
-
|
|
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":"AAAA,OAAO,EAAE,
|
|
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