maestro-flow 0.5.34 → 0.5.36
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/agents/cli-explore-agent.md +71 -68
- package/.agents/agents/workflow-analyzer.md +1 -0
- package/.agents/agents/workflow-collab-planner.md +1 -0
- package/.agents/agents/workflow-debugger.md +1 -0
- package/.agents/agents/workflow-executor.md +1 -0
- package/.agents/agents/workflow-planner.md +2 -0
- package/.agents/skills/domain-add/SKILL.md +71 -0
- package/.agents/skills/maestro/SKILL.md +7 -6
- package/.agents/skills/maestro-amend/SKILL.md +0 -2
- package/.agents/skills/maestro-analyze/SKILL.md +9 -0
- package/.agents/skills/maestro-brainstorm/SKILL.md +10 -1
- package/.agents/skills/maestro-collab/SKILL.md +14 -1
- package/.agents/skills/maestro-help/SKILL.md +1 -1
- package/.agents/skills/maestro-help/index/catalog.json +0 -1
- package/.agents/skills/maestro-help/phases/01-parse-intent.md +1 -1
- package/.agents/skills/maestro-next/SKILL.md +15 -4
- package/.agents/skills/maestro-overlay/SKILL.md +4 -3
- package/.agents/skills/maestro-plan/SKILL.md +15 -4
- package/.agents/skills/maestro-ralph/SKILL.md +135 -31
- package/.agents/skills/maestro-ralph-execute/SKILL.md +51 -10
- package/.agents/skills/maestro-tools-register/SKILL.md +0 -6
- package/.agents/skills/maestro-ui-codify/SKILL.md +0 -2
- package/.agents/skills/manage-kg-extractors/SKILL.md +0 -2
- package/.agents/skills/quality-test/SKILL.md +25 -1
- package/.agents/skills/spec-load/SKILL.md +0 -1
- package/.agents/skills/spec-setup/SKILL.md +0 -1
- package/.agents/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
- package/.agents/skills/team-quality-assurance/roles/scout/role.md +15 -11
- package/.agents/skills/team-tech-debt/roles/scanner/role.md +1 -1
- package/.agents/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
- package/.agy/agents/cli-explore-agent.md +71 -68
- package/.agy/agents/workflow-analyzer.md +1 -0
- package/.agy/agents/workflow-collab-planner.md +1 -0
- package/.agy/agents/workflow-debugger.md +1 -0
- package/.agy/agents/workflow-executor.md +1 -0
- package/.agy/agents/workflow-planner.md +2 -0
- package/.agy/skills/domain-add/SKILL.md +68 -0
- package/.agy/skills/maestro/SKILL.md +7 -6
- package/.agy/skills/maestro-amend/SKILL.md +0 -2
- package/.agy/skills/maestro-analyze/SKILL.md +9 -0
- package/.agy/skills/maestro-brainstorm/SKILL.md +10 -1
- package/.agy/skills/maestro-collab/SKILL.md +14 -1
- package/.agy/skills/maestro-help/SKILL.md +1 -1
- package/.agy/skills/maestro-help/index/catalog.json +0 -1
- package/.agy/skills/maestro-help/phases/01-parse-intent.md +1 -1
- package/.agy/skills/maestro-next/SKILL.md +15 -4
- package/.agy/skills/maestro-overlay/SKILL.md +4 -3
- package/.agy/skills/maestro-plan/SKILL.md +15 -4
- package/.agy/skills/maestro-ralph/SKILL.md +135 -31
- package/.agy/skills/maestro-ralph-execute/SKILL.md +51 -10
- package/.agy/skills/maestro-tools-register/SKILL.md +0 -6
- package/.agy/skills/maestro-ui-codify/SKILL.md +0 -2
- package/.agy/skills/manage-kg-extractors/SKILL.md +0 -2
- package/.agy/skills/quality-test/SKILL.md +25 -1
- package/.agy/skills/spec-load/SKILL.md +0 -1
- package/.agy/skills/spec-setup/SKILL.md +0 -1
- package/.agy/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
- package/.agy/skills/team-quality-assurance/roles/scout/role.md +15 -11
- package/.agy/skills/team-tech-debt/roles/scanner/role.md +1 -1
- package/.agy/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
- package/.claude/agents/cli-explore-agent.md +71 -68
- package/.claude/agents/workflow-analyzer.md +1 -0
- package/.claude/agents/workflow-collab-planner.md +1 -0
- package/.claude/agents/workflow-debugger.md +1 -0
- package/.claude/agents/workflow-executor.md +1 -0
- package/.claude/agents/workflow-planner.md +2 -0
- package/.claude/commands/domain-add.md +69 -0
- package/.claude/commands/maestro-amend.md +0 -2
- package/.claude/commands/maestro-analyze.md +9 -0
- package/.claude/commands/maestro-brainstorm.md +10 -1
- package/.claude/commands/maestro-collab.md +14 -1
- package/.claude/commands/maestro-next.md +15 -4
- package/.claude/commands/maestro-overlay.md +4 -3
- package/.claude/commands/maestro-plan.md +15 -4
- package/.claude/commands/maestro-ralph-execute.md +51 -10
- package/.claude/commands/maestro-ralph.md +135 -31
- package/.claude/commands/maestro-tools-register.md +0 -6
- package/.claude/commands/maestro-ui-codify.md +0 -2
- package/.claude/commands/maestro.md +7 -6
- package/.claude/commands/manage-kg-extractors.md +0 -2
- package/.claude/commands/quality-test.md +25 -1
- package/.claude/commands/spec-load.md +0 -1
- package/.claude/commands/spec-setup.md +0 -1
- package/.claude/skills/maestro-help/SKILL.md +1 -1
- package/.claude/skills/maestro-help/index/catalog.json +0 -1
- package/.claude/skills/maestro-help/phases/01-parse-intent.md +1 -1
- package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
- package/.claude/skills/team-quality-assurance/roles/scout/role.md +15 -11
- package/.claude/skills/team-tech-debt/roles/scanner/role.md +1 -1
- package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
- package/.codex/skills/domain-add/SKILL.md +79 -0
- package/.codex/skills/domain-discover/SKILL.md +43 -0
- package/.codex/skills/domain-list/SKILL.md +38 -0
- package/.codex/skills/learn-follow/SKILL.md +0 -3
- package/.codex/skills/learn-investigate/SKILL.md +0 -3
- package/.codex/skills/learn-retro/SKILL.md +0 -2
- package/.codex/skills/maestro/SKILL.md +34 -13
- package/.codex/skills/maestro-amend/SKILL.md +0 -2
- package/.codex/skills/maestro-analyze/SKILL.md +36 -6
- package/.codex/skills/maestro-blueprint/SKILL.md +0 -4
- package/.codex/skills/maestro-brainstorm/SKILL.md +46 -6
- package/.codex/skills/maestro-collab/SKILL.md +14 -1
- package/.codex/skills/maestro-companion/SKILL.md +0 -2
- package/.codex/skills/maestro-execute/SKILL.md +25 -3
- package/.codex/skills/maestro-fork/SKILL.md +0 -2
- package/.codex/skills/maestro-grill/SKILL.md +9 -1
- package/.codex/skills/maestro-next/SKILL.md +12 -5
- package/.codex/skills/maestro-plan/SKILL.md +43 -5
- package/.codex/skills/maestro-ralph/SKILL.md +10 -3
- package/.codex/skills/maestro-ralph-execute/SKILL.md +51 -10
- package/.codex/skills/maestro-roadmap/SKILL.md +30 -3
- package/.codex/skills/manage-wiki/SKILL.md +0 -2
- package/.codex/skills/odyssey-debug/SKILL.md +0 -2
- package/.codex/skills/odyssey-improve/SKILL.md +0 -6
- package/.codex/skills/odyssey-review-test-fix/SKILL.md +0 -3
- package/.codex/skills/odyssey-ui/SKILL.md +0 -3
- package/.codex/skills/quality-review/SKILL.md +9 -0
- package/.codex/skills/spec-setup/SKILL.md +0 -2
- package/.codex/skills/team-coordinate/SKILL.md +0 -3
- package/.codex/skills/team-lifecycle-v4/instructions/agent-instruction.md +0 -2
- package/README.md +28 -5
- package/README.zh-CN.md +28 -5
- package/chains/_intent-map.json +36 -0
- package/chains/blueprint-driven.json +49 -0
- package/chains/grill-driven.json +51 -0
- package/dashboard/dist-server/dashboard/src/server/agents/adapter-factory.js +4 -0
- package/dashboard/dist-server/dashboard/src/server/agents/adapter-factory.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.d.ts +6 -0
- package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.js +36 -0
- package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.d.ts +1 -1
- package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.d.ts +82 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js +444 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js.map +1 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/search.d.ts +47 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js +426 -19
- package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +16 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.d.ts +11 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +492 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +18 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +192 -9
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +42 -0
- package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
- package/dashboard/dist-server/dashboard/src/shared/constants.js +2 -0
- package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
- package/dashboard/dist-server/shared/agent-types.d.ts +1 -1
- package/dashboard/dist-server/src/commands/hooks.d.ts +3 -0
- package/dashboard/dist-server/src/commands/hooks.js +60 -9
- package/dashboard/dist-server/src/commands/hooks.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/extraction/code/code-extractor.js +1 -1
- package/dashboard/dist-server/src/graph/kg/extraction/code/code-extractor.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/extraction/knowledge/domain-extractor.js +4 -2
- package/dashboard/dist-server/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/extraction/knowledge-extractor-registry.js +6 -1
- package/dashboard/dist-server/src/graph/kg/extraction/knowledge-extractor-registry.js.map +1 -1
- package/dashboard/dist-server/src/graph/kg/extraction/orchestrator.js +2 -6
- package/dashboard/dist-server/src/graph/kg/extraction/orchestrator.js.map +1 -1
- package/dashboard/dist-server/src/hooks/session-context.js +37 -1
- package/dashboard/dist-server/src/hooks/session-context.js.map +1 -1
- package/dashboard/dist-server/src/search/daemon.d.ts +42 -0
- package/dashboard/dist-server/src/search/daemon.js +180 -0
- package/dashboard/dist-server/src/search/daemon.js.map +1 -0
- package/dashboard/dist-server/src/tools/domain-loader.d.ts +4 -1
- package/dashboard/dist-server/src/tools/domain-loader.js +56 -25
- package/dashboard/dist-server/src/tools/domain-loader.js.map +1 -1
- package/dashboard/dist-server/src/tools/domain-schema.d.ts +1 -1
- package/dashboard/dist-server/src/tools/domain-schema.js +1 -1
- package/dist/shared/agent-types.d.ts +1 -1
- package/dist/shared/agent-types.d.ts.map +1 -1
- package/dist/src/agents/api-explore/agent-loop.d.ts +14 -0
- package/dist/src/agents/api-explore/agent-loop.d.ts.map +1 -0
- package/dist/src/agents/api-explore/agent-loop.js +86 -0
- package/dist/src/agents/api-explore/agent-loop.js.map +1 -0
- package/dist/src/agents/api-explore/config.d.ts +42 -0
- package/dist/src/agents/api-explore/config.d.ts.map +1 -0
- package/dist/src/agents/api-explore/config.js +99 -0
- package/dist/src/agents/api-explore/config.js.map +1 -0
- package/dist/src/agents/api-explore/index.d.ts +2 -0
- package/dist/src/agents/api-explore/index.d.ts.map +1 -0
- package/dist/src/agents/api-explore/index.js +102 -0
- package/dist/src/agents/api-explore/index.js.map +1 -0
- package/dist/src/agents/api-explore/llm.d.ts +28 -0
- package/dist/src/agents/api-explore/llm.d.ts.map +1 -0
- package/dist/src/agents/api-explore/llm.js +48 -0
- package/dist/src/agents/api-explore/llm.js.map +1 -0
- package/dist/src/agents/api-explore/prompt-parser.d.ts +23 -0
- package/dist/src/agents/api-explore/prompt-parser.d.ts.map +1 -0
- package/dist/src/agents/api-explore/prompt-parser.js +73 -0
- package/dist/src/agents/api-explore/prompt-parser.js.map +1 -0
- package/dist/src/agents/api-explore/runner.d.ts +65 -0
- package/dist/src/agents/api-explore/runner.d.ts.map +1 -0
- package/dist/src/agents/api-explore/runner.js +196 -0
- package/dist/src/agents/api-explore/runner.js.map +1 -0
- package/dist/src/agents/api-explore/session.d.ts +23 -0
- package/dist/src/agents/api-explore/session.d.ts.map +1 -0
- package/dist/src/agents/api-explore/session.js +57 -0
- package/dist/src/agents/api-explore/session.js.map +1 -0
- package/dist/src/agents/api-explore/stream-json-emitter.d.ts +10 -0
- package/dist/src/agents/api-explore/stream-json-emitter.d.ts.map +1 -0
- package/dist/src/agents/api-explore/stream-json-emitter.js +19 -0
- package/dist/src/agents/api-explore/stream-json-emitter.js.map +1 -0
- package/dist/src/agents/api-explore/system-prompt.d.ts +2 -0
- package/dist/src/agents/api-explore/system-prompt.d.ts.map +1 -0
- package/dist/src/agents/api-explore/system-prompt.js +31 -0
- package/dist/src/agents/api-explore/system-prompt.js.map +1 -0
- package/dist/src/agents/api-explore/tools.d.ts +11 -0
- package/dist/src/agents/api-explore/tools.d.ts.map +1 -0
- package/dist/src/agents/api-explore/tools.js +168 -0
- package/dist/src/agents/api-explore/tools.js.map +1 -0
- package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
- package/dist/src/agents/cli-agent-runner.js +3 -0
- package/dist/src/agents/cli-agent-runner.js.map +1 -1
- package/dist/src/cli.js +4 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/domain.d.ts.map +1 -1
- package/dist/src/commands/domain.js +5 -4
- package/dist/src/commands/domain.js.map +1 -1
- package/dist/src/commands/explore.d.ts +7 -0
- package/dist/src/commands/explore.d.ts.map +1 -0
- package/dist/src/commands/explore.js +201 -0
- package/dist/src/commands/explore.js.map +1 -0
- package/dist/src/commands/hooks.d.ts +3 -0
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +60 -9
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/install.d.ts.map +1 -1
- package/dist/src/commands/install.js +42 -9
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/search.d.ts +26 -4
- package/dist/src/commands/search.d.ts.map +1 -1
- package/dist/src/commands/search.js +359 -93
- package/dist/src/commands/search.js.map +1 -1
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +37 -21
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/commands/workspace.d.ts.map +1 -1
- package/dist/src/commands/workspace.js +9 -3
- package/dist/src/commands/workspace.js.map +1 -1
- package/dist/src/config/cli-tools-defaults.json +2 -1
- package/dist/src/core/install-executor.d.ts.map +1 -1
- package/dist/src/core/install-executor.js +6 -3
- package/dist/src/core/install-executor.js.map +1 -1
- package/dist/src/graph/kg/extraction/code/code-extractor.js +1 -1
- package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -1
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts.map +1 -1
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js +4 -2
- package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -1
- package/dist/src/graph/kg/extraction/knowledge-extractor-registry.d.ts.map +1 -1
- package/dist/src/graph/kg/extraction/knowledge-extractor-registry.js +6 -1
- package/dist/src/graph/kg/extraction/knowledge-extractor-registry.js.map +1 -1
- package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -1
- package/dist/src/graph/kg/extraction/orchestrator.js +2 -6
- package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -1
- package/dist/src/graph/kg/surface/cli.d.ts.map +1 -1
- package/dist/src/graph/kg/surface/cli.js +5 -2
- package/dist/src/graph/kg/surface/cli.js.map +1 -1
- package/dist/src/hooks/session-context.d.ts.map +1 -1
- package/dist/src/hooks/session-context.js +37 -1
- package/dist/src/hooks/session-context.js.map +1 -1
- package/dist/src/ralph/cmd-next.d.ts.map +1 -1
- package/dist/src/ralph/cmd-next.js +66 -4
- package/dist/src/ralph/cmd-next.js.map +1 -1
- package/dist/src/ralph/status-schema.d.ts +1 -0
- package/dist/src/ralph/status-schema.d.ts.map +1 -1
- package/dist/src/search/daemon.d.ts +43 -0
- package/dist/src/search/daemon.d.ts.map +1 -0
- package/dist/src/search/daemon.js +180 -0
- package/dist/src/search/daemon.js.map +1 -0
- package/dist/src/tools/__tests__/domain-search-debug.js +3 -1
- package/dist/src/tools/__tests__/domain-search-debug.js.map +1 -1
- package/dist/src/tools/domain-loader.d.ts +4 -1
- package/dist/src/tools/domain-loader.d.ts.map +1 -1
- package/dist/src/tools/domain-loader.js +56 -25
- package/dist/src/tools/domain-loader.js.map +1 -1
- package/dist/src/tools/domain-schema.d.ts +1 -1
- package/dist/src/tools/domain-schema.js +1 -1
- package/dist/src/utils/update-notices.js +12 -0
- package/dist/src/utils/update-notices.js.map +1 -1
- package/package.json +5 -1
- package/shared/agent-types.ts +1 -1
- package/templates/search-tools.md +22 -6
- package/workflows/agy-instructions.md +0 -4
- package/workflows/analyze.md +2 -2
- package/workflows/boundary-grill.md +50 -0
- package/workflows/brainstorm.md +6 -5
- package/workflows/claude-instructions.md +29 -2
- package/workflows/codebase-rebuild.md +0 -1
- package/workflows/codex-instructions.md +97 -14
- package/workflows/command-authoring.md +1 -1
- package/workflows/debug.md +0 -4
- package/workflows/domain-add.md +115 -0
- package/workflows/execute.md +7 -0
- package/workflows/explore-usage.md +128 -0
- package/workflows/finish-work.md +2 -6
- package/workflows/fork.md +0 -4
- package/workflows/grill.md +14 -1
- package/workflows/harvest.md +0 -3
- package/workflows/impeccable/audit.md +0 -2
- package/workflows/impeccable/codex.md +0 -4
- package/workflows/init.md +9 -0
- package/workflows/interview-mechanics.md +3 -2
- package/workflows/issue-analyze.md +0 -5
- package/workflows/issue-gaps-analyze.codex.md +0 -6
- package/workflows/knowledge-audit.md +0 -4
- package/workflows/learn.md +0 -6
- package/workflows/maestro.codex.md +0 -4
- package/workflows/maestro.md +31 -18
- package/workflows/merge.md +0 -4
- package/workflows/milestone-complete.md +0 -4
- package/workflows/overlays.md +0 -10
- package/workflows/plan.md +2 -3
- package/workflows/roadmap-common.md +0 -4
- package/workflows/tdd.md +0 -2
- package/workflows/tools-spec.md +1 -7
- package/workflows/ui-codify-extract.md +0 -2
- package/workflows/ui-codify-package.md +0 -2
- package/.agents/skills/maestro-ralph-beta/SKILL.md +0 -882
- package/.agy/skills/maestro-ralph-beta/SKILL.md +0 -878
- package/.claude/commands/maestro-ralph-beta.md +0 -880
- package/.codex/skills/maestro-ralph-beta/SKILL.md +0 -883
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: domain-add
|
|
3
|
+
description: Register a domain term into project glossary
|
|
4
|
+
argument-hint: "<canonical> \"<definition>\""
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Bash
|
|
9
|
+
- Glob
|
|
10
|
+
- Grep
|
|
11
|
+
---
|
|
12
|
+
<purpose>
|
|
13
|
+
Register a domain term into `.workflow/domain/glossary.yaml`. Domain terms are automatically injected into agent context via hooks (domain-compact for all prompts, domain-expanded on keyword match).
|
|
14
|
+
</purpose>
|
|
15
|
+
|
|
16
|
+
<required_reading>
|
|
17
|
+
@~/.maestro/workflows/domain-add.md
|
|
18
|
+
</required_reading>
|
|
19
|
+
|
|
20
|
+
<context>
|
|
21
|
+
$ARGUMENTS -- expects `<canonical> "<definition>"`
|
|
22
|
+
|
|
23
|
+
**Examples:**
|
|
24
|
+
```bash
|
|
25
|
+
/domain-add auth-token "Short-lived credential for API authentication"
|
|
26
|
+
/domain-add event-bus "Central pub-sub message broker for cross-module communication"
|
|
27
|
+
/domain-add 会话上下文 "Runtime state container for active workflow session"
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Domain term lifecycle: discover/manual → register → active → (optional) deprecated → removed.
|
|
31
|
+
|
|
32
|
+
**Related commands:**
|
|
33
|
+
- `maestro domain list` — list all registered terms
|
|
34
|
+
- `maestro domain discover` — scan codebase for term candidates
|
|
35
|
+
- `maestro domain show <canonical>` — show term details
|
|
36
|
+
- `maestro domain deprecate <canonical> --successor <new>` — deprecate a term
|
|
37
|
+
</context>
|
|
38
|
+
|
|
39
|
+
<execution>
|
|
40
|
+
Follow '~/.maestro/workflows/domain-add.md' completely.
|
|
41
|
+
</execution>
|
|
42
|
+
|
|
43
|
+
<error_codes>
|
|
44
|
+
| Code | Severity | Description | Stage |
|
|
45
|
+
|------|----------|-------------|-------|
|
|
46
|
+
| E001 | fatal | Canonical name and definition are both required | parse_input |
|
|
47
|
+
| E002 | fatal | `.workflow/domain/` not initialized — run `maestro domain init` first | validate |
|
|
48
|
+
| E003 | fatal | Term already registered with same canonical name | duplicate_check |
|
|
49
|
+
| E004 | warning | Near-match found — confirm merge or create new | duplicate_check |
|
|
50
|
+
</error_codes>
|
|
51
|
+
|
|
52
|
+
<success_criteria>
|
|
53
|
+
- [ ] Canonical name and definition parsed and validated
|
|
54
|
+
- [ ] No duplicate term in glossary (or user confirmed near-match)
|
|
55
|
+
- [ ] Aliases and keywords auto-extracted from definition
|
|
56
|
+
- [ ] Term written to glossary.yaml with tier and relationships
|
|
57
|
+
- [ ] Confirmation displayed with term details and verify command
|
|
58
|
+
</success_criteria>
|
|
59
|
+
|
|
60
|
+
<completion>
|
|
61
|
+
### Next-step routing
|
|
62
|
+
|
|
63
|
+
| Condition | Suggestion |
|
|
64
|
+
|-----------|-----------|
|
|
65
|
+
| Verify term added | `maestro domain show <canonical>` |
|
|
66
|
+
| Add more terms | `/domain-add <canonical> "<definition>"` |
|
|
67
|
+
| Discover candidates | `maestro domain discover` |
|
|
68
|
+
| List all terms | `maestro domain list` |
|
|
69
|
+
</completion>
|
|
@@ -12,8 +12,6 @@ allowed-tools:
|
|
|
12
12
|
---
|
|
13
13
|
<purpose>
|
|
14
14
|
Signal-driven overlay generator — collect workflow deficiency signals from multiple sources, diagnose which commands need amendment, batch-generate targeted overlays. All amendments use overlay system (`~/.maestro/overlays/*.json`) — non-invasive, idempotent, survives reinstall.
|
|
15
|
-
|
|
16
|
-
Differs from `/maestro-overlay` (single explicit intent). This command **discovers** what needs amending by analyzing workflow artifacts.
|
|
17
15
|
</purpose>
|
|
18
16
|
|
|
19
17
|
<required_reading>
|
|
@@ -23,6 +23,7 @@ Multi-dimensional analysis of a proposal, decision, or architecture choice via C
|
|
|
23
23
|
<deferred_reading>
|
|
24
24
|
- [state.json](~/.maestro/templates/state.json) — read when registering artifact
|
|
25
25
|
- [issue-gaps-analyze.md](~/.maestro/workflows/issue-gaps-analyze.md) — read when --gaps is triggered
|
|
26
|
+
- [boundary-grill.md](~/.maestro/workflows/boundary-grill.md) — read when boundary conflicts detected (between Phase 4 and Phase 5)
|
|
26
27
|
</deferred_reading>
|
|
27
28
|
|
|
28
29
|
<context>
|
|
@@ -94,6 +95,12 @@ Every decision MUST trace to independently gathered evidence. Manual Read/Grep i
|
|
|
94
95
|
|
|
95
96
|
Decisions without CLI/agent-sourced evidence MUST be flagged as LOW CONFIDENCE.
|
|
96
97
|
|
|
98
|
+
### Boundary Grill (Step 5 → Step 6)
|
|
99
|
+
|
|
100
|
+
After discussion rounds, BEFORE synthesis: run boundary grill per `~/.maestro/workflows/boundary-grill.md`.
|
|
101
|
+
Input: discussion.md decisions + exploration-codebase.json. Scope guard: "only analyze decisions; do not prejudge plan/execute concerns".
|
|
102
|
+
IF conflicts → results to `analysis.md` § Boundary Grill Results + update `context.md` Locked/Free/Deferred.
|
|
103
|
+
|
|
97
104
|
### Standard Mode Gates
|
|
98
105
|
|
|
99
106
|
Gates 1-4 are defined in `analyze.md`. NEVER skip gates. NEVER substitute manual Read/Grep for agent/CLI exploration.
|
|
@@ -193,6 +200,8 @@ Full mode:
|
|
|
193
200
|
- [ ] Confidence tracking initialized (Step 4.6) and re-scored each round (Step 5.8)
|
|
194
201
|
- [ ] Readiness gate checked before synthesis (Step 5.10)
|
|
195
202
|
- [ ] Pressure pass completed ≥ 1 time before Step 6
|
|
203
|
+
- [ ] Boundary grill executed between Phase 4 and Phase 5 (skip if no conflicts detected)
|
|
204
|
+
- [ ] Boundary grill results written to analysis.md § Boundary Grill Results (if conflicts found)
|
|
196
205
|
- [ ] Confidence summary with factor decomposition written to analysis.md
|
|
197
206
|
|
|
198
207
|
Gaps mode:
|
|
@@ -25,6 +25,7 @@ Pipeline: grill (optional) → **brainstorm** → roadmap / analyze / blueprint.
|
|
|
25
25
|
- [scratch-index.json](~/.maestro/templates/scratch-index.json) — read when operating in scratch mode
|
|
26
26
|
- [index.json](~/.maestro/templates/index.json) — read when operating in phase mode
|
|
27
27
|
- [brainstorm-visualize.md](~/.maestro/workflows/brainstorm-visualize.md) — read when html-prototypes/ produced and user wants to browse them
|
|
28
|
+
- [boundary-grill.md](~/.maestro/workflows/boundary-grill.md) — read when boundary conflicts detected (in cross-role review)
|
|
28
29
|
</deferred_reading>
|
|
29
30
|
|
|
30
31
|
<context>
|
|
@@ -88,8 +89,14 @@ These gates apply to Auto mode (full pipeline). Do NOT advance past a gate until
|
|
|
88
89
|
- REQUIRED: Per-feature files `{role}/analysis-F-*.md` written for each feature in §10.
|
|
89
90
|
- BLOCKED if missing: complete all role analyses before spawning cross-role-reviewer.
|
|
90
91
|
|
|
91
|
-
**GATE
|
|
92
|
+
**GATE 2.5: Cross-Role Review → Boundary Grill** (Step 4.5 → Step 4.6)
|
|
93
|
+
Run boundary grill per `~/.maestro/workflows/boundary-grill.md` after cross-role-reviewer output.
|
|
94
|
+
Input: reviewer findings + role Decision Digests. Scope guard: "only brainstorm decisions; do not pre-resolve roadmap/plan choices".
|
|
95
|
+
IF conflicts → results to `guidance-specification.md` §12.5 + feed into GATE 3. NON-BLOCKING.
|
|
96
|
+
|
|
97
|
+
**GATE 3: Cross-Role Review → Completion** (Step 4.5/4.6 → Report)
|
|
92
98
|
- REQUIRED: Cross-role-reviewer output received with `patch_targets[]`.
|
|
99
|
+
- REQUIRED: Boundary grill completed (if conflicts detected, results logged).
|
|
93
100
|
- REQUIRED: If findings > 0, resolutions applied via Edit AND logged in `guidance-specification.md` §12.
|
|
94
101
|
- REQUIRED: If findings == 0, final report explicitly states "No cross-role issues detected".
|
|
95
102
|
- BLOCKED if missing: complete review synthesis before reporting.
|
|
@@ -191,6 +198,8 @@ Status verdicts:
|
|
|
191
198
|
- [ ] `ui-designer/analysis.md` references DESIGN.md visual constraints when ui-designer is selected
|
|
192
199
|
- [ ] Each `{role}/analysis.md` §2 Decisions table has ≥ 1 row per feature
|
|
193
200
|
- [ ] Cross-role review (Step 4.5) executed; reviewer compares §2 Decision Digests; output includes `patch_targets[]` for every finding
|
|
201
|
+
- [ ] Boundary grill executed after cross-role review (skip if no conflicts detected)
|
|
202
|
+
- [ ] Boundary grill results written to guidance-specification.md §12.5 (if conflicts found)
|
|
194
203
|
- [ ] If findings exist: each accepted resolution applied via Edit (annotate / strikeout / append) AND logged in `guidance-specification.md` §12 "Cross-Role Resolutions"
|
|
195
204
|
- [ ] If zero findings: final report explicitly states "No cross-role issues detected"; guidance §12 unchanged
|
|
196
205
|
- [ ] Heading-drift patch failures surfaced in final report (if any)
|
|
@@ -73,7 +73,12 @@ S_COLLECT:
|
|
|
73
73
|
GUARD: 1+ succeeded → continue with partial results (W001)
|
|
74
74
|
|
|
75
75
|
S_CROSS_VERIFY:
|
|
76
|
-
→
|
|
76
|
+
→ S_BOUNDARY_GRILL DO: A_CLASSIFY_FINDINGS
|
|
77
|
+
|
|
78
|
+
S_BOUNDARY_GRILL:
|
|
79
|
+
→ S_SYNTHESIZE WHEN: no boundary conflicts detected DO: —
|
|
80
|
+
→ S_SYNTHESIZE WHEN: conflicts detected + resolved DO: A_BOUNDARY_GRILL
|
|
81
|
+
GUARD: max 3 conflicts × 3 questions; non-blocking
|
|
77
82
|
|
|
78
83
|
S_SYNTHESIZE:
|
|
79
84
|
→ S_REGISTER DO: A_GENERATE_OUTPUTS
|
|
@@ -134,6 +139,12 @@ Read all per-tool outputs. For each finding:
|
|
|
134
139
|
consensus_level = consensus_count / total_findings * 100.
|
|
135
140
|
If consensus_level < 40%: W003.
|
|
136
141
|
|
|
142
|
+
### A_BOUNDARY_GRILL
|
|
143
|
+
|
|
144
|
+
Run boundary grill per `~/.maestro/workflows/boundary-grill.md`.
|
|
145
|
+
Input: classified CONFLICT findings + per-tool outputs. Check upstream scope if `--from` used.
|
|
146
|
+
IF conflicts → tag with resolution, feed into A_GENERATE_OUTPUTS. No conflicts → pass through.
|
|
147
|
+
|
|
137
148
|
### A_GENERATE_OUTPUTS
|
|
138
149
|
|
|
139
150
|
Resolve conflicts via evidence-weighted voting:
|
|
@@ -160,6 +171,8 @@ Write 3 files:
|
|
|
160
171
|
<success_criteria>
|
|
161
172
|
- [ ] All delegates launched in parallel via Bash(run_in_background: true), STOP after launch
|
|
162
173
|
- [ ] Cross-verification: consensus/conflict/unique classification with consensus_level
|
|
174
|
+
- [ ] Boundary grill executed on CONFLICT items (skip if no boundary conflicts detected)
|
|
175
|
+
- [ ] Boundary grill results written to collab-report.md § Boundary Grill Results (if conflicts found)
|
|
163
176
|
- [ ] 3 output files produced (collab-report.md, context.md, conclusions.json)
|
|
164
177
|
- [ ] CLB artifact registered in state.json
|
|
165
178
|
- [ ] Partial degradation: continued if 1+ tools succeeded
|
|
@@ -92,9 +92,9 @@ S_FALLBACK:
|
|
|
92
92
|
读 project state 推断 `lifecycle_position`(核心信号):
|
|
93
93
|
|
|
94
94
|
```bash
|
|
95
|
-
cat .workflow/state.json 2
|
|
96
|
-
ls -la .workflow/scratch/ 2
|
|
97
|
-
ls -la .workflow/.maestro/ 2
|
|
95
|
+
cat .workflow/state.json 2>/dev/null # phase / milestone / artifacts
|
|
96
|
+
ls -la .workflow/scratch/ 2>/dev/null | head -10 # 最近 artifact (mtime DESC)
|
|
97
|
+
ls -la .workflow/.maestro/ 2>/dev/null | head -5 # 进行中的 session
|
|
98
98
|
```
|
|
99
99
|
|
|
100
100
|
**项目状态 → lifecycle_position → 自然下一步:**
|
|
@@ -110,7 +110,8 @@ ls -la .workflow/.maestro/ 2>$null | head -5 # 进行中的 session
|
|
|
110
110
|
| 最新 artifact = plan | execute | `maestro-execute {phase}` |
|
|
111
111
|
| 最新 artifact = execute | review | `quality-review {phase}` |
|
|
112
112
|
| review verdict=PASS | test-gen | `quality-auto-test {phase}` |
|
|
113
|
-
| 测试全绿 | milestone-audit | `maestro-milestone-audit` |
|
|
113
|
+
| 测试全绿 + current_milestone 存在 | milestone-audit | `maestro-milestone-audit` |
|
|
114
|
+
| 测试全绿 + current_milestone=null (standalone) | review-done | 回退到 `quality-review` 或 `manage-status`(无 milestone 上下文时不推荐 milestone 命令) |
|
|
114
115
|
| 当前 milestone 全 phase 完成 | milestone-complete | `maestro-milestone-complete` |
|
|
115
116
|
| 任一 stage 产物含 gaps/failed | debug | `quality-debug {gap}` |
|
|
116
117
|
|
|
@@ -133,6 +134,16 @@ brainstorm → blueprint → init → analyze-macro → roadmap
|
|
|
133
134
|
| `name` 关键词命中 intent | 中 | intent 含 "test" → quality-test/quality-auto-test 加分 |
|
|
134
135
|
| Workflow 簇匹配 | 中 | intent 涉及学习/知识/issue 等场景触发对应簇 |
|
|
135
136
|
| Recent activity 反向避免 | 低 | 刚完成的 stage 短期内降权 |
|
|
137
|
+
| **前置条件不满足** | **禁止** | 候选命令的前置条件未满足时,直接从候选池移除(如 `maestro-milestone-*` 在 `current_milestone=null` 时移除) |
|
|
138
|
+
|
|
139
|
+
**前置条件检查(评分前执行,不满足则移除候选):**
|
|
140
|
+
|
|
141
|
+
| 命令 | 前置条件 |
|
|
142
|
+
|------|---------|
|
|
143
|
+
| `maestro-milestone-audit` | `current_milestone` 存在且非 null |
|
|
144
|
+
| `maestro-milestone-complete` | `current_milestone` 存在且非 null |
|
|
145
|
+
| `maestro-milestone-release` | `current_milestone` 存在且非 null |
|
|
146
|
+
| `maestro-merge` | 存在活跃的 fork 分支 |
|
|
136
147
|
|
|
137
148
|
**特殊意图处理:**
|
|
138
149
|
|
|
@@ -21,7 +21,10 @@ Turn natural-language instructions into command overlays — JSON patch files th
|
|
|
21
21
|
</required_reading>
|
|
22
22
|
|
|
23
23
|
<context>
|
|
24
|
-
**Overlay model
|
|
24
|
+
**Overlay model**:
|
|
25
|
+
- JSON file: `name`, `targets[]` (command names), `patches[]`
|
|
26
|
+
- Patch: `section` (XML tag), `mode` (append/prepend/replace/new-section), `content`
|
|
27
|
+
- Apply: hashed HTML-comment markers (idempotent, surgical removal)
|
|
25
28
|
|
|
26
29
|
**Where overlays live**
|
|
27
30
|
- User overlays: `~/.maestro/overlays/*.json` — created by this skill
|
|
@@ -139,8 +142,6 @@ Run:
|
|
|
139
142
|
maestro overlay add ~/.maestro/overlays/<slug>.json
|
|
140
143
|
```
|
|
141
144
|
|
|
142
|
-
This validates the overlay, copies it into place (idempotent), and applies it across all known install scopes. On validation failure, fix the JSON and re-run.
|
|
143
|
-
|
|
144
145
|
### 5. Report
|
|
145
146
|
|
|
146
147
|
Show the user:
|
|
@@ -25,6 +25,7 @@ Produces plan.json + TASK files; registers PLN artifact in state.json.
|
|
|
25
25
|
- [plan.json](~/.maestro/templates/plan.json) — read when generating plan output
|
|
26
26
|
- [task.json](~/.maestro/templates/task.json) — read when generating task files
|
|
27
27
|
- [state.json](~/.maestro/templates/state.json) — read when registering artifact
|
|
28
|
+
- [boundary-grill.md](~/.maestro/workflows/boundary-grill.md) — read when boundary conflicts detected (in P4)
|
|
28
29
|
</deferred_reading>
|
|
29
30
|
|
|
30
31
|
<context>
|
|
@@ -50,7 +51,7 @@ Scope routing, base flags (`--collab`, `--spec`, `-y`, `--gaps`, `--dir`), outpu
|
|
|
50
51
|
|
|
51
52
|
**Ad-hoc milestone (D-008):** When scope resolves to "standalone" via the standard standalone resolution (no `--from` source), and `current_milestone == null`, plan auto-creates an adhoc milestone (`type: "adhoc"`) in state.json before proceeding. This ensures downstream milestone-audit/complete have a valid milestone context. See workflow plan.md § "Ad-hoc Milestone Auto-Creation".
|
|
52
53
|
|
|
53
|
-
|
|
54
|
+
**`--from analyze:*` / `blueprint:*`**: scope=standalone → skip adhoc milestone auto-creation.
|
|
54
55
|
|
|
55
56
|
### Role Knowledge
|
|
56
57
|
`maestro search --category arch` → select relevant → `maestro wiki load`
|
|
@@ -84,11 +85,19 @@ Follow '~/.maestro/workflows/plan.md' completely.
|
|
|
84
85
|
- REQUIRED: Main flow inline planning is FORBIDDEN (see P3 Agent Constraint below).
|
|
85
86
|
- BLOCKED if missing: plan.json or TASK files not produced by planner agent — do not proceed to checking.
|
|
86
87
|
|
|
88
|
+
**GATE P3.5 → P4: Boundary Grill → Plan Check**
|
|
89
|
+
Run boundary grill per `~/.maestro/workflows/boundary-grill.md`.
|
|
90
|
+
Input: plan.json tasks + convergence criteria + upstream context. Scope guard: "only plan scope; do not re-analyze or re-scope".
|
|
91
|
+
IF conflicts → results to plan.json `boundary_grill` section + affected TASK files. DEC conflicts add `boundary_warning` to confidence.
|
|
92
|
+
NON-BLOCKING: warnings, not hard stops.
|
|
93
|
+
|
|
87
94
|
**GATE P4 → P5: Plan Check → User Confirmation**
|
|
88
95
|
- REQUIRED: Plan-checker passed (or minor issues acknowledged).
|
|
96
|
+
- REQUIRED: Boundary grill completed (conflicts resolved or accepted as risks).
|
|
89
97
|
- REQUIRED: Confidence scored with 5-dimension factor model.
|
|
90
98
|
- REQUIRED: Pressure pass completed on highest-complexity task.
|
|
91
|
-
-
|
|
99
|
+
- REQUIRED: If plan touches UI (检出 `dashboard/` 或 UI 关键词 `landing|page|dashboard|frontend|UI|component|界面`), each delivery wave has ≥1 `[UI-observable]` convergence criterion (vertical-slice delivery, not backend-only).
|
|
100
|
+
- BLOCKED if: plan-checker found critical issues, OR UI plan missing `[UI-observable]` coverage — fix plan before presenting to user.
|
|
92
101
|
|
|
93
102
|
**GATE P5 → Completion: User Confirmation → Done**
|
|
94
103
|
- REQUIRED: User confirmation captured (execute/modify/cancel).
|
|
@@ -150,8 +159,6 @@ For each created TASK-{NNN}.json that has issue_id:
|
|
|
150
159
|
Append history entry: { action: "planned", at: <ISO>, by: "maestro-plan", summary: "Linked to TASK-{NNN}" }
|
|
151
160
|
```
|
|
152
161
|
|
|
153
|
-
This ensures issue → TASK traceability. The `task_refs[]` and `task_plan_dir` fields on the issue allow the dashboard to resolve and display associated TASK details.
|
|
154
|
-
|
|
155
162
|
### Mode: Revise / Check
|
|
156
163
|
|
|
157
164
|
Follow workflow plan.md § "Revise Mode" and § "Check Mode" respectively. These modes bypass the standard P1-P5 create pipeline.
|
|
@@ -213,7 +220,11 @@ Status verdicts:
|
|
|
213
220
|
- [ ] .task/TASK-*.json files created for each task
|
|
214
221
|
- [ ] Every task has `read_first[]` with at least the file being modified + source of truth files
|
|
215
222
|
- [ ] Every task has `convergence.criteria[]` with grep-verifiable conditions (no subjective language)
|
|
223
|
+
- [ ] UI plans: each delivery wave has ≥1 `[UI-observable]` convergence criterion (vertical slice; verified at runtime by ralph frontend-verify gate)
|
|
216
224
|
- [ ] Every task `action` and `implementation` contain concrete values (no "align X with Y")
|
|
225
|
+
- [ ] Boundary grill executed in P3.5 (skip if no conflicts detected)
|
|
226
|
+
- [ ] Boundary grill results written to plan.json `boundary_grill` section (if conflicts found)
|
|
227
|
+
- [ ] DEC conflicts reflected in confidence `boundary_warning` factor
|
|
217
228
|
- [ ] Plan confidence scored in P4 with 5-dimension factor model
|
|
218
229
|
- [ ] Plan readiness gate checked before P4.5 collision detection
|
|
219
230
|
- [ ] Pressure pass completed on highest-complexity task
|
|
@@ -134,19 +134,44 @@ S_FALLBACK:
|
|
|
134
134
|
| maestro-brainstorm | topic | `"{intent}"` |
|
|
135
135
|
| maestro-roadmap | description | `"{intent}"` |
|
|
136
136
|
| maestro-analyze | phase or topic | `{phase}` or `"{intent}"` |
|
|
137
|
-
| maestro-plan | phase or --dir |
|
|
138
|
-
| maestro-execute | phase or --dir |
|
|
137
|
+
| maestro-plan | phase, --from, or --dir | see --from auto-injection below |
|
|
138
|
+
| maestro-execute | phase or --dir | see --from auto-injection below |
|
|
139
139
|
| quality-debug | gap context | Read previous step's error/gap |
|
|
140
140
|
| quality-* | phase | `{phase}` |
|
|
141
141
|
|
|
142
|
-
|
|
142
|
+
**--from auto-injection (phase-level artifact chaining):**
|
|
143
|
+
|
|
144
|
+
Phase-level steps 在 build 阶段无法预知前序 artifact ID。A_RESOLVE_ARGS 运行时从 state.json 查找并注入显式引用,打通 analyze→plan→execute 数据管道:
|
|
145
|
+
|
|
143
146
|
```
|
|
144
|
-
Read state.json
|
|
145
|
-
|
|
146
|
-
|
|
147
|
+
Read state.json.artifacts(含 milestone_history 内归档 artifacts)
|
|
148
|
+
→ filter by milestone={session.milestone} + phase={session.phase} + status=="completed"
|
|
149
|
+
|
|
150
|
+
plan step(含 {phase} 占位符,args 无 --from 且无 --dir):
|
|
151
|
+
1. 查同 phase+milestone 最新 completed type=="analyze" artifact → id = ANL-xxx
|
|
152
|
+
2. 命中 → args 追加 --from analyze:{id}
|
|
153
|
+
3. 写 step.source_artifact_ref = "analyze:{id}"
|
|
154
|
+
|
|
155
|
+
execute step(含 {phase} 占位符,args 无 --dir):
|
|
156
|
+
1. 查同 phase+milestone 最新 completed type=="plan" artifact → id = PLN-xxx, path = scratch/...
|
|
157
|
+
2. 命中 → args 追加 --dir .workflow/scratch/{path}
|
|
158
|
+
3. 写 step.source_artifact_ref = "plan:{id}"
|
|
147
159
|
```
|
|
148
160
|
|
|
149
|
-
|
|
161
|
+
兜底:查询无结果 → 不注入,由命令自身 discovery 逻辑处理。已有 `--from` 或 `--dir` 的 step 不覆盖。
|
|
162
|
+
|
|
163
|
+
**Goal context injection:**
|
|
164
|
+
|
|
165
|
+
当 step.goal_ref 非空且 session.task_decomposition 存在时:
|
|
166
|
+
```
|
|
167
|
+
goal = session.task_decomposition.find(g => g.id == step.goal_ref)
|
|
168
|
+
if goal:
|
|
169
|
+
goal_snippet = { id: goal.id, goal: goal.goal, done_when: goal.done_when,
|
|
170
|
+
boundary: goal.boundary, evidence: goal.evidence }
|
|
171
|
+
→ 传递给 A_EXEC_STEP 用于 inline execution 前注入(见 step 2 goal context pre-injection)
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Write enriched args + source_artifact_ref back to status.json.
|
|
150
175
|
|
|
151
176
|
### A_EXEC_DECISION
|
|
152
177
|
|
|
@@ -162,13 +187,24 @@ Write enriched args back to status.json.
|
|
|
162
187
|
- 退出码 2 → 交给 S_LOCATE
|
|
163
188
|
- 退出码 3 → active_step_index 已被占用
|
|
164
189
|
- 退出码 1 → pause session
|
|
165
|
-
2. **
|
|
166
|
-
|
|
190
|
+
2. **Goal context pre-injection** — 若 A_RESOLVE_ARGS 产出了 `goal_snippet`(step.goal_ref 非空),在 ralph next stdout prompt **顶部前置**以下 block,使执行命令感知当前子目标和执行约束:
|
|
191
|
+
```
|
|
192
|
+
<goal_context>
|
|
193
|
+
Sub-goal: {goal.id} — {goal.goal}
|
|
194
|
+
Done when: {goal.done_when}
|
|
195
|
+
Boundary: {goal.boundary}
|
|
196
|
+
Evidence target: {goal.evidence}
|
|
197
|
+
Execution criteria: {session.execution_criteria joined by '; '}
|
|
198
|
+
</goal_context>
|
|
199
|
+
```
|
|
200
|
+
无 goal_snippet 时跳过此步。goal_context block 不替换 ralph next 的 stdout 内容,仅在其前方拼接。
|
|
201
|
+
3. **Inline execution** — 按 stdout(含 goal_context 前置)执行;deferred_reading 按需 Read
|
|
202
|
+
4. **Complete**:
|
|
167
203
|
- `Bash("maestro ralph complete N --status DONE [--evidence <path>]")`
|
|
168
204
|
- `Bash("maestro ralph complete N --status DONE_WITH_CONCERNS --concerns \"...\"")`
|
|
169
205
|
- `Bash("maestro ralph retry N")`
|
|
170
206
|
- `Bash("maestro ralph complete N --status BLOCKED --reason \"...\"")`
|
|
171
|
-
|
|
207
|
+
5. **Propagate context signals** — 关键信号 (`PHASE: N` / `scratch_dir: path` / `BLP-xxx`) 写入 `status.json.context`
|
|
172
208
|
|
|
173
209
|
完成后 S_LOCATE 触发 `Skill({ skill: "maestro-ralph-execute" })` 自调用。
|
|
174
210
|
|
|
@@ -244,5 +280,10 @@ Display: `[{index}/{total}] ✗ {step.skill} 失败,会话已暂停。/maestro
|
|
|
244
280
|
- [ ] Context signals 由执行 step 显式写回 status.json.context(非 ralph-execute 内嵌扫描)
|
|
245
281
|
- [ ] Auto mode: retry 一次后 pause;interactive 提供 retry/skip/abort
|
|
246
282
|
- [ ] 自调用持续到全部 completion_confirmed 或 paused
|
|
283
|
+
- [ ] --from auto-injection:phase-level plan step 运行时从 state.json 查找同 phase+milestone 最新 completed analyze artifact → 注入 `--from analyze:{id}`,写 `source_artifact_ref`
|
|
284
|
+
- [ ] --from auto-injection:phase-level execute step 运行时查找同 phase+milestone 最新 completed plan artifact → 注入 `--dir`,写 `source_artifact_ref`
|
|
285
|
+
- [ ] Goal context injection:step.goal_ref 非空时从 task_decomposition 提取 goal_snippet,A_EXEC_STEP 在 ralph next stdout 顶部前置 `<goal_context>` block
|
|
286
|
+
- [ ] Goal context 包含 sub-goal description、done_when、boundary、evidence、execution_criteria
|
|
287
|
+
- [ ] 已有 `--from` 或 `--dir` 的 step 不被 auto-injection 覆盖
|
|
247
288
|
|
|
248
289
|
</appendix>
|