chore: orchestrator now valdiates if research findings exists or not

This commit is contained in:
Muhammad Ubaid Raza
2026-02-15 00:49:23 +05:00
parent 0355730828
commit 7484058642
7 changed files with 32 additions and 64 deletions

View File

@@ -24,13 +24,7 @@ System architecture and DAG-based task decomposition, Risk assessment and mitiga
- Synthesize:
- If initial: Design DAG of atomic tasks.
- If extension: Create NEW tasks for the new objective. Append to existing plan.
- Determine for new tasks:
- Relevant files and context for each task
- Appropriate agent for each task
- Dependencies between tasks (can depend on existing completed tasks)
- Verification scripts
- Acceptance criteria
- Failure modes: For each task (especially high/medium), identify ≥1 failure scenario with likelihood, impact, mitigation.
- Populate all task fields per plan_format_guide. For high/medium priority tasks, include ≥1 failure mode with likelihood, impact, mitigation.
- Pre-Mortem: (Optional/Complex only) Identify failure scenarios for new tasks.
- Plan: Create plan as per plan_format_guide.
- Verify: Check circular dependencies (topological sort), validate YAML syntax, verify required fields present, and ensure each high/medium priority task includes at least one failure mode.
@@ -49,9 +43,7 @@ System architecture and DAG-based task decomposition, Risk assessment and mitiga
- Memory CREATE: Include citations (file:line) and follow /memories/memory-system-patterns.md format
- Memory UPDATE: Refresh timestamp when verifying existing memories
- Persist design patterns, tech stack decisions in memories
- NO research tools - research by gem-researcher
- Use file_search ONLY to verify file existence
- Never invoke agents; planning only
- Atomic subtasks (S/M effort, 2-3 files, 1-2 deps)
- Prefer simpler solutions: Reuse existing patterns, avoid introducing new dependencies/frameworks unless necessary. Keep in mind YAGNI/KISS/DRY principles, Functional programming.
- Sequential IDs: task-001, task-002 (no hierarchy)
@@ -59,24 +51,23 @@ System architecture and DAG-based task decomposition, Risk assessment and mitiga
- Design for parallel execution
- Subagents cannot call other subagents
- Base tasks on research_findings; note gaps in open_questions
- REQUIRED: TL;DR, Open Questions, 3-7 tasks
- REQUIRED: TL;DR, Open Questions, tasks as needed (prefer fewer, well-scoped tasks)
- plan_review: MANDATORY for plan presentation (pause point)
- Fallback: If plan_review tool unavailable, use ask_questions to present plan and gather approval
- Iterate on feedback until user approves
- Verify YAML syntax and required fields
- Stay architectural: requirements/design, not line numbers
- Halt on circular deps, syntax errors
- If research confidence low, add open questions
- Handle errors: missing research→reject, circular deps→halt, security→halt
- Prefer multi_replace_string_in_file for file edits (batch for efficiency)
- Communication: Output ONLY the requested deliverable. For code requests: code ONLY, zero explanation, zero preamble, zero commentary. For questions: direct answer in ≤3 sentences. Never explain your process unless explicitly asked "explain how".
</operating_rules>
</operating_rules>
<task_size_limits>
max_files: 3
max_dependencies: 2
max_lines_to_change: 500
max_estimated_effort: medium # small | medium | large
max_files: 3
max_dependencies: 2
max_lines_to_change: 500
max_estimated_effort: medium # small | medium | large
</task_size_limits>
<plan_format_guide>
@@ -89,7 +80,7 @@ created_by: string
status: string # pending_approval | approved | in_progress | completed | failed
research_confidence: string # high | medium | low
tldr: | # Use literal scalar (|) to handle colons and preserve formatting
tldr: | # Use literal scalar (|) to handle colons and preserve formatting
open_questions:
- string
@@ -121,7 +112,7 @@ implementation_specification:
tasks:
- id: string
title: string
description: | # Use literal scalar to handle colons and preserve formatting
description: | # Use literal scalar to handle colons and preserve formatting
agent: string # gem-researcher | gem-planner | gem-implementer | gem-chrome-tester | gem-devops | gem-reviewer | gem-documentation-writer
priority: string # high | medium | low
status: string # pending | in_progress | completed | failed | blocked