red64-cli 0.2.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +186 -337
- package/dist/cli/parseArgs.d.ts.map +1 -1
- package/dist/cli/parseArgs.js +5 -13
- package/dist/cli/parseArgs.js.map +1 -1
- package/dist/components/init/types.d.ts +0 -2
- package/dist/components/init/types.d.ts.map +1 -1
- package/dist/components/screens/HelpScreen.d.ts.map +1 -1
- package/dist/components/screens/HelpScreen.js +0 -2
- package/dist/components/screens/HelpScreen.js.map +1 -1
- package/dist/components/screens/InitScreen.d.ts.map +1 -1
- package/dist/components/screens/InitScreen.js +5 -8
- package/dist/components/screens/InitScreen.js.map +1 -1
- package/dist/components/screens/ListScreen.d.ts.map +1 -1
- package/dist/components/screens/ListScreen.js +28 -3
- package/dist/components/screens/ListScreen.js.map +1 -1
- package/dist/components/screens/StartScreen.d.ts.map +1 -1
- package/dist/components/screens/StartScreen.js +149 -15
- package/dist/components/screens/StartScreen.js.map +1 -1
- package/dist/components/screens/StatusScreen.d.ts.map +1 -1
- package/dist/components/screens/StatusScreen.js +16 -1
- package/dist/components/screens/StatusScreen.js.map +1 -1
- package/dist/components/ui/ArtifactsSidebar.d.ts +19 -0
- package/dist/components/ui/ArtifactsSidebar.d.ts.map +1 -0
- package/dist/components/ui/ArtifactsSidebar.js +51 -0
- package/dist/components/ui/ArtifactsSidebar.js.map +1 -0
- package/dist/components/ui/FeatureSidebar.d.ts.map +1 -1
- package/dist/components/ui/FeatureSidebar.js +1 -1
- package/dist/components/ui/FeatureSidebar.js.map +1 -1
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +1 -0
- package/dist/components/ui/index.js.map +1 -1
- package/dist/services/AgentInvoker.d.ts.map +1 -1
- package/dist/services/AgentInvoker.js +76 -37
- package/dist/services/AgentInvoker.js.map +1 -1
- package/dist/services/ClaudeErrorDetector.d.ts +1 -1
- package/dist/services/ClaudeErrorDetector.d.ts.map +1 -1
- package/dist/services/ClaudeErrorDetector.js +4 -3
- package/dist/services/ClaudeErrorDetector.js.map +1 -1
- package/dist/services/ClaudeHealthCheck.d.ts +2 -0
- package/dist/services/ClaudeHealthCheck.d.ts.map +1 -1
- package/dist/services/ClaudeHealthCheck.js +38 -12
- package/dist/services/ClaudeHealthCheck.js.map +1 -1
- package/dist/services/ConfigService.d.ts +1 -0
- package/dist/services/ConfigService.d.ts.map +1 -1
- package/dist/services/ConfigService.js.map +1 -1
- package/dist/services/DockerRunner.js +1 -1
- package/dist/services/DockerRunner.js.map +1 -1
- package/dist/services/PhaseExecutor.d.ts.map +1 -1
- package/dist/services/PhaseExecutor.js +2 -1
- package/dist/services/PhaseExecutor.js.map +1 -1
- package/dist/services/TaskRunner.d.ts.map +1 -1
- package/dist/services/TaskRunner.js +2 -1
- package/dist/services/TaskRunner.js.map +1 -1
- package/dist/types/index.d.ts +16 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/framework/.red64/settings/templates/specs/gap-analysis.md +163 -0
- package/framework/agents/claude/.claude/agents/red64/validate-gap.md +13 -7
- package/framework/agents/claude/.claude/commands/red64/validate-gap.md +4 -0
- package/framework/agents/codex/.codex/agents/red64/validate-gap.md +13 -7
- package/framework/agents/codex/.codex/commands/red64/validate-gap.md +4 -0
- package/package.json +1 -1
|
@@ -37,7 +37,15 @@ function readApiKeyFromConfig(configDir) {
|
|
|
37
37
|
/**
|
|
38
38
|
* Get API key from environment or config
|
|
39
39
|
*/
|
|
40
|
-
function getApiKey(tier) {
|
|
40
|
+
function getApiKey(tier, agent) {
|
|
41
|
+
// Check agent-specific env vars first
|
|
42
|
+
if (agent === 'gemini') {
|
|
43
|
+
return process.env.GOOGLE_API_KEY ?? process.env.GEMINI_API_KEY ?? null;
|
|
44
|
+
}
|
|
45
|
+
if (agent === 'codex') {
|
|
46
|
+
return process.env.CODEX_API_KEY ?? process.env.OPENAI_API_KEY ?? null;
|
|
47
|
+
}
|
|
48
|
+
// Claude: check env then config files
|
|
41
49
|
if (process.env.ANTHROPIC_API_KEY) {
|
|
42
50
|
return process.env.ANTHROPIC_API_KEY;
|
|
43
51
|
}
|
|
@@ -70,13 +78,27 @@ export function createClaudeHealthCheck() {
|
|
|
70
78
|
}
|
|
71
79
|
// Minimal prompt that should succeed quickly if API is healthy
|
|
72
80
|
const healthPrompt = 'Reply with exactly: OK';
|
|
81
|
+
const agent = options?.agent ?? 'claude';
|
|
82
|
+
// Build agent-specific health check command
|
|
83
|
+
const getHealthArgs = () => {
|
|
84
|
+
switch (agent) {
|
|
85
|
+
case 'gemini':
|
|
86
|
+
return { binary: 'gemini', args: [healthPrompt] };
|
|
87
|
+
case 'codex':
|
|
88
|
+
return { binary: 'codex', args: ['exec', healthPrompt] };
|
|
89
|
+
case 'claude':
|
|
90
|
+
default:
|
|
91
|
+
return { binary: 'claude', args: ['-p', healthPrompt] };
|
|
92
|
+
}
|
|
93
|
+
};
|
|
73
94
|
return new Promise((resolve) => {
|
|
74
95
|
let proc;
|
|
75
96
|
let stdout = '';
|
|
76
97
|
let stderr = '';
|
|
98
|
+
const { binary, args: healthArgs } = getHealthArgs();
|
|
77
99
|
// Use Docker sandbox if enabled
|
|
78
100
|
if (options?.sandbox) {
|
|
79
|
-
const apiKey = getApiKey(options?.tier);
|
|
101
|
+
const apiKey = getApiKey(options?.tier, agent);
|
|
80
102
|
const dockerArgs = [
|
|
81
103
|
'run',
|
|
82
104
|
'--rm',
|
|
@@ -84,14 +106,17 @@ export function createClaudeHealthCheck() {
|
|
|
84
106
|
'-v', `${process.cwd()}:/workspace`,
|
|
85
107
|
];
|
|
86
108
|
if (apiKey) {
|
|
87
|
-
|
|
109
|
+
const envKey = agent === 'gemini' ? 'GOOGLE_API_KEY'
|
|
110
|
+
: agent === 'codex' ? 'CODEX_API_KEY'
|
|
111
|
+
: 'ANTHROPIC_API_KEY';
|
|
112
|
+
dockerArgs.push('-e', `${envKey}=${apiKey}`);
|
|
88
113
|
}
|
|
89
114
|
dockerArgs.push(SANDBOX_IMAGE);
|
|
90
|
-
dockerArgs.push(
|
|
115
|
+
dockerArgs.push(binary, ...healthArgs);
|
|
91
116
|
proc = spawn('docker', dockerArgs, { stdio: ['pipe', 'pipe', 'pipe'] });
|
|
92
117
|
}
|
|
93
118
|
else {
|
|
94
|
-
proc = spawn(
|
|
119
|
+
proc = spawn(binary, healthArgs, {
|
|
95
120
|
env,
|
|
96
121
|
stdio: ['pipe', 'pipe', 'pipe']
|
|
97
122
|
});
|
|
@@ -124,8 +149,8 @@ export function createClaudeHealthCheck() {
|
|
|
124
149
|
proc.on('close', (code) => {
|
|
125
150
|
clearTimeout(timeoutId);
|
|
126
151
|
const durationMs = Date.now() - startTime;
|
|
127
|
-
// Check for known errors
|
|
128
|
-
const claudeError = errorDetector.detect(stdout, stderr);
|
|
152
|
+
// Check for known errors (claude-specific detector)
|
|
153
|
+
const claudeError = agent === 'claude' ? errorDetector.detect(stdout, stderr) : undefined;
|
|
129
154
|
if (claudeError) {
|
|
130
155
|
resolve({
|
|
131
156
|
healthy: false,
|
|
@@ -145,7 +170,7 @@ export function createClaudeHealthCheck() {
|
|
|
145
170
|
code: 'UNKNOWN',
|
|
146
171
|
message: errorLine,
|
|
147
172
|
recoverable: false,
|
|
148
|
-
suggestion:
|
|
173
|
+
suggestion: `Check ${agent === 'gemini' ? 'Gemini' : agent === 'codex' ? 'Codex' : 'Claude'} CLI configuration and try again`
|
|
149
174
|
},
|
|
150
175
|
message: errorLine,
|
|
151
176
|
durationMs
|
|
@@ -165,15 +190,16 @@ export function createClaudeHealthCheck() {
|
|
|
165
190
|
const durationMs = Date.now() - startTime;
|
|
166
191
|
// Check if Claude CLI is not installed
|
|
167
192
|
if (error.message.includes('ENOENT')) {
|
|
193
|
+
const cliName = agent === 'gemini' ? 'Gemini CLI' : agent === 'codex' ? 'Codex CLI' : 'Claude CLI';
|
|
168
194
|
resolve({
|
|
169
195
|
healthy: false,
|
|
170
196
|
error: {
|
|
171
|
-
code: '
|
|
172
|
-
message:
|
|
197
|
+
code: 'CLI_NOT_FOUND',
|
|
198
|
+
message: `${cliName} not found`,
|
|
173
199
|
recoverable: false,
|
|
174
|
-
suggestion:
|
|
200
|
+
suggestion: `Install ${cliName} and ensure it is on your PATH`
|
|
175
201
|
},
|
|
176
|
-
message:
|
|
202
|
+
message: `${cliName} is not installed`,
|
|
177
203
|
durationMs
|
|
178
204
|
});
|
|
179
205
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeHealthCheck.js","sourceRoot":"","sources":["../../src/services/ClaudeHealthCheck.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,yBAAyB,EAAoB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ClaudeHealthCheck.js","sourceRoot":"","sources":["../../src/services/ClaudeHealthCheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigService.d.ts","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AAE/E;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigService.d.ts","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AAE/E;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAqBD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CA+BnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../src/services/ConfigService.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAgDjC;;GAEG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,KAAK,CAAC,IAAI,CAAC,OAAe;YACxB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAE1C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;gBACjD,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,OAAe,EAAE,MAAkB;YAC5C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEzC,iCAAiC;YACjC,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE3C,sCAAsC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAChD,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,OAAe;YACjC,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Runs Claude CLI commands inside a Docker container for isolation
|
|
4
4
|
*/
|
|
5
5
|
import { spawn } from 'node:child_process';
|
|
6
|
-
const DEFAULT_IMAGE = 'red64-sandbox:latest';
|
|
6
|
+
const DEFAULT_IMAGE = 'ghcr.io/red64llc/red64-sandbox:latest';
|
|
7
7
|
/**
|
|
8
8
|
* Check if Docker is available
|
|
9
9
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DockerRunner.js","sourceRoot":"","sources":["../../src/services/DockerRunner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAE9D,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"DockerRunner.js","sourceRoot":"","sources":["../../src/services/DockerRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhaseExecutor.d.ts","sourceRoot":"","sources":["../../src/services/PhaseExecutor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,CACL,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,WAAW,EAClB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAClC;AAmED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,mBAAmB,EACjC,WAAW,EAAE,iBAAiB,GAC7B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"PhaseExecutor.d.ts","sourceRoot":"","sources":["../../src/services/PhaseExecutor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,CACL,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,WAAW,EAClB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAClC;AAmED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,mBAAmB,EACjC,WAAW,EAAE,iBAAiB,GAC7B,oBAAoB,CAsEtB"}
|
|
@@ -92,7 +92,8 @@ export function createPhaseExecutor(agentInvoker, _stateStore) {
|
|
|
92
92
|
prompt,
|
|
93
93
|
workingDirectory,
|
|
94
94
|
skipPermissions: flags.skipPermissions,
|
|
95
|
-
tier: flags.tier
|
|
95
|
+
tier: flags.tier,
|
|
96
|
+
agent: flags.agent
|
|
96
97
|
});
|
|
97
98
|
if (result.success) {
|
|
98
99
|
// Requirements: 2.5 - Parse agent output after completion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PhaseExecutor.js","sourceRoot":"","sources":["../../src/services/PhaseExecutor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4BH;;;;GAIG;AACH,MAAM,aAAa,GAA2B;IAC5C,cAAc,EAAE,8CAA8C;IAC9D,yBAAyB,EAAE,oCAAoC;IAC/D,mBAAmB,EAAE,8BAA8B;IACnD,kBAAkB,EAAE,6BAA6B;IACjD,cAAc,EAAE,4BAA4B;CAC7C,CAAC;AAEF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B;;GAEG;AACH,SAAS,iBAAiB,CAAC,KAAgB;IACzC,OAAO;QACL,cAAc;QACd,yBAAyB;QACzB,mBAAmB;QACnB,kBAAkB;QAClB,cAAc;KACf,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,KAAgB;IACnC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAM,GAAG,QAAQ,CAAC;IAEtB,8BAA8B;IAC9B,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,yDAAyD;IACzD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAClC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,YAAiC,EACjC,WAA8B;IAE9B,OAAO;QACL;;;WAGG;QACH,KAAK,CAAC,OAAO,CACX,KAAgB,EAChB,KAAkB,EAClB,gBAAwB;YAExB,uDAAuD;YACvD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,SAAS;iBACjB,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,SAAS;iBACjB,CAAC;YACJ,CAAC;YAED,aAAa;YACb,0DAA0D;YAC1D,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC;gBAChE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;oBACvC,MAAM;oBACN,gBAAgB;oBAChB,eAAe,EAAE,KAAK,CAAC,eAAe;oBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"PhaseExecutor.js","sourceRoot":"","sources":["../../src/services/PhaseExecutor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4BH;;;;GAIG;AACH,MAAM,aAAa,GAA2B;IAC5C,cAAc,EAAE,8CAA8C;IAC9D,yBAAyB,EAAE,oCAAoC;IAC/D,mBAAmB,EAAE,8BAA8B;IACnD,kBAAkB,EAAE,6BAA6B;IACjD,cAAc,EAAE,4BAA4B;CAC7C,CAAC;AAEF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B;;GAEG;AACH,SAAS,iBAAiB,CAAC,KAAgB;IACzC,OAAO;QACL,cAAc;QACd,yBAAyB;QACzB,mBAAmB;QACnB,kBAAkB;QAClB,cAAc;KACf,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,KAAgB;IACnC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAM,GAAG,QAAQ,CAAC;IAEtB,8BAA8B;IAC9B,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,yDAAyD;IACzD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAClC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,YAAiC,EACjC,WAA8B;IAE9B,OAAO;QACL;;;WAGG;QACH,KAAK,CAAC,OAAO,CACX,KAAgB,EAChB,KAAkB,EAClB,gBAAwB;YAExB,uDAAuD;YACvD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,SAAS;iBACjB,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,SAAS;iBACjB,CAAC;YACJ,CAAC;YAED,aAAa;YACb,0DAA0D;YAC1D,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC;gBAChE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;oBACvC,MAAM;oBACN,gBAAgB;oBAChB,eAAe,EAAE,KAAK,CAAC,eAAe;oBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,0DAA0D;oBAC1D,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,KAAK,EAAE,SAAS;qBACjB,CAAC;gBACJ,CAAC;gBAED,sBAAsB;gBACtB,IAAI,OAAO,KAAK,mBAAmB,EAAE,CAAC;oBACpC,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,SAAS;wBAClC,KAAK,EAAE,sBAAsB,mBAAmB,aAAa,MAAM,CAAC,MAAM,EAAE;qBAC7E,CAAC;gBACJ,CAAC;gBAED,6CAA6C;gBAC7C,MAAM,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC;YACxC,CAAC;YAED,mDAAmD;YACnD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,SAAS;gBACjB,KAAK,EAAE,qCAAqC;aAC7C,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskRunner.d.ts","sourceRoot":"","sources":["../../src/services/TaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC1E,QAAQ,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrE,KAAK,IAAI,IAAI,CAAC;CACf;AA2BD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,mBAAmB,EACjC,aAAa,EAAE,sBAAsB,EACrC,UAAU,EAAE,iBAAiB,GAC5B,iBAAiB,
|
|
1
|
+
{"version":3,"file":"TaskRunner.d.ts","sourceRoot":"","sources":["../../src/services/TaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC1E,QAAQ,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACvF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrE,KAAK,IAAI,IAAI,CAAC;CACf;AA2BD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,mBAAmB,EACjC,aAAa,EAAE,sBAAsB,EACrC,UAAU,EAAE,iBAAiB,GAC5B,iBAAiB,CA0HnB"}
|
|
@@ -74,7 +74,8 @@ export function createTaskRunner(agentInvoker, commitService, taskParser) {
|
|
|
74
74
|
prompt,
|
|
75
75
|
workingDirectory: options.workingDir,
|
|
76
76
|
skipPermissions: options.flags.skipPermissions,
|
|
77
|
-
tier: options.flags.tier
|
|
77
|
+
tier: options.flags.tier,
|
|
78
|
+
agent: options.flags.agent
|
|
78
79
|
});
|
|
79
80
|
if (!result.success) {
|
|
80
81
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskRunner.js","sourceRoot":"","sources":["../../src/services/TaskRunner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgDH;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;GAEG;AACH,SAAS,kBAAkB,CAAC,IAAU,EAAE,OAAe;IACrD,OAAO,+BAA+B,IAAI,CAAC,EAAE,iBAAiB,OAAO;;QAE/D,IAAI,CAAC,KAAK;;;EAGhB,IAAI,CAAC,WAAW;;;;;;;CAOjB,CAAC;AACF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAAiC,EACjC,aAAqC,EACrC,UAA6B;IAE7B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,OAAO;QACL;;;;;WAKG;QACH,KAAK,CAAC,OAAO,CAAC,OAA6B;YACzC,OAAO,GAAG,KAAK,CAAC;YAEhB,kCAAkC;YAClC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAE1D,6BAA6B;YAC7B,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACjE,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC;YAEvC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,cAAc,EAAE,CAAC;oBACjB,UAAU;oBACV,QAAQ,EAAE,SAAS;oBACnB,KAAK,EAAE,SAAS;iBACjB,CAAC;YACJ,CAAC;YAED,IAAI,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;YAE3C,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;gBAClC,kBAAkB;gBAClB,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,cAAc,EAAE,cAAc;wBAC9B,UAAU;wBACV,QAAQ,EAAE,SAAS;wBACnB,KAAK,EAAE,mBAAmB;qBAC3B,CAAC;gBACJ,CAAC;gBAED,wBAAwB;gBACxB,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;oBACvC,MAAM;oBACN,gBAAgB,EAAE,OAAO,CAAC,UAAU;oBACpC,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe;oBAC9C,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;
|
|
1
|
+
{"version":3,"file":"TaskRunner.js","sourceRoot":"","sources":["../../src/services/TaskRunner.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -39,13 +39,12 @@ export interface GlobalFlags {
|
|
|
39
39
|
readonly yes: boolean;
|
|
40
40
|
readonly sandbox: boolean;
|
|
41
41
|
readonly model?: string;
|
|
42
|
-
readonly repo?: string;
|
|
43
42
|
readonly stack?: string;
|
|
44
43
|
readonly 'skip-guided'?: boolean;
|
|
45
44
|
readonly 'no-steering'?: boolean;
|
|
46
|
-
readonly 'no-cache'?: boolean;
|
|
47
45
|
readonly agent?: CodingAgent;
|
|
48
46
|
readonly 'skip-tests'?: boolean;
|
|
47
|
+
readonly 'local-image'?: boolean;
|
|
49
48
|
}
|
|
50
49
|
/**
|
|
51
50
|
* CLIConfig interface combining command, args, and flags
|
|
@@ -140,6 +139,17 @@ export interface TaskProgress {
|
|
|
140
139
|
readonly completedTasks: readonly string[];
|
|
141
140
|
readonly totalTasks: number;
|
|
142
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Artifact generated during spec-driven development
|
|
144
|
+
* Tracks files created by the framework for easy reference
|
|
145
|
+
*/
|
|
146
|
+
export interface Artifact {
|
|
147
|
+
readonly name: string;
|
|
148
|
+
readonly filename: string;
|
|
149
|
+
readonly path: string;
|
|
150
|
+
readonly phase: string;
|
|
151
|
+
readonly createdAt: string;
|
|
152
|
+
}
|
|
143
153
|
/**
|
|
144
154
|
* FlowState interface with feature, phase, timestamps, history, and metadata
|
|
145
155
|
* Requirement: 1.5 - State persistence
|
|
@@ -163,6 +173,7 @@ export interface FlowState {
|
|
|
163
173
|
readonly phaseMetrics?: {
|
|
164
174
|
readonly [phaseType: string]: PhaseMetric;
|
|
165
175
|
};
|
|
176
|
+
readonly artifacts?: readonly Artifact[];
|
|
166
177
|
}
|
|
167
178
|
/**
|
|
168
179
|
* Agent invocation options for Claude CLI execution
|
|
@@ -173,8 +184,10 @@ export interface AgentInvokeOptions {
|
|
|
173
184
|
readonly workingDirectory: string;
|
|
174
185
|
readonly skipPermissions: boolean;
|
|
175
186
|
readonly tier: string | undefined;
|
|
187
|
+
readonly agent?: CodingAgent;
|
|
176
188
|
readonly model?: string;
|
|
177
189
|
readonly sandbox?: boolean;
|
|
190
|
+
readonly sandboxImage?: string;
|
|
178
191
|
readonly onOutput?: (chunk: string) => void;
|
|
179
192
|
readonly onError?: (chunk: string) => void;
|
|
180
193
|
readonly timeout?: number;
|
|
@@ -182,7 +195,7 @@ export interface AgentInvokeOptions {
|
|
|
182
195
|
/**
|
|
183
196
|
* Claude CLI error codes for specific failure types
|
|
184
197
|
*/
|
|
185
|
-
export type ClaudeErrorCode = 'CREDIT_EXHAUSTED' | 'RATE_LIMITED' | 'AUTH_FAILED' | 'MODEL_UNAVAILABLE' | 'CONTEXT_EXCEEDED' | 'NETWORK_ERROR' | 'PERMISSION_DENIED' | 'UNKNOWN';
|
|
198
|
+
export type ClaudeErrorCode = 'CREDIT_EXHAUSTED' | 'RATE_LIMITED' | 'AUTH_FAILED' | 'CLI_NOT_FOUND' | 'MODEL_UNAVAILABLE' | 'CONTEXT_EXCEEDED' | 'NETWORK_ERROR' | 'PERMISSION_DENIED' | 'UNKNOWN';
|
|
186
199
|
/**
|
|
187
200
|
* Parsed Claude error with actionable information
|
|
188
201
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,OAAO,GACf,MAAM,GACN,OAAO,GACP,QAAQ,GACR,MAAM,GACN,OAAO,GACP,MAAM,GACN,SAAS,CAAC;AAEd;;;GAGG;AACH;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAgBrG,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6BH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiF;IACxG,MAAM,EAAE;QACN,KAAK,EAAE,yBAAyB;QAChC,IAAI,EAAE,0BAA0B;QAChC,GAAG,EAAE,CAAC,yBAAyB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,wBAAwB,CAAC;KACnH;IACD,MAAM,EAAE;QACN,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;KACzF;IACD,KAAK,EAAE;QACL,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC;KAC3D;CACF,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6BH;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiF;IACxG,MAAM,EAAE;QACN,KAAK,EAAE,yBAAyB;QAChC,IAAI,EAAE,0BAA0B;QAChC,GAAG,EAAE,CAAC,yBAAyB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,wBAAwB,CAAC;KACnH;IACD,MAAM,EAAE;QACN,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,gBAAgB;QACtB,GAAG,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;KACzF;IACD,KAAK,EAAE;QACL,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC;KAC3D;CACF,CAAC;AAkLF,gCAAgC;AAChC,OAAO,EAKL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EACjB,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
# Gap Analysis Template
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
**Purpose**: Analyze the gap between requirements and existing codebase to inform implementation strategy decisions.
|
|
5
|
+
|
|
6
|
+
**Approach**:
|
|
7
|
+
- Provide analysis and options, not final implementation choices
|
|
8
|
+
- Offer multiple viable alternatives when applicable
|
|
9
|
+
- Flag unknowns and constraints explicitly
|
|
10
|
+
- Align with existing patterns and architecture limits
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Executive Summary
|
|
14
|
+
|
|
15
|
+
Brief overview (3-5 bullets) covering:
|
|
16
|
+
- Scope of analysis
|
|
17
|
+
- Key findings
|
|
18
|
+
- Primary challenges identified
|
|
19
|
+
- Recommended approach
|
|
20
|
+
|
|
21
|
+
## Current State Investigation
|
|
22
|
+
|
|
23
|
+
### Domain-Related Assets
|
|
24
|
+
|
|
25
|
+
| Category | Assets Found | Location | Notes |
|
|
26
|
+
|----------|--------------|----------|-------|
|
|
27
|
+
| Key Modules | | | |
|
|
28
|
+
| Reusable Components | | | |
|
|
29
|
+
| Services/Utilities | | | |
|
|
30
|
+
|
|
31
|
+
### Architecture Patterns
|
|
32
|
+
|
|
33
|
+
- **Dominant patterns**:
|
|
34
|
+
- **Naming conventions**:
|
|
35
|
+
- **Dependency direction**:
|
|
36
|
+
- **Testing approach**:
|
|
37
|
+
|
|
38
|
+
### Integration Surfaces
|
|
39
|
+
|
|
40
|
+
- **Data models/schemas**:
|
|
41
|
+
- **API clients**:
|
|
42
|
+
- **Auth mechanisms**:
|
|
43
|
+
|
|
44
|
+
## Requirements Feasibility Analysis
|
|
45
|
+
|
|
46
|
+
### Technical Needs (from Requirements)
|
|
47
|
+
|
|
48
|
+
| Requirement | Technical Need | Category | Complexity |
|
|
49
|
+
|-------------|----------------|----------|------------|
|
|
50
|
+
| 1.x | | Data Model / API / UI / Logic | Simple / Moderate / Complex |
|
|
51
|
+
|
|
52
|
+
### Gap Analysis
|
|
53
|
+
|
|
54
|
+
| Requirement | Gap Type | Description | Impact |
|
|
55
|
+
|-------------|----------|-------------|--------|
|
|
56
|
+
| 1.x | Missing / Unknown / Constraint | | High / Medium / Low |
|
|
57
|
+
|
|
58
|
+
**Gap Types**:
|
|
59
|
+
- **Missing**: Capability does not exist in current codebase
|
|
60
|
+
- **Unknown**: Requires further research to determine feasibility
|
|
61
|
+
- **Constraint**: Existing architecture limits implementation options
|
|
62
|
+
|
|
63
|
+
## Implementation Approach Options
|
|
64
|
+
|
|
65
|
+
### Option A: Extend Existing Components
|
|
66
|
+
|
|
67
|
+
**When to consider**: Feature fits naturally into existing structure
|
|
68
|
+
|
|
69
|
+
**Files/Modules to Extend**:
|
|
70
|
+
| File | Change Type | Impact Assessment |
|
|
71
|
+
|------|-------------|-------------------|
|
|
72
|
+
| | Extend / Modify | |
|
|
73
|
+
|
|
74
|
+
**Trade-offs**:
|
|
75
|
+
- Minimal new files, faster initial development
|
|
76
|
+
- Leverages existing patterns and infrastructure
|
|
77
|
+
- Risk of bloating existing components
|
|
78
|
+
- May complicate existing logic
|
|
79
|
+
|
|
80
|
+
### Option B: Create New Components
|
|
81
|
+
|
|
82
|
+
**When to consider**: Feature has distinct responsibility or existing components are already complex
|
|
83
|
+
|
|
84
|
+
**New Components Required**:
|
|
85
|
+
| Component | Responsibility | Integration Points |
|
|
86
|
+
|-----------|----------------|-------------------|
|
|
87
|
+
| | | |
|
|
88
|
+
|
|
89
|
+
**Trade-offs**:
|
|
90
|
+
- Clean separation of concerns
|
|
91
|
+
- Easier to test in isolation
|
|
92
|
+
- More files to navigate
|
|
93
|
+
- Requires careful interface design
|
|
94
|
+
|
|
95
|
+
### Option C: Hybrid Approach
|
|
96
|
+
|
|
97
|
+
**When to consider**: Complex features requiring both extension and new creation
|
|
98
|
+
|
|
99
|
+
**Combination Strategy**:
|
|
100
|
+
| Part | Approach | Rationale |
|
|
101
|
+
|------|----------|-----------|
|
|
102
|
+
| | Extend / Create | |
|
|
103
|
+
|
|
104
|
+
**Trade-offs**:
|
|
105
|
+
- Balanced approach for complex features
|
|
106
|
+
- Allows iterative refinement
|
|
107
|
+
- More complex planning required
|
|
108
|
+
- Potential for inconsistency if not well-coordinated
|
|
109
|
+
|
|
110
|
+
## Effort and Risk Assessment
|
|
111
|
+
|
|
112
|
+
### Effort Estimate
|
|
113
|
+
|
|
114
|
+
| Option | Effort | Justification |
|
|
115
|
+
|--------|--------|---------------|
|
|
116
|
+
| A | S / M / L / XL | |
|
|
117
|
+
| B | S / M / L / XL | |
|
|
118
|
+
| C | S / M / L / XL | |
|
|
119
|
+
|
|
120
|
+
**Effort Scale**:
|
|
121
|
+
- **S** (1-3 days): Existing patterns, minimal dependencies, straightforward integration
|
|
122
|
+
- **M** (3-7 days): Some new patterns/integrations, moderate complexity
|
|
123
|
+
- **L** (1-2 weeks): Significant functionality, multiple integrations or workflows
|
|
124
|
+
- **XL** (2+ weeks): Architectural changes, unfamiliar tech, broad impact
|
|
125
|
+
|
|
126
|
+
### Risk Assessment
|
|
127
|
+
|
|
128
|
+
| Option | Risk | Justification |
|
|
129
|
+
|--------|------|---------------|
|
|
130
|
+
| A | High / Medium / Low | |
|
|
131
|
+
| B | High / Medium / Low | |
|
|
132
|
+
| C | High / Medium / Low | |
|
|
133
|
+
|
|
134
|
+
**Risk Factors**:
|
|
135
|
+
- **High**: Unknown tech, complex integrations, architectural shifts, unclear perf/security path
|
|
136
|
+
- **Medium**: New patterns with guidance, manageable integrations, known perf solutions
|
|
137
|
+
- **Low**: Extend established patterns, familiar tech, clear scope, minimal integration
|
|
138
|
+
|
|
139
|
+
## Recommendations for Design Phase
|
|
140
|
+
|
|
141
|
+
### Preferred Approach
|
|
142
|
+
|
|
143
|
+
**Recommended Option**: [A / B / C]
|
|
144
|
+
|
|
145
|
+
**Rationale**:
|
|
146
|
+
-
|
|
147
|
+
|
|
148
|
+
### Key Decisions Required
|
|
149
|
+
|
|
150
|
+
1.
|
|
151
|
+
2.
|
|
152
|
+
3.
|
|
153
|
+
|
|
154
|
+
### Research Items to Carry Forward
|
|
155
|
+
|
|
156
|
+
| Item | Priority | Reason |
|
|
157
|
+
|------|----------|--------|
|
|
158
|
+
| | High / Medium / Low | |
|
|
159
|
+
|
|
160
|
+
## Out of Scope
|
|
161
|
+
|
|
162
|
+
Items explicitly deferred to design phase:
|
|
163
|
+
-
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: validate-gap-agent
|
|
3
3
|
description: Analyze implementation gap between requirements and existing codebase
|
|
4
|
-
tools: Read, Grep, Glob, WebSearch, WebFetch
|
|
4
|
+
tools: Read, Write, Edit, Grep, Glob, WebSearch, WebFetch
|
|
5
5
|
model: inherit
|
|
6
6
|
color: yellow
|
|
7
7
|
---
|
|
@@ -49,6 +49,7 @@ Analyze implementation gap for feature based on approved requirements and existi
|
|
|
49
49
|
|
|
50
50
|
2. **Read Analysis Guidelines**:
|
|
51
51
|
- Read `.red64/settings/rules/gap-analysis.md` for comprehensive analysis framework
|
|
52
|
+
- Read `.red64/settings/templates/specs/gap-analysis.md` for document structure
|
|
52
53
|
|
|
53
54
|
3. **Execute Gap Analysis**:
|
|
54
55
|
- Follow gap-analysis.md framework for thorough investigation
|
|
@@ -57,11 +58,15 @@ Analyze implementation gap for feature based on approved requirements and existi
|
|
|
57
58
|
- Evaluate multiple implementation approaches (extend/new/hybrid)
|
|
58
59
|
- Use language specified in spec.json for output
|
|
59
60
|
|
|
60
|
-
4. **
|
|
61
|
-
-
|
|
61
|
+
4. **Write Analysis Document**:
|
|
62
|
+
- **Write gap analysis to `.red64/specs/{feature}/gap-analysis.md`** using the template structure
|
|
63
|
+
- Include: Requirement-to-Asset Map, Options A/B/C, Effort/Risk assessments, Recommendations
|
|
62
64
|
- Present multiple viable options with trade-offs
|
|
63
65
|
- Flag areas requiring further research
|
|
64
66
|
|
|
67
|
+
5. **Update Metadata**:
|
|
68
|
+
- Edit `.red64/specs/{feature}/spec.json` to set `phase: "gap-analyzed"` if needed
|
|
69
|
+
|
|
65
70
|
## Important Constraints
|
|
66
71
|
- **Information over Decisions**: Provide analysis and options, not final implementation choices
|
|
67
72
|
- **Multiple Options**: Present viable alternatives when applicable
|
|
@@ -69,22 +74,23 @@ Analyze implementation gap for feature based on approved requirements and existi
|
|
|
69
74
|
- **Explicit Gaps**: Clearly flag areas needing research or investigation
|
|
70
75
|
|
|
71
76
|
## Tool Guidance
|
|
72
|
-
- **Read first**: Load all context (spec, steering, rules) before analysis
|
|
77
|
+
- **Read first**: Load all context (spec, steering, rules, templates) before analysis
|
|
73
78
|
- **Grep extensively**: Search codebase for patterns, conventions, and integration points
|
|
74
79
|
- **WebSearch/WebFetch**: Research external dependencies and best practices when needed
|
|
75
|
-
- **Write last**:
|
|
80
|
+
- **Write last**: Write gap-analysis.md only after complete investigation
|
|
76
81
|
|
|
77
82
|
## Output Description
|
|
78
83
|
Provide output in the language specified in spec.json with:
|
|
79
84
|
|
|
80
85
|
1. **Analysis Summary**: Brief overview (3-5 bullets) of scope, challenges, and recommendations
|
|
81
|
-
2. **Document Status**: Confirm analysis
|
|
86
|
+
2. **Document Status**: Confirm gap-analysis.md was created at `.red64/specs/{feature}/gap-analysis.md`
|
|
82
87
|
3. **Next Steps**: Guide user on proceeding to design phase
|
|
83
88
|
|
|
84
89
|
**Format Requirements**:
|
|
85
90
|
- Use Markdown headings for clarity
|
|
86
91
|
- Keep summary concise (under 300 words)
|
|
87
|
-
-
|
|
92
|
+
- Include the full path to the generated gap-analysis.md file
|
|
93
|
+
- Detailed analysis is in the generated document
|
|
88
94
|
|
|
89
95
|
## Safety & Fallback
|
|
90
96
|
|
|
@@ -35,6 +35,10 @@ File patterns to read:
|
|
|
35
35
|
- .red64/specs/$1/requirements.md
|
|
36
36
|
- .red64/steering/*.md
|
|
37
37
|
- .red64/settings/rules/gap-analysis.md
|
|
38
|
+
- .red64/settings/templates/specs/gap-analysis.md
|
|
39
|
+
|
|
40
|
+
Output:
|
|
41
|
+
- Write gap analysis document to: .red64/specs/$1/gap-analysis.md
|
|
38
42
|
"""
|
|
39
43
|
)
|
|
40
44
|
```
|