maestro-flow 0.4.15 → 0.4.16
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/.agents/skills/maestro/SKILL.md +17 -17
- package/.agents/skills/maestro-plan/SKILL.md +10 -9
- package/.agents/skills/maestro-ralph/SKILL.md +21 -17
- package/.agents/skills/maestro-ralph-execute/SKILL.md +54 -71
- package/.agents/skills/manage-knowledge-audit/SKILL.md +90 -0
- package/.agy/skills/maestro/SKILL.md +17 -17
- package/.agy/skills/maestro-plan/SKILL.md +10 -9
- package/.agy/skills/maestro-ralph/SKILL.md +21 -17
- package/.agy/skills/maestro-ralph-execute/SKILL.md +54 -71
- package/.agy/skills/manage-knowledge-audit/SKILL.md +90 -0
- package/.claude/commands/maestro-plan.md +10 -9
- package/.claude/commands/maestro-ralph-execute.md +54 -71
- package/.claude/commands/maestro-ralph.md +21 -17
- package/.claude/commands/maestro.md +17 -17
- package/.claude/commands/manage-knowledge-audit.md +88 -0
- package/dist/src/cli.js +1 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/font-guide.d.ts +13 -0
- package/dist/src/commands/font-guide.d.ts.map +1 -0
- package/dist/src/commands/font-guide.js +114 -0
- package/dist/src/commands/font-guide.js.map +1 -0
- package/dist/src/commands/install.d.ts.map +1 -1
- package/dist/src/commands/install.js +5 -0
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/ralph.d.ts +6 -0
- package/dist/src/commands/ralph.d.ts.map +1 -0
- package/dist/src/commands/ralph.js +133 -0
- package/dist/src/commands/ralph.js.map +1 -0
- package/dist/src/core/manifest.d.ts +2 -0
- package/dist/src/core/manifest.d.ts.map +1 -1
- package/dist/src/core/manifest.js.map +1 -1
- package/dist/src/hooks/statusline.d.ts.map +1 -1
- package/dist/src/hooks/statusline.js +189 -81
- package/dist/src/hooks/statusline.js.map +1 -1
- package/dist/src/ralph/cmd-check.d.ts +9 -0
- package/dist/src/ralph/cmd-check.d.ts.map +1 -0
- package/dist/src/ralph/cmd-check.js +53 -0
- package/dist/src/ralph/cmd-check.js.map +1 -0
- package/dist/src/ralph/cmd-complete.d.ts +10 -0
- package/dist/src/ralph/cmd-complete.d.ts.map +1 -0
- package/dist/src/ralph/cmd-complete.js +91 -0
- package/dist/src/ralph/cmd-complete.js.map +1 -0
- package/dist/src/ralph/cmd-next.d.ts +5 -0
- package/dist/src/ralph/cmd-next.d.ts.map +1 -0
- package/dist/src/ralph/cmd-next.js +158 -0
- package/dist/src/ralph/cmd-next.js.map +1 -0
- package/dist/src/ralph/cmd-session.d.ts +5 -0
- package/dist/src/ralph/cmd-session.d.ts.map +1 -0
- package/dist/src/ralph/cmd-session.js +52 -0
- package/dist/src/ralph/cmd-session.js.map +1 -0
- package/dist/src/ralph/cmd-skills.d.ts +6 -0
- package/dist/src/ralph/cmd-skills.d.ts.map +1 -0
- package/dist/src/ralph/cmd-skills.js +55 -0
- package/dist/src/ralph/cmd-skills.js.map +1 -0
- package/dist/src/ralph/skill-resolver.d.ts +40 -0
- package/dist/src/ralph/skill-resolver.d.ts.map +1 -0
- package/dist/src/ralph/skill-resolver.js +162 -0
- package/dist/src/ralph/skill-resolver.js.map +1 -0
- package/dist/src/ralph/skill-scanner.d.ts +15 -0
- package/dist/src/ralph/skill-scanner.d.ts.map +1 -0
- package/dist/src/ralph/skill-scanner.js +122 -0
- package/dist/src/ralph/skill-scanner.js.map +1 -0
- package/dist/src/ralph/status-checker.d.ts +7 -0
- package/dist/src/ralph/status-checker.d.ts.map +1 -0
- package/dist/src/ralph/status-checker.js +139 -0
- package/dist/src/ralph/status-checker.js.map +1 -0
- package/dist/src/ralph/status-schema.d.ts +94 -0
- package/dist/src/ralph/status-schema.d.ts.map +1 -0
- package/dist/src/ralph/status-schema.js +9 -0
- package/dist/src/ralph/status-schema.js.map +1 -0
- package/dist/src/ralph/status-store.d.ts +20 -0
- package/dist/src/ralph/status-store.d.ts.map +1 -0
- package/dist/src/ralph/status-store.js +70 -0
- package/dist/src/ralph/status-store.js.map +1 -0
- package/dist/src/tui/install-ui/ExecutionView.d.ts.map +1 -1
- package/dist/src/tui/install-ui/ExecutionView.js +1 -0
- package/dist/src/tui/install-ui/ExecutionView.js.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallExecution.js +2 -0
- package/dist/src/tui/install-ui/InstallExecution.js.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallFlow.js +28 -14
- package/dist/src/tui/install-ui/InstallFlow.js.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.d.ts.map +1 -1
- package/dist/src/tui/install-ui/InstallResult.js +1 -1
- package/dist/src/tui/install-ui/InstallResult.js.map +1 -1
- package/dist/src/utils/update-notices.js +12 -0
- package/dist/src/utils/update-notices.js.map +1 -1
- package/package.json +1 -1
- package/workflows/knowledge-audit.md +358 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface ScannedSkill {
|
|
2
|
+
type: 'command' | 'skill';
|
|
3
|
+
scope: 'global' | 'project';
|
|
4
|
+
name: string;
|
|
5
|
+
filePath: string;
|
|
6
|
+
description: string;
|
|
7
|
+
argumentHint: string;
|
|
8
|
+
requiredCount: number;
|
|
9
|
+
deferredCount: number;
|
|
10
|
+
missingRequired: string[];
|
|
11
|
+
}
|
|
12
|
+
export declare function scanAllSkills(workflowRoot?: string): ScannedSkill[];
|
|
13
|
+
/** Look up a single skill/command by name. Returns null if not found. */
|
|
14
|
+
export declare function findSkill(name: string, type?: 'command' | 'skill'): ScannedSkill | null;
|
|
15
|
+
//# sourceMappingURL=skill-scanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-scanner.d.ts","sourceRoot":"","sources":["../../../src/ralph/skill-scanner.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAC1B,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AA0DD,wBAAgB,aAAa,CAAC,YAAY,GAAE,MAA+B,GAAG,YAAY,EAAE,CA4C3F;AAED,yEAAyE;AACzE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,GAAG,IAAI,CAGvF"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Skill scanner — discovers commands + skills (global + project).
|
|
3
|
+
//
|
|
4
|
+
// Sources (project overrides global by `name`):
|
|
5
|
+
// - <cwd>/.claude/commands/*.md type: command, scope: project
|
|
6
|
+
// - ~/.claude/commands/*.md type: command, scope: global
|
|
7
|
+
// - <cwd>/.claude/skills/*/SKILL.md type: skill, scope: project
|
|
8
|
+
// - ~/.claude/skills/*/SKILL.md type: skill, scope: global
|
|
9
|
+
//
|
|
10
|
+
// Agents are explicitly NOT scanned.
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
import { existsSync, readdirSync, statSync } from 'node:fs';
|
|
13
|
+
import { homedir } from 'node:os';
|
|
14
|
+
import { join, resolve } from 'node:path';
|
|
15
|
+
import { parseSkillManifest } from './skill-resolver.js';
|
|
16
|
+
function collectCommandFiles(dir) {
|
|
17
|
+
if (!existsSync(dir))
|
|
18
|
+
return [];
|
|
19
|
+
const out = [];
|
|
20
|
+
for (const name of readdirSync(dir)) {
|
|
21
|
+
if (!name.endsWith('.md'))
|
|
22
|
+
continue;
|
|
23
|
+
const full = join(dir, name);
|
|
24
|
+
try {
|
|
25
|
+
if (statSync(full).isFile())
|
|
26
|
+
out.push(full);
|
|
27
|
+
}
|
|
28
|
+
catch { /* ignore */ }
|
|
29
|
+
}
|
|
30
|
+
return out;
|
|
31
|
+
}
|
|
32
|
+
function collectSkillFiles(dir) {
|
|
33
|
+
if (!existsSync(dir))
|
|
34
|
+
return [];
|
|
35
|
+
const out = [];
|
|
36
|
+
for (const name of readdirSync(dir)) {
|
|
37
|
+
const skillFile = join(dir, name, 'SKILL.md');
|
|
38
|
+
try {
|
|
39
|
+
if (existsSync(skillFile) && statSync(skillFile).isFile())
|
|
40
|
+
out.push(skillFile);
|
|
41
|
+
}
|
|
42
|
+
catch { /* ignore */ }
|
|
43
|
+
}
|
|
44
|
+
return out;
|
|
45
|
+
}
|
|
46
|
+
function scanOne(filePath, type, scope, fallbackName) {
|
|
47
|
+
try {
|
|
48
|
+
const m = parseSkillManifest(filePath);
|
|
49
|
+
const fmName = (m.frontmatter.name ?? '').toString().trim();
|
|
50
|
+
const description = (m.frontmatter.description ?? '').toString();
|
|
51
|
+
const argumentHint = (m.frontmatter['argument-hint'] ?? '').toString();
|
|
52
|
+
return {
|
|
53
|
+
type,
|
|
54
|
+
scope,
|
|
55
|
+
name: fmName || fallbackName,
|
|
56
|
+
filePath,
|
|
57
|
+
description,
|
|
58
|
+
argumentHint,
|
|
59
|
+
requiredCount: m.requiredPaths.length,
|
|
60
|
+
deferredCount: m.deferredPaths.length,
|
|
61
|
+
missingRequired: m.missingRequired,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
catch {
|
|
65
|
+
return {
|
|
66
|
+
type, scope, name: fallbackName, filePath,
|
|
67
|
+
description: '(parse error)', argumentHint: '',
|
|
68
|
+
requiredCount: 0, deferredCount: 0, missingRequired: [],
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
export function scanAllSkills(workflowRoot = resolve(process.cwd())) {
|
|
73
|
+
const home = homedir();
|
|
74
|
+
const sources = [
|
|
75
|
+
{
|
|
76
|
+
files: collectCommandFiles(join(home, '.claude', 'commands')),
|
|
77
|
+
type: 'command', scope: 'global',
|
|
78
|
+
nameFn: p => p.split(/[\\/]/).pop().replace(/\.md$/, ''),
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
files: collectCommandFiles(join(workflowRoot, '.claude', 'commands')),
|
|
82
|
+
type: 'command', scope: 'project',
|
|
83
|
+
nameFn: p => p.split(/[\\/]/).pop().replace(/\.md$/, ''),
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
files: collectSkillFiles(join(home, '.claude', 'skills')),
|
|
87
|
+
type: 'skill', scope: 'global',
|
|
88
|
+
nameFn: p => p.split(/[\\/]/).slice(-2, -1)[0],
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
files: collectSkillFiles(join(workflowRoot, '.claude', 'skills')),
|
|
92
|
+
type: 'skill', scope: 'project',
|
|
93
|
+
nameFn: p => p.split(/[\\/]/).slice(-2, -1)[0],
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
// Project overrides global per (type, name). Build a Map keyed by `${type}::${name}`.
|
|
97
|
+
const merged = new Map();
|
|
98
|
+
for (const src of sources) {
|
|
99
|
+
for (const file of src.files) {
|
|
100
|
+
const entry = scanOne(file, src.type, src.scope, src.nameFn(file));
|
|
101
|
+
const key = `${entry.type}::${entry.name}`;
|
|
102
|
+
const existing = merged.get(key);
|
|
103
|
+
// Project entries always replace global entries.
|
|
104
|
+
if (!existing || (existing.scope === 'global' && entry.scope === 'project')) {
|
|
105
|
+
merged.set(key, entry);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return Array.from(merged.values()).sort((a, b) => {
|
|
110
|
+
if (a.type !== b.type)
|
|
111
|
+
return a.type.localeCompare(b.type);
|
|
112
|
+
if (a.scope !== b.scope)
|
|
113
|
+
return a.scope.localeCompare(b.scope);
|
|
114
|
+
return a.name.localeCompare(b.name);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
/** Look up a single skill/command by name. Returns null if not found. */
|
|
118
|
+
export function findSkill(name, type) {
|
|
119
|
+
const all = scanAllSkills();
|
|
120
|
+
return all.find(s => s.name === name && (!type || s.type === type)) ?? null;
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=skill-scanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-scanner.js","sourceRoot":"","sources":["../../../src/ralph/skill-scanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CheckFinding, RalphSession } from './status-schema.js';
|
|
2
|
+
export declare function checkStatus(session: RalphSession): CheckFinding[];
|
|
3
|
+
export declare function summarize(findings: CheckFinding[]): {
|
|
4
|
+
errors: number;
|
|
5
|
+
warnings: number;
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=status-checker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-checker.d.ts","sourceRoot":"","sources":["../../../src/ralph/status-checker.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMrE,wBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,EAAE,CAyHjE;AAED,wBAAgB,SAAS,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAKxF"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Status checker — validates ralph status.json for structural + reference
|
|
3
|
+
// consistency. Two severity levels:
|
|
4
|
+
// E (error) — refuses to proceed; ralph next/complete will bail
|
|
5
|
+
// W (warning) — surfaced to user but non-blocking
|
|
6
|
+
//
|
|
7
|
+
// Returns a flat finding list; callers format/report. No fs writes.
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
import { existsSync } from 'node:fs';
|
|
10
|
+
import { normalizeStoredPath, parseSkillManifest } from './skill-resolver.js';
|
|
11
|
+
const REQUIRED_SESSION_FIELDS = ['session_id', 'status', 'steps'];
|
|
12
|
+
const REQUIRED_STEP_FIELDS = ['index', 'stage', 'status'];
|
|
13
|
+
export function checkStatus(session) {
|
|
14
|
+
const findings = [];
|
|
15
|
+
// 1. Schema completeness — session-level
|
|
16
|
+
for (const f of REQUIRED_SESSION_FIELDS) {
|
|
17
|
+
if (!(f in session)) {
|
|
18
|
+
findings.push({ level: 'E', code: 'E010', message: `session is missing required field: ${f}` });
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
if (!Array.isArray(session.steps)) {
|
|
22
|
+
findings.push({ level: 'E', code: 'E010', message: 'session.steps is not an array' });
|
|
23
|
+
return findings; // can't continue
|
|
24
|
+
}
|
|
25
|
+
// 2. Schema completeness — step-level + index continuity
|
|
26
|
+
for (let i = 0; i < session.steps.length; i++) {
|
|
27
|
+
const step = session.steps[i];
|
|
28
|
+
for (const f of REQUIRED_STEP_FIELDS) {
|
|
29
|
+
if (!(f in step)) {
|
|
30
|
+
findings.push({ level: 'E', code: 'E010', message: `step is missing required field: ${f}`, step_index: i });
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (step.index !== i) {
|
|
34
|
+
findings.push({ level: 'E', code: 'E010', message: `step.index ${step.index} != position ${i}`, step_index: i });
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// 3. active_step_index consistency
|
|
38
|
+
const idx = session.active_step_index;
|
|
39
|
+
if (idx !== null && idx !== undefined) {
|
|
40
|
+
if (idx < 0 || idx >= session.steps.length) {
|
|
41
|
+
findings.push({ level: 'E', code: 'E008', message: `active_step_index ${idx} out of range` });
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
const step = session.steps[idx];
|
|
45
|
+
if (step.status === 'completed') {
|
|
46
|
+
findings.push({
|
|
47
|
+
level: 'W', code: 'W005',
|
|
48
|
+
message: `active_step_index points to a completed step; next will auto-clear`,
|
|
49
|
+
step_index: idx,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
else if (step.status !== 'running' && step.status !== 'pending') {
|
|
53
|
+
findings.push({
|
|
54
|
+
level: 'E', code: 'E008',
|
|
55
|
+
message: `active_step_index step.status is "${step.status}"; expected running|pending`,
|
|
56
|
+
step_index: idx,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// 4. Completion contract — completed steps must be confirmed
|
|
62
|
+
for (const step of session.steps) {
|
|
63
|
+
if (step.status === 'completed' && !step.completion_confirmed) {
|
|
64
|
+
findings.push({
|
|
65
|
+
level: 'W', code: 'W006',
|
|
66
|
+
message: `step.status=completed but completion_confirmed=false`,
|
|
67
|
+
step_index: step.index,
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
// 5/6/7. Per-step command_path + required_reading + skill name
|
|
72
|
+
for (const step of session.steps) {
|
|
73
|
+
if (step.decision)
|
|
74
|
+
continue; // decision nodes skip
|
|
75
|
+
if (step.status === 'skipped')
|
|
76
|
+
continue; // skipped steps don't need command
|
|
77
|
+
if (!step.command_path) {
|
|
78
|
+
findings.push({
|
|
79
|
+
level: 'E', code: 'E006',
|
|
80
|
+
message: `execution step has no command_path (skill="${step.skill}")`,
|
|
81
|
+
step_index: step.index,
|
|
82
|
+
});
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
const resolvedPath = normalizeStoredPath(step.command_path);
|
|
86
|
+
if (!existsSync(resolvedPath)) {
|
|
87
|
+
findings.push({
|
|
88
|
+
level: 'E', code: 'E006',
|
|
89
|
+
message: `command_path missing on disk: ${step.command_path}`,
|
|
90
|
+
step_index: step.index,
|
|
91
|
+
});
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
try {
|
|
95
|
+
const m = parseSkillManifest(resolvedPath);
|
|
96
|
+
if (m.missingRequired.length > 0) {
|
|
97
|
+
for (const p of m.missingRequired) {
|
|
98
|
+
findings.push({
|
|
99
|
+
level: 'E', code: 'E007',
|
|
100
|
+
message: `required_reading missing: ${p}`,
|
|
101
|
+
step_index: step.index,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
const fmName = (m.frontmatter.name ?? '').toString();
|
|
106
|
+
if (step.skill && fmName && fmName !== step.skill) {
|
|
107
|
+
findings.push({
|
|
108
|
+
level: 'W', code: 'W007',
|
|
109
|
+
message: `step.skill "${step.skill}" != frontmatter.name "${fmName}"`,
|
|
110
|
+
step_index: step.index,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
catch (err) {
|
|
115
|
+
findings.push({
|
|
116
|
+
level: 'E', code: 'E010',
|
|
117
|
+
message: `failed to parse command_path manifest: ${err instanceof Error ? err.message : String(err)}`,
|
|
118
|
+
step_index: step.index,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
// 8. Chain terminus
|
|
123
|
+
const last = session.steps[session.steps.length - 1];
|
|
124
|
+
if (last && !last.decision && last.skill && last.skill !== 'maestro-milestone-complete') {
|
|
125
|
+
findings.push({
|
|
126
|
+
level: 'W', code: 'W008',
|
|
127
|
+
message: `chain does not terminate with milestone-complete (last skill: ${last.skill})`,
|
|
128
|
+
step_index: last.index,
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
return findings;
|
|
132
|
+
}
|
|
133
|
+
export function summarize(findings) {
|
|
134
|
+
return {
|
|
135
|
+
errors: findings.filter(f => f.level === 'E').length,
|
|
136
|
+
warnings: findings.filter(f => f.level === 'W').length,
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=status-checker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-checker.js","sourceRoot":"","sources":["../../../src/ralph/status-checker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
export declare const RALPH_PROTOCOL_VERSION = "1";
|
|
2
|
+
export type StepStatus = 'pending' | 'running' | 'completed' | 'skipped' | 'failed';
|
|
3
|
+
export type CompletionStatus = 'DONE' | 'DONE_WITH_CONCERNS' | 'NEEDS_RETRY' | 'BLOCKED';
|
|
4
|
+
export type SessionStatus = 'running' | 'paused' | 'completed' | 'failed';
|
|
5
|
+
export type CommandScope = 'global' | 'project' | 'missing' | null;
|
|
6
|
+
export interface RalphStepLoad {
|
|
7
|
+
loaded_at: string | null;
|
|
8
|
+
required_files: string[];
|
|
9
|
+
deferred_files: string[];
|
|
10
|
+
resolve_version: string;
|
|
11
|
+
}
|
|
12
|
+
export interface RalphStep {
|
|
13
|
+
index: number;
|
|
14
|
+
skill: string;
|
|
15
|
+
args: string;
|
|
16
|
+
stage: string;
|
|
17
|
+
scope?: 'phase' | 'standalone' | 'milestone' | null;
|
|
18
|
+
decision: string | null;
|
|
19
|
+
retry_count?: number;
|
|
20
|
+
max_retries?: number;
|
|
21
|
+
command_scope: CommandScope;
|
|
22
|
+
command_path: string | null;
|
|
23
|
+
milestone_id?: string | null;
|
|
24
|
+
source_artifact_ref?: string | null;
|
|
25
|
+
status: StepStatus;
|
|
26
|
+
goal_ref?: string | null;
|
|
27
|
+
completion_confirmed: boolean;
|
|
28
|
+
completion_status: CompletionStatus | null;
|
|
29
|
+
completion_evidence: string | string[] | null;
|
|
30
|
+
completed_at: string | null;
|
|
31
|
+
concerns?: string | null;
|
|
32
|
+
retried?: boolean;
|
|
33
|
+
deferred_reads?: string[];
|
|
34
|
+
load?: RalphStepLoad;
|
|
35
|
+
}
|
|
36
|
+
export interface RalphTaskDecompositionItem {
|
|
37
|
+
id: string;
|
|
38
|
+
goal: string;
|
|
39
|
+
boundary?: string;
|
|
40
|
+
done_when?: string;
|
|
41
|
+
evidence?: string;
|
|
42
|
+
lifecycle?: string[];
|
|
43
|
+
status: 'pending' | 'done';
|
|
44
|
+
completion_confirmed?: boolean;
|
|
45
|
+
completed_at?: string | null;
|
|
46
|
+
}
|
|
47
|
+
export interface RalphSessionContext {
|
|
48
|
+
issue_id?: string | null;
|
|
49
|
+
scratch_dir?: string | null;
|
|
50
|
+
plan_dir?: string | null;
|
|
51
|
+
analysis_dir?: string | null;
|
|
52
|
+
brainstorm_dir?: string | null;
|
|
53
|
+
blueprint_dir?: string | null;
|
|
54
|
+
}
|
|
55
|
+
export interface RalphSession {
|
|
56
|
+
session_id: string;
|
|
57
|
+
source: 'ralph' | 'maestro' | string;
|
|
58
|
+
status: SessionStatus;
|
|
59
|
+
intent: string;
|
|
60
|
+
lifecycle_position: string;
|
|
61
|
+
phase: number | null;
|
|
62
|
+
phase_is_new?: boolean;
|
|
63
|
+
milestone: string;
|
|
64
|
+
auto_mode?: boolean;
|
|
65
|
+
quality_mode?: 'full' | 'standard' | 'quick';
|
|
66
|
+
planning_mode?: 'unified' | 'independent';
|
|
67
|
+
scope_verdict?: 'large' | 'medium' | 'small' | 'unknown' | null;
|
|
68
|
+
analyze_macro_id?: string | null;
|
|
69
|
+
blueprint_id?: string | null;
|
|
70
|
+
cli_tool?: string;
|
|
71
|
+
passed_gates?: string[];
|
|
72
|
+
context?: RalphSessionContext;
|
|
73
|
+
steps: RalphStep[];
|
|
74
|
+
waves?: unknown[];
|
|
75
|
+
current_step?: number;
|
|
76
|
+
ralph_protocol_version?: string;
|
|
77
|
+
active_step_index?: number | null;
|
|
78
|
+
boundary_contract?: {
|
|
79
|
+
in_scope?: string[];
|
|
80
|
+
out_of_scope?: string[];
|
|
81
|
+
constraints?: string[];
|
|
82
|
+
definition_of_done?: string;
|
|
83
|
+
};
|
|
84
|
+
execution_criteria?: string[];
|
|
85
|
+
task_decomposition?: RalphTaskDecompositionItem[];
|
|
86
|
+
task_decomposition_all_done?: boolean;
|
|
87
|
+
}
|
|
88
|
+
export interface CheckFinding {
|
|
89
|
+
level: 'E' | 'W';
|
|
90
|
+
code: string;
|
|
91
|
+
message: string;
|
|
92
|
+
step_index?: number;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=status-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-schema.d.ts","sourceRoot":"","sources":["../../../src/ralph/status-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Ralph status.json schema — TypeScript shape only.
|
|
3
|
+
//
|
|
4
|
+
// Source of truth: `.workflow/.maestro/ralph-{ts}/status.json`.
|
|
5
|
+
// All new fields are additive — legacy sessions (without `ralph_protocol_version`)
|
|
6
|
+
// fall back to pre-CLI ralph-execute inline logic.
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
export const RALPH_PROTOCOL_VERSION = '1';
|
|
9
|
+
//# sourceMappingURL=status-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-schema.js","sourceRoot":"","sources":["../../../src/ralph/status-schema.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,oDAAoD;AACpD,EAAE;AACF,gEAAgE;AAChE,mFAAmF;AACnF,mDAAmD;AACnD,8EAA8E;AAE9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { RalphSession } from './status-schema.js';
|
|
2
|
+
export interface ResolvedSession {
|
|
3
|
+
sessionId: string;
|
|
4
|
+
sessionDir: string;
|
|
5
|
+
statusPath: string;
|
|
6
|
+
data: RalphSession;
|
|
7
|
+
}
|
|
8
|
+
/** List all ralph-* session directories sorted by mtime DESC. */
|
|
9
|
+
export declare function listRalphSessions(workflowRoot: string): string[];
|
|
10
|
+
/**
|
|
11
|
+
* Resolve a ralph session: by explicit id, or the latest running one.
|
|
12
|
+
* Returns null when nothing matches — callers decide how to surface.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveSession(workflowRoot: string, sessionId?: string, opts?: {
|
|
15
|
+
requireRunning?: boolean;
|
|
16
|
+
}): ResolvedSession | null;
|
|
17
|
+
/** Atomic write: stage to `.tmp`, then rename. */
|
|
18
|
+
export declare function writeStatus(statusPath: string, data: RalphSession): void;
|
|
19
|
+
export declare function workflowRoot(): string;
|
|
20
|
+
//# sourceMappingURL=status-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-store.d.ts","sourceRoot":"","sources":["../../../src/ralph/status-store.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,YAAY,CAAC;CACpB;AAMD,iEAAiE;AACjE,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAchE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GACtC,eAAe,GAAG,IAAI,CAkBxB;AAOD,kDAAkD;AAClD,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAIxE;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
// ---------------------------------------------------------------------------
|
|
2
|
+
// Status store — locates ralph session dir and reads/writes status.json.
|
|
3
|
+
// Atomic write via `.tmp` + rename so a crash never leaves a partial file.
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
import { existsSync, readFileSync, readdirSync, renameSync, statSync, writeFileSync } from 'node:fs';
|
|
6
|
+
import { join, resolve } from 'node:path';
|
|
7
|
+
function ralphRoot(workflowRoot) {
|
|
8
|
+
return join(workflowRoot, '.workflow', '.maestro');
|
|
9
|
+
}
|
|
10
|
+
/** List all ralph-* session directories sorted by mtime DESC. */
|
|
11
|
+
export function listRalphSessions(workflowRoot) {
|
|
12
|
+
const root = ralphRoot(workflowRoot);
|
|
13
|
+
if (!existsSync(root))
|
|
14
|
+
return [];
|
|
15
|
+
const entries = [];
|
|
16
|
+
for (const name of readdirSync(root)) {
|
|
17
|
+
if (!name.startsWith('ralph-'))
|
|
18
|
+
continue;
|
|
19
|
+
const full = join(root, name);
|
|
20
|
+
try {
|
|
21
|
+
const st = statSync(full);
|
|
22
|
+
if (st.isDirectory())
|
|
23
|
+
entries.push({ name, mtimeMs: st.mtimeMs });
|
|
24
|
+
}
|
|
25
|
+
catch { /* ignore */ }
|
|
26
|
+
}
|
|
27
|
+
entries.sort((a, b) => b.mtimeMs - a.mtimeMs);
|
|
28
|
+
return entries.map(e => e.name);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Resolve a ralph session: by explicit id, or the latest running one.
|
|
32
|
+
* Returns null when nothing matches — callers decide how to surface.
|
|
33
|
+
*/
|
|
34
|
+
export function resolveSession(workflowRoot, sessionId, opts = {}) {
|
|
35
|
+
const root = ralphRoot(workflowRoot);
|
|
36
|
+
if (sessionId) {
|
|
37
|
+
const statusPath = join(root, sessionId, 'status.json');
|
|
38
|
+
if (!existsSync(statusPath))
|
|
39
|
+
return null;
|
|
40
|
+
const data = readStatus(statusPath);
|
|
41
|
+
return { sessionId, sessionDir: join(root, sessionId), statusPath, data };
|
|
42
|
+
}
|
|
43
|
+
for (const name of listRalphSessions(workflowRoot)) {
|
|
44
|
+
const statusPath = join(root, name, 'status.json');
|
|
45
|
+
if (!existsSync(statusPath))
|
|
46
|
+
continue;
|
|
47
|
+
try {
|
|
48
|
+
const data = readStatus(statusPath);
|
|
49
|
+
if (opts.requireRunning && data.status !== 'running')
|
|
50
|
+
continue;
|
|
51
|
+
return { sessionId: name, sessionDir: join(root, name), statusPath, data };
|
|
52
|
+
}
|
|
53
|
+
catch { /* skip corrupt */ }
|
|
54
|
+
}
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
function readStatus(statusPath) {
|
|
58
|
+
const raw = readFileSync(statusPath, 'utf-8');
|
|
59
|
+
return JSON.parse(raw);
|
|
60
|
+
}
|
|
61
|
+
/** Atomic write: stage to `.tmp`, then rename. */
|
|
62
|
+
export function writeStatus(statusPath, data) {
|
|
63
|
+
const tmp = `${statusPath}.tmp`;
|
|
64
|
+
writeFileSync(tmp, JSON.stringify(data, null, 2), 'utf-8');
|
|
65
|
+
renameSync(tmp, statusPath);
|
|
66
|
+
}
|
|
67
|
+
export function workflowRoot() {
|
|
68
|
+
return resolve(process.cwd());
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=status-store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-store.js","sourceRoot":"","sources":["../../../src/ralph/status-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionView.d.ts","sourceRoot":"","sources":["../../../../src/tui/install-ui/ExecutionView.tsx"],"names":[],"mappings":"AAQA,OAAO,EASL,KAAK,gBAAgB,EAEtB,MAAM,mCAAmC,CAAC;AAU3C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMpE,UAAU,kBAAkB;IAC1B,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,MAAM,EACN,OAAO,EACP,OAAO,EACP,UAAU,GACX,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"ExecutionView.d.ts","sourceRoot":"","sources":["../../../../src/tui/install-ui/ExecutionView.tsx"],"names":[],"mappings":"AAQA,OAAO,EASL,KAAK,gBAAgB,EAEtB,MAAM,mCAAmC,CAAC;AAU3C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMpE,UAAU,kBAAkB;IAC1B,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,MAAM,EACN,OAAO,EACP,OAAO,EACP,UAAU,GACX,EAAE,kBAAkB,2CAyMpB"}
|
|
@@ -123,6 +123,7 @@ export function ExecutionView({ components, config, pkgRoot, version, onComplete
|
|
|
123
123
|
recordClaudeHooks(manifest, {
|
|
124
124
|
settingsPath: hookRes.settingsPath,
|
|
125
125
|
installed: hookRes.installedHooks,
|
|
126
|
+
level: config.hookLevel,
|
|
126
127
|
});
|
|
127
128
|
}
|
|
128
129
|
// 12. Save manifest
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionView.js","sourceRoot":"","sources":["../../../../src/tui/install-ui/ExecutionView.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ExecutionView.js","sourceRoot":"","sources":["../../../../src/tui/install-ui/ExecutionView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstallExecution.d.ts","sourceRoot":"","sources":["../../../../src/tui/install-ui/InstallExecution.tsx"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAc7D,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"InstallExecution.d.ts","sourceRoot":"","sources":["../../../../src/tui/install-ui/InstallExecution.tsx"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAc7D,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,UAAU,qBAAqB;IAC7B,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACjD;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,qBAAqB,2CA4P/F"}
|
|
@@ -116,6 +116,7 @@ export function InstallExecution({ config, pkgRoot, version, onComplete }) {
|
|
|
116
116
|
recordClaudeHooks(manifest, {
|
|
117
117
|
settingsPath: result.settingsPath,
|
|
118
118
|
installed: result.installedHooks,
|
|
119
|
+
level: config.hookLevel,
|
|
119
120
|
});
|
|
120
121
|
}
|
|
121
122
|
// --- Statusline (opt-in) ---
|
|
@@ -156,6 +157,7 @@ export function InstallExecution({ config, pkgRoot, version, onComplete }) {
|
|
|
156
157
|
recordCodexHooks(manifest, {
|
|
157
158
|
settingsPath: result.settingsPath,
|
|
158
159
|
installed: result.installedHooks,
|
|
160
|
+
level: config.codexHookLevel,
|
|
159
161
|
});
|
|
160
162
|
}
|
|
161
163
|
// --- Codex MCP ---
|