@generacy-ai/orchestrator 0.7.0 → 0.8.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/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +32 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts +429 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/launcher/agent-launcher.d.ts +15 -16
- package/dist/launcher/agent-launcher.d.ts.map +1 -1
- package/dist/launcher/agent-launcher.js +54 -23
- package/dist/launcher/agent-launcher.js.map +1 -1
- package/dist/launcher/constants.d.ts +5 -0
- package/dist/launcher/constants.d.ts.map +1 -0
- package/dist/launcher/constants.js +5 -0
- package/dist/launcher/constants.js.map +1 -0
- package/dist/launcher/errors.d.ts +15 -0
- package/dist/launcher/errors.d.ts.map +1 -0
- package/dist/launcher/errors.js +25 -0
- package/dist/launcher/errors.js.map +1 -0
- package/dist/launcher/generic-subprocess-plugin.d.ts +1 -0
- package/dist/launcher/generic-subprocess-plugin.d.ts.map +1 -1
- package/dist/launcher/generic-subprocess-plugin.js +2 -0
- package/dist/launcher/generic-subprocess-plugin.js.map +1 -1
- package/dist/launcher/index.d.ts +2 -1
- package/dist/launcher/index.d.ts.map +1 -1
- package/dist/launcher/index.js +1 -0
- package/dist/launcher/index.js.map +1 -1
- package/dist/launcher/types.d.ts +81 -4
- package/dist/launcher/types.d.ts.map +1 -1
- package/dist/services/post-activation-retry.d.ts +3 -0
- package/dist/services/post-activation-retry.d.ts.map +1 -1
- package/dist/services/post-activation-retry.js +34 -2
- package/dist/services/post-activation-retry.js.map +1 -1
- package/dist/worker/claude-cli-worker.d.ts.map +1 -1
- package/dist/worker/claude-cli-worker.js +4 -3
- package/dist/worker/claude-cli-worker.js.map +1 -1
- package/dist/worker/cli-spawner.d.ts.map +1 -1
- package/dist/worker/cli-spawner.js +2 -0
- package/dist/worker/cli-spawner.js.map +1 -1
- package/dist/worker/config.d.ts +396 -0
- package/dist/worker/config.d.ts.map +1 -1
- package/dist/worker/config.js +142 -0
- package/dist/worker/config.js.map +1 -1
- package/dist/worker/phase-loop.d.ts.map +1 -1
- package/dist/worker/phase-loop.js +34 -1
- package/dist/worker/phase-loop.js.map +1 -1
- package/dist/worker/pr-feedback-handler.d.ts.map +1 -1
- package/dist/worker/pr-feedback-handler.js +10 -3
- package/dist/worker/pr-feedback-handler.js.map +1 -1
- package/dist/worker/types.d.ts +20 -0
- package/dist/worker/types.d.ts.map +1 -1
- package/package.json +11 -7
|
@@ -2,33 +2,32 @@ import type { ProcessFactory } from '../worker/types.js';
|
|
|
2
2
|
import type { AgentLaunchPlugin, LaunchHandle, LaunchRequest } from './types.js';
|
|
3
3
|
import type { CredhelperClient } from './credhelper-client.js';
|
|
4
4
|
/**
|
|
5
|
-
* Plugin-based process launcher with registry dispatch.
|
|
5
|
+
* Plugin-based process launcher with tuple-keyed registry dispatch.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* Registry keys are composed as `${provider}:${kind}`. Callers may pass
|
|
8
|
+
* `LaunchRequest.provider` to select a plugin; if omitted, resolves to
|
|
9
|
+
* `DEFAULT_PROVIDER`. For kinds only the internal `SYSTEM_PROVIDER` claims,
|
|
10
|
+
* a default-provider request falls back to the system plugin (call-site parity).
|
|
11
11
|
*/
|
|
12
12
|
export declare class AgentLauncher {
|
|
13
13
|
private readonly factories;
|
|
14
|
-
private readonly
|
|
14
|
+
private readonly registry;
|
|
15
15
|
private readonly credhelperClient?;
|
|
16
16
|
constructor(factories: Map<string, ProcessFactory>, credhelperClient?: CredhelperClient);
|
|
17
17
|
/**
|
|
18
|
-
* Register a plugin for
|
|
19
|
-
* Throws on duplicate
|
|
18
|
+
* Register a plugin for each of its supported kinds under (provider, kind).
|
|
19
|
+
* Throws DuplicatePluginRegistrationError on duplicate key.
|
|
20
20
|
*/
|
|
21
21
|
registerPlugin(plugin: AgentLaunchPlugin): void;
|
|
22
22
|
/**
|
|
23
|
-
* Launch a process based on the request's intent.
|
|
23
|
+
* Launch a process based on the request's intent + provider.
|
|
24
24
|
*
|
|
25
|
-
* 1. Resolve
|
|
26
|
-
* 2.
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
* 7. If credentials: register exit cleanup (end session)
|
|
25
|
+
* 1. Resolve provider (request.provider ?? DEFAULT_PROVIDER)
|
|
26
|
+
* 2. Look up plugin by `${provider}:${kind}`; else fall back to
|
|
27
|
+
* `${SYSTEM_PROVIDER}:${kind}` when provider was defaulted
|
|
28
|
+
* 3. Otherwise classify miss: known-provider-unknown-kind (Error)
|
|
29
|
+
* vs. unknown-provider (UnknownProviderError)
|
|
30
|
+
* 4. Merge env, apply credentials, select factory, spawn.
|
|
32
31
|
*/
|
|
33
32
|
launch(request: LaunchRequest): Promise<LaunchHandle>;
|
|
34
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-launcher.d.ts","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACd,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-launcher.d.ts","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACd,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAS/D;;;;;;;GAOG;AACH,qBAAa,aAAa;IAKtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;IACjE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAmB;gBAGlC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EACvD,gBAAgB,CAAC,EAAE,gBAAgB;IAKrC;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAoB/C;;;;;;;;;OASG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CA0H5D"}
|
|
@@ -1,52 +1,78 @@
|
|
|
1
1
|
import { applyCredentials } from './credentials-interceptor.js';
|
|
2
2
|
import { CredhelperUnavailableError } from './credhelper-errors.js';
|
|
3
|
+
import { DEFAULT_PROVIDER, SYSTEM_PROVIDER } from './constants.js';
|
|
4
|
+
import { DuplicatePluginRegistrationError, UnknownProviderError, } from './errors.js';
|
|
3
5
|
/**
|
|
4
|
-
* Plugin-based process launcher with registry dispatch.
|
|
6
|
+
* Plugin-based process launcher with tuple-keyed registry dispatch.
|
|
5
7
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Registry keys are composed as `${provider}:${kind}`. Callers may pass
|
|
9
|
+
* `LaunchRequest.provider` to select a plugin; if omitted, resolves to
|
|
10
|
+
* `DEFAULT_PROVIDER`. For kinds only the internal `SYSTEM_PROVIDER` claims,
|
|
11
|
+
* a default-provider request falls back to the system plugin (call-site parity).
|
|
10
12
|
*/
|
|
11
13
|
export class AgentLauncher {
|
|
12
14
|
factories;
|
|
13
|
-
|
|
15
|
+
registry = new Map();
|
|
14
16
|
credhelperClient;
|
|
15
17
|
constructor(factories, credhelperClient) {
|
|
16
18
|
this.factories = factories;
|
|
17
19
|
this.credhelperClient = credhelperClient;
|
|
18
20
|
}
|
|
19
21
|
/**
|
|
20
|
-
* Register a plugin for
|
|
21
|
-
* Throws on duplicate
|
|
22
|
+
* Register a plugin for each of its supported kinds under (provider, kind).
|
|
23
|
+
* Throws DuplicatePluginRegistrationError on duplicate key.
|
|
22
24
|
*/
|
|
23
25
|
registerPlugin(plugin) {
|
|
26
|
+
if (typeof plugin.provider !== 'string' || plugin.provider.length === 0) {
|
|
27
|
+
throw new Error(`Plugin "${plugin.pluginId}" must declare a non-empty provider string`);
|
|
28
|
+
}
|
|
24
29
|
for (const kind of plugin.supportedKinds) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
30
|
+
const key = `${plugin.provider}:${kind}`;
|
|
31
|
+
const existing = this.registry.get(key);
|
|
32
|
+
if (existing) {
|
|
33
|
+
throw new DuplicatePluginRegistrationError(plugin.provider, kind, existing.pluginId);
|
|
28
34
|
}
|
|
29
|
-
this.
|
|
35
|
+
this.registry.set(key, plugin);
|
|
30
36
|
}
|
|
31
37
|
}
|
|
32
38
|
/**
|
|
33
|
-
* Launch a process based on the request's intent.
|
|
39
|
+
* Launch a process based on the request's intent + provider.
|
|
34
40
|
*
|
|
35
|
-
* 1. Resolve
|
|
36
|
-
* 2.
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* 7. If credentials: register exit cleanup (end session)
|
|
41
|
+
* 1. Resolve provider (request.provider ?? DEFAULT_PROVIDER)
|
|
42
|
+
* 2. Look up plugin by `${provider}:${kind}`; else fall back to
|
|
43
|
+
* `${SYSTEM_PROVIDER}:${kind}` when provider was defaulted
|
|
44
|
+
* 3. Otherwise classify miss: known-provider-unknown-kind (Error)
|
|
45
|
+
* vs. unknown-provider (UnknownProviderError)
|
|
46
|
+
* 4. Merge env, apply credentials, select factory, spawn.
|
|
42
47
|
*/
|
|
43
48
|
async launch(request) {
|
|
44
49
|
const { intent } = request;
|
|
50
|
+
const provider = request.provider ?? DEFAULT_PROVIDER;
|
|
51
|
+
const kind = intent.kind;
|
|
52
|
+
const key = `${provider}:${kind}`;
|
|
45
53
|
// 1. Resolve plugin
|
|
46
|
-
|
|
54
|
+
let plugin = this.registry.get(key);
|
|
55
|
+
if (!plugin && request.provider === undefined) {
|
|
56
|
+
// Default-provider fallback: system-owned kinds (generic-subprocess, shell)
|
|
57
|
+
// resolve without callers needing to spell 'system'.
|
|
58
|
+
plugin = this.registry.get(`${SYSTEM_PROVIDER}:${kind}`);
|
|
59
|
+
}
|
|
47
60
|
if (!plugin) {
|
|
48
|
-
const
|
|
49
|
-
|
|
61
|
+
const registryKeys = [...this.registry.keys()];
|
|
62
|
+
const kindsForProvider = [];
|
|
63
|
+
const providers = new Set();
|
|
64
|
+
for (const registryKey of registryKeys) {
|
|
65
|
+
const [keyProvider, keyKind] = splitKey(registryKey);
|
|
66
|
+
providers.add(keyProvider);
|
|
67
|
+
if (keyProvider === provider) {
|
|
68
|
+
kindsForProvider.push(keyKind);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
if (kindsForProvider.length > 0) {
|
|
72
|
+
throw new Error(`Unknown intent kind "${kind}" for provider "${provider}". Known kinds for this provider: ${kindsForProvider.join(', ')}`);
|
|
73
|
+
}
|
|
74
|
+
const availableProviders = [...providers].sort();
|
|
75
|
+
throw new UnknownProviderError(provider, kind, availableProviders);
|
|
50
76
|
}
|
|
51
77
|
// 2. Build launch spec
|
|
52
78
|
const launchSpec = plugin.buildLaunch(intent);
|
|
@@ -113,4 +139,9 @@ export class AgentLauncher {
|
|
|
113
139
|
};
|
|
114
140
|
}
|
|
115
141
|
}
|
|
142
|
+
/** Split a `${provider}:${kind}` registry key. Provider is everything before the first colon. */
|
|
143
|
+
function splitKey(key) {
|
|
144
|
+
const colonIndex = key.indexOf(':');
|
|
145
|
+
return [key.slice(0, colonIndex), key.slice(colonIndex + 1)];
|
|
146
|
+
}
|
|
116
147
|
//# sourceMappingURL=agent-launcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-launcher.js","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-launcher.js","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Reserved provider for non-agent plugins (subprocess, shell). Internal — never exported from `index.ts`, never valid in workflow config. */
|
|
2
|
+
export declare const SYSTEM_PROVIDER: "system";
|
|
3
|
+
/** Default provider when `LaunchRequest.provider` is omitted. Internal — call sites must not depend on it. */
|
|
4
|
+
export declare const DEFAULT_PROVIDER: "claude-code";
|
|
5
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/launcher/constants.ts"],"names":[],"mappings":"AAAA,8IAA8I;AAC9I,eAAO,MAAM,eAAe,EAAG,QAAiB,CAAC;AAEjD,8GAA8G;AAC9G,eAAO,MAAM,gBAAgB,EAAG,aAAsB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Reserved provider for non-agent plugins (subprocess, shell). Internal — never exported from `index.ts`, never valid in workflow config. */
|
|
2
|
+
export const SYSTEM_PROVIDER = 'system';
|
|
3
|
+
/** Default provider when `LaunchRequest.provider` is omitted. Internal — call sites must not depend on it. */
|
|
4
|
+
export const DEFAULT_PROVIDER = 'claude-code';
|
|
5
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/launcher/constants.ts"],"names":[],"mappings":"AAAA,8IAA8I;AAC9I,MAAM,CAAC,MAAM,eAAe,GAAG,QAAiB,CAAC;AAEjD,8GAA8G;AAC9G,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAsB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare class UnknownProviderError extends Error {
|
|
2
|
+
readonly name = "UnknownProviderError";
|
|
3
|
+
readonly provider: string;
|
|
4
|
+
readonly kind: string;
|
|
5
|
+
readonly availableProviders: readonly string[];
|
|
6
|
+
constructor(provider: string, kind: string, availableProviders: readonly string[]);
|
|
7
|
+
}
|
|
8
|
+
export declare class DuplicatePluginRegistrationError extends Error {
|
|
9
|
+
readonly name = "DuplicatePluginRegistrationError";
|
|
10
|
+
readonly provider: string;
|
|
11
|
+
readonly kind: string;
|
|
12
|
+
readonly existingPluginId: string;
|
|
13
|
+
constructor(provider: string, kind: string, existingPluginId: string);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/launcher/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;gBACnC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,MAAM,EAAE;CAQlF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,QAAQ,CAAC,IAAI,sCAAsC;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBACtB,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;CAQrE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class UnknownProviderError extends Error {
|
|
2
|
+
name = 'UnknownProviderError';
|
|
3
|
+
provider;
|
|
4
|
+
kind;
|
|
5
|
+
availableProviders;
|
|
6
|
+
constructor(provider, kind, availableProviders) {
|
|
7
|
+
super(`Unknown provider "${provider}" for intent kind "${kind}". Available providers: ${availableProviders.join(', ') || '(none)'}`);
|
|
8
|
+
this.provider = provider;
|
|
9
|
+
this.kind = kind;
|
|
10
|
+
this.availableProviders = availableProviders;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class DuplicatePluginRegistrationError extends Error {
|
|
14
|
+
name = 'DuplicatePluginRegistrationError';
|
|
15
|
+
provider;
|
|
16
|
+
kind;
|
|
17
|
+
existingPluginId;
|
|
18
|
+
constructor(provider, kind, existingPluginId) {
|
|
19
|
+
super(`Intent (provider: "${provider}", kind: "${kind}") already registered by plugin "${existingPluginId}"`);
|
|
20
|
+
this.provider = provider;
|
|
21
|
+
this.kind = kind;
|
|
22
|
+
this.existingPluginId = existingPluginId;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/launcher/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,IAAI,GAAG,sBAAsB,CAAC;IAC9B,QAAQ,CAAS;IACjB,IAAI,CAAS;IACb,kBAAkB,CAAoB;IAC/C,YAAY,QAAgB,EAAE,IAAY,EAAE,kBAAqC;QAC/E,KAAK,CACH,qBAAqB,QAAQ,sBAAsB,IAAI,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAC9H,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IAChD,IAAI,GAAG,kCAAkC,CAAC;IAC1C,QAAQ,CAAS;IACjB,IAAI,CAAS;IACb,gBAAgB,CAAS;IAClC,YAAY,QAAgB,EAAE,IAAY,EAAE,gBAAwB;QAClE,KAAK,CACH,sBAAsB,QAAQ,aAAa,IAAI,oCAAoC,gBAAgB,GAAG,CACvG,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF"}
|
|
@@ -7,6 +7,7 @@ import type { AgentLaunchPlugin, LaunchIntent, LaunchSpec, OutputParser } from '
|
|
|
7
7
|
*/
|
|
8
8
|
export declare class GenericSubprocessPlugin implements AgentLaunchPlugin {
|
|
9
9
|
readonly pluginId = "generic-subprocess";
|
|
10
|
+
readonly provider: "system";
|
|
10
11
|
readonly supportedKinds: readonly ["generic-subprocess", "shell"];
|
|
11
12
|
buildLaunch(intent: LaunchIntent): LaunchSpec;
|
|
12
13
|
createOutputParser(_intent: LaunchIntent): OutputParser;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-subprocess-plugin.d.ts","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,YAAY,EACb,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"generic-subprocess-plugin.d.ts","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,YAAY,EACb,MAAM,YAAY,CAAC;AAGpB;;;;;GAKG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,QAAQ,WAAmB;IACpC,QAAQ,CAAC,cAAc,2CAA4C;IAEnE,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU;IAuB7C,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY;CAUxD"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { SYSTEM_PROVIDER } from './constants.js';
|
|
1
2
|
/**
|
|
2
3
|
* Pass-through plugin for generic-subprocess and shell intents.
|
|
3
4
|
*
|
|
@@ -6,6 +7,7 @@
|
|
|
6
7
|
*/
|
|
7
8
|
export class GenericSubprocessPlugin {
|
|
8
9
|
pluginId = 'generic-subprocess';
|
|
10
|
+
provider = SYSTEM_PROVIDER;
|
|
9
11
|
supportedKinds = ['generic-subprocess', 'shell'];
|
|
10
12
|
buildLaunch(intent) {
|
|
11
13
|
switch (intent.kind) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-subprocess-plugin.js","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generic-subprocess-plugin.js","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,OAAO,uBAAuB;IACzB,QAAQ,GAAG,oBAAoB,CAAC;IAChC,QAAQ,GAAG,eAAe,CAAC;IAC3B,cAAc,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAU,CAAC;IAEnE,WAAW,CAAC,MAAoB;QAC9B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,oBAAoB;gBACvB,OAAO;oBACL,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;oBAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;oBAC5B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,SAAS;oBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ;gBACE,MAAM,IAAI,KAAK,CAAC,4BAA6B,MAAuB,CAAC,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,OAAqB;QACtC,OAAO;YACL,YAAY,CAAC,OAA4B,EAAE,KAAa;gBACtD,qBAAqB;YACvB,CAAC;YACD,KAAK;gBACH,QAAQ;YACV,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
|
package/dist/launcher/index.d.ts
CHANGED
|
@@ -6,5 +6,6 @@ export { CredhelperHttpClient } from './credhelper-client.js';
|
|
|
6
6
|
export type { CredhelperClient, CredhelperClientOptions, BeginSessionResult } from './credhelper-client.js';
|
|
7
7
|
export { generateSessionId, buildSessionEnv, wrapCommand, applyCredentials, } from './credentials-interceptor.js';
|
|
8
8
|
export type { InterceptorResult } from './credentials-interceptor.js';
|
|
9
|
-
export
|
|
9
|
+
export { UnknownProviderError, DuplicatePluginRegistrationError, } from './errors.js';
|
|
10
|
+
export type { GenericSubprocessIntent, ShellIntent, PhaseIntent, PrFeedbackIntent, ValidateFixIntent, MergeConflictIntent, ConversationTurnIntent, InvokeIntent, LaunchIntent, LaunchRequest, LaunchSpec, AgentLaunchPlugin, OutputParser, LaunchHandle, } from './types.js';
|
|
10
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EACV,uBAAuB,EACvB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,gCAAgC,GACjC,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,uBAAuB,EACvB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC"}
|
package/dist/launcher/index.js
CHANGED
|
@@ -4,4 +4,5 @@ export { createAgentLauncher } from './launcher-setup.js';
|
|
|
4
4
|
export { CredhelperUnavailableError, CredhelperSessionError } from './credhelper-errors.js';
|
|
5
5
|
export { CredhelperHttpClient } from './credhelper-client.js';
|
|
6
6
|
export { generateSessionId, buildSessionEnv, wrapCommand, applyCredentials, } from './credentials-interceptor.js';
|
|
7
|
+
export { UnknownProviderError, DuplicatePluginRegistrationError, } from './errors.js';
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,oBAAoB,EACpB,gCAAgC,GACjC,MAAM,aAAa,CAAC"}
|
package/dist/launcher/types.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ChildProcessHandle } from '../worker/types.js';
|
|
2
|
-
import type { ClaudeCodeIntent } from '@generacy-ai/generacy-plugin-claude-code';
|
|
3
2
|
import type { LaunchRequestCredentials } from '@generacy-ai/credhelper';
|
|
4
3
|
/**
|
|
5
4
|
* Intent for launching a generic subprocess with explicit command/args.
|
|
@@ -22,12 +21,86 @@ export interface ShellIntent {
|
|
|
22
21
|
env?: Record<string, string>;
|
|
23
22
|
detached?: boolean;
|
|
24
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* Intent for executing a speckit workflow phase.
|
|
26
|
+
* Excludes 'validate' at compile time — validate runs via GenericSubprocessPlugin.
|
|
27
|
+
*/
|
|
28
|
+
export interface PhaseIntent {
|
|
29
|
+
kind: 'phase';
|
|
30
|
+
/** Speckit phase to execute */
|
|
31
|
+
phase: 'specify' | 'clarify' | 'plan' | 'tasks' | 'implement';
|
|
32
|
+
/** Full prompt text: slash command + issue URL (composed by caller) */
|
|
33
|
+
prompt: string;
|
|
34
|
+
/** Resume a previous session (for MCP server warmth + context carry) */
|
|
35
|
+
sessionId?: string;
|
|
36
|
+
/** Optional model override, provider-interpreted. */
|
|
37
|
+
model?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Intent for addressing PR review feedback.
|
|
41
|
+
*/
|
|
42
|
+
export interface PrFeedbackIntent {
|
|
43
|
+
kind: 'pr-feedback';
|
|
44
|
+
/** PR number for logging/tracing */
|
|
45
|
+
prNumber: number;
|
|
46
|
+
/** Full prompt text (pre-built by caller via buildFeedbackPrompt()) */
|
|
47
|
+
prompt: string;
|
|
48
|
+
/** Optional model override, provider-interpreted. */
|
|
49
|
+
model?: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Intent for a bounded validate-fix agent attempt (#892). Routes through the
|
|
53
|
+
* same launcher plumbing as `pr-feedback`. The `evidenceHash` surfaces in
|
|
54
|
+
* launcher observability + PhaseTracker dedupe key.
|
|
55
|
+
*/
|
|
56
|
+
export interface ValidateFixIntent {
|
|
57
|
+
kind: 'validate-fix';
|
|
58
|
+
/** PR number for logging/tracing */
|
|
59
|
+
prNumber: number;
|
|
60
|
+
/** Full prompt text (pre-built by ValidateFixHandler with stdout evidence) */
|
|
61
|
+
prompt: string;
|
|
62
|
+
/** 64-hex SHA-256 identity of the failing evidence — surfaces in logs. */
|
|
63
|
+
evidenceHash: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Intent for a bounded merge-conflict resolution agent attempt (#898).
|
|
67
|
+
* Routes through the same launcher plumbing as `pr-feedback`.
|
|
68
|
+
*/
|
|
69
|
+
export interface MergeConflictIntent {
|
|
70
|
+
kind: 'merge-conflict';
|
|
71
|
+
/** For logging/tracing */
|
|
72
|
+
issueNumber: number;
|
|
73
|
+
/** Full prompt (built by MergeConflictHandler via buildMergeConflictPrompt) */
|
|
74
|
+
prompt: string;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Intent for a single interactive conversation turn.
|
|
78
|
+
*/
|
|
79
|
+
export interface ConversationTurnIntent {
|
|
80
|
+
kind: 'conversation-turn';
|
|
81
|
+
/** User message to send */
|
|
82
|
+
message: string;
|
|
83
|
+
/** Resume session ID (omit for first turn) */
|
|
84
|
+
sessionId?: string;
|
|
85
|
+
/** Model override (omit for default) */
|
|
86
|
+
model?: string;
|
|
87
|
+
/** Whether to skip permission prompts */
|
|
88
|
+
skipPermissions: boolean;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Intent for invoking a raw command string.
|
|
92
|
+
*/
|
|
93
|
+
export interface InvokeIntent {
|
|
94
|
+
kind: 'invoke';
|
|
95
|
+
/** Raw command string (e.g., "/speckit:specify https://...") */
|
|
96
|
+
command: string;
|
|
97
|
+
/** Whether to stream output (reserved for future use) */
|
|
98
|
+
streaming?: boolean;
|
|
99
|
+
}
|
|
25
100
|
/**
|
|
26
101
|
* Discriminated union of all launch intent kinds.
|
|
27
|
-
* Phase 1: generic-subprocess, shell
|
|
28
|
-
* Phase 2: phase, pr-feedback, conversation-turn (ClaudeCodeIntent)
|
|
29
102
|
*/
|
|
30
|
-
export type LaunchIntent = GenericSubprocessIntent | ShellIntent |
|
|
103
|
+
export type LaunchIntent = GenericSubprocessIntent | ShellIntent | PhaseIntent | PrFeedbackIntent | ValidateFixIntent | MergeConflictIntent | ConversationTurnIntent | InvokeIntent;
|
|
31
104
|
/**
|
|
32
105
|
* Request to launch a process through the AgentLauncher.
|
|
33
106
|
*/
|
|
@@ -44,6 +117,8 @@ export interface LaunchRequest {
|
|
|
44
117
|
detached?: boolean;
|
|
45
118
|
/** Optional credential scoping — when set, a credhelper session is managed around the subprocess */
|
|
46
119
|
credentials?: LaunchRequestCredentials;
|
|
120
|
+
/** Optional provider selector. Default: 'claude-code'. Runtime-validated (UnknownProviderError). */
|
|
121
|
+
provider?: string;
|
|
47
122
|
}
|
|
48
123
|
/**
|
|
49
124
|
* Output of a plugin's buildLaunch() — tells the launcher HOW to spawn.
|
|
@@ -71,6 +146,8 @@ export interface LaunchSpec {
|
|
|
71
146
|
export interface AgentLaunchPlugin {
|
|
72
147
|
/** Unique identifier for this plugin */
|
|
73
148
|
readonly pluginId: string;
|
|
149
|
+
/** Provider namespace this plugin claims. Registry key is (provider, kind). */
|
|
150
|
+
readonly provider: string;
|
|
74
151
|
/** Intent kinds this plugin can handle */
|
|
75
152
|
readonly supportedKinds: readonly string[];
|
|
76
153
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/launcher/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/launcher/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export interface PostActivationState {
|
|
|
7
7
|
export interface PostActivationRetryOptions {
|
|
8
8
|
completionFlagPath?: string;
|
|
9
9
|
keyFilePath?: string;
|
|
10
|
+
wizardCredsPath?: string;
|
|
10
11
|
controlPlaneSocket?: string;
|
|
11
12
|
controlPlaneWaitTimeout?: number;
|
|
12
13
|
logger: FastifyBaseLogger;
|
|
@@ -16,12 +17,14 @@ export interface PostActivationRetryOptions {
|
|
|
16
17
|
export declare class PostActivationRetryService {
|
|
17
18
|
private readonly completionFlagPath;
|
|
18
19
|
private readonly keyFilePath;
|
|
20
|
+
private readonly wizardCredsPath;
|
|
19
21
|
private readonly controlPlaneSocket;
|
|
20
22
|
private readonly controlPlaneWaitTimeout;
|
|
21
23
|
private readonly logger;
|
|
22
24
|
private readonly sendRelayEvent?;
|
|
23
25
|
private readonly statusReporter;
|
|
24
26
|
constructor(options: PostActivationRetryOptions);
|
|
27
|
+
private readGhToken;
|
|
25
28
|
checkPostActivationState(): PostActivationState;
|
|
26
29
|
triggerPostActivationRetry(): Promise<void>;
|
|
27
30
|
private handleRetryFailure;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-activation-retry.d.ts","sourceRoot":"","sources":["../../src/services/post-activation-retry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAIjD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC9D;
|
|
1
|
+
{"version":3,"file":"post-activation-retry.d.ts","sourceRoot":"","sources":["../../src/services/post-activation-retry.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAIjD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,sBAAsB,EAAE,OAAO,CAAC;IAChC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,0BAA0B;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,mEAAmE;IACnE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC9D;AAQD,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAS;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAA8C;IAC9E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAEpC,OAAO,EAAE,0BAA0B;IAY/C,OAAO,CAAC,WAAW;IAiBnB,wBAAwB,IAAI,mBAAmB;IAwBzC,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC;YAsCnC,kBAAkB;IAWhC,OAAO,CAAC,mBAAmB;CA0C5B"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import { existsSync } from 'node:fs';
|
|
1
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
2
2
|
import http from 'node:http';
|
|
3
3
|
import { probeControlPlaneSocket } from './control-plane-probe.js';
|
|
4
4
|
import { StatusReporter } from './status-reporter.js';
|
|
5
5
|
const DEFAULT_COMPLETION_FLAG = '/var/lib/generacy/post-activation-complete';
|
|
6
6
|
const DEFAULT_KEY_FILE = '/var/lib/generacy/cluster-api-key';
|
|
7
|
+
const DEFAULT_WIZARD_CREDS = '/var/lib/generacy/wizard-credentials.env';
|
|
7
8
|
const DEFAULT_SOCKET = '/run/generacy-control-plane/control.sock';
|
|
8
9
|
const DEFAULT_WAIT_TIMEOUT = 15;
|
|
9
10
|
export class PostActivationRetryService {
|
|
10
11
|
completionFlagPath;
|
|
11
12
|
keyFilePath;
|
|
13
|
+
wizardCredsPath;
|
|
12
14
|
controlPlaneSocket;
|
|
13
15
|
controlPlaneWaitTimeout;
|
|
14
16
|
logger;
|
|
@@ -17,19 +19,49 @@ export class PostActivationRetryService {
|
|
|
17
19
|
constructor(options) {
|
|
18
20
|
this.completionFlagPath = options.completionFlagPath ?? DEFAULT_COMPLETION_FLAG;
|
|
19
21
|
this.keyFilePath = options.keyFilePath ?? DEFAULT_KEY_FILE;
|
|
22
|
+
this.wizardCredsPath =
|
|
23
|
+
options.wizardCredsPath ?? process.env['WIZARD_CREDS_PATH'] ?? DEFAULT_WIZARD_CREDS;
|
|
20
24
|
this.controlPlaneSocket = options.controlPlaneSocket ?? DEFAULT_SOCKET;
|
|
21
25
|
this.controlPlaneWaitTimeout = options.controlPlaneWaitTimeout ?? DEFAULT_WAIT_TIMEOUT;
|
|
22
26
|
this.logger = options.logger;
|
|
23
27
|
this.sendRelayEvent = options.sendRelayEvent;
|
|
24
28
|
this.statusReporter = new StatusReporter({ socketPath: this.controlPlaneSocket });
|
|
25
29
|
}
|
|
30
|
+
readGhToken() {
|
|
31
|
+
try {
|
|
32
|
+
const raw = readFileSync(this.wizardCredsPath, 'utf8');
|
|
33
|
+
for (const line of raw.split(/\r?\n/)) {
|
|
34
|
+
const idx = line.indexOf('=');
|
|
35
|
+
if (idx < 0)
|
|
36
|
+
continue;
|
|
37
|
+
const key = line.slice(0, idx);
|
|
38
|
+
if (key !== 'GH_TOKEN')
|
|
39
|
+
continue;
|
|
40
|
+
const value = line.slice(idx + 1).trim();
|
|
41
|
+
return value.length > 0 ? { sealed: true, token: value } : { sealed: false };
|
|
42
|
+
}
|
|
43
|
+
return { sealed: false };
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return { sealed: false };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
26
49
|
checkPostActivationState() {
|
|
27
50
|
const activated = existsSync(this.keyFilePath);
|
|
28
51
|
const postActivationComplete = existsSync(this.completionFlagPath);
|
|
52
|
+
const ghTokenSealed = this.readGhToken().sealed;
|
|
53
|
+
const needsRetry = activated && !postActivationComplete && ghTokenSealed;
|
|
54
|
+
if (activated && !postActivationComplete && !ghTokenSealed) {
|
|
55
|
+
this.logger.info({ wizardCredsPath: this.wizardCredsPath }, 'Post-activation retry deferred — GH_TOKEN not sealed in wizard-credentials.env');
|
|
56
|
+
this.sendRelayEvent?.('cluster.bootstrap', {
|
|
57
|
+
status: 'deferred',
|
|
58
|
+
reason: 'github-token-not-sealed',
|
|
59
|
+
});
|
|
60
|
+
}
|
|
29
61
|
return {
|
|
30
62
|
activated,
|
|
31
63
|
postActivationComplete,
|
|
32
|
-
needsRetry
|
|
64
|
+
needsRetry,
|
|
33
65
|
};
|
|
34
66
|
}
|
|
35
67
|
async triggerPostActivationRetry() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-activation-retry.js","sourceRoot":"","sources":["../../src/services/post-activation-retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"post-activation-retry.js","sourceRoot":"","sources":["../../src/services/post-activation-retry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-cli-worker.d.ts","sourceRoot":"","sources":["../../src/worker/claude-cli-worker.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAiB,cAAc,EAAsB,MAAM,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAgB3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmCvD;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,cAiCnC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,mEAAmE;IACnE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,eAAe;IAWxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAoC;IACnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;gBAG3B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,EAC/B,IAAI,GAAE,mBAAwB;IAyDhC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-cli-worker.d.ts","sourceRoot":"","sources":["../../src/worker/claude-cli-worker.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAiB,cAAc,EAAsB,MAAM,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7G,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAQhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAgB3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAmCvD;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,cAiCnC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,mEAAmE;IACnE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,eAAe;IAWxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAoC;IACnE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;gBAG3B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,EAC/B,IAAI,GAAE,mBAAwB;IAyDhC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;CAqnBrD"}
|