feat: 3 operator approval gates (WaitingForHuman) in incubation pipeline
Gate 1: After market_research — operator selects business concept Gate 2: After company_design — operator approves design before review cycle Gate 3: After design_polish — operator green lights bootstrap (company creation) Each gate is a human_action task (status: WaitingForHuman) that blocks downstream tasks via depends_on. Operator resolves naturally via Discord. Pipeline SOP updated with gate diagram and expanded kill conditions. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -80,14 +80,29 @@ steps:
|
||||
- type: document
|
||||
filename: "company-design-spec-{{task_name_slug}}"
|
||||
|
||||
- type: reply
|
||||
target: discussion
|
||||
style: |
|
||||
Present the Company Design Specification to the operator. Highlight the key
|
||||
decisions: company name, agent roster size, template stack, and revenue model.
|
||||
End with: "Does this design align with your vision? Reply to approve or suggest changes."
|
||||
|
||||
- type: package
|
||||
hint: |
|
||||
The design specification is complete. Now spawn four independent reviews —
|
||||
one from each board member — plus a roundtable that depends on all four.
|
||||
The roundtable will reach consensus and spawn the polish step automatically.
|
||||
The design specification is complete and presented to the operator.
|
||||
Spawn a human approval gate — the review cycle will NOT start until
|
||||
the operator confirms the design direction is correct.
|
||||
schema:
|
||||
design_spec: string
|
||||
spawn:
|
||||
- task_type: human_action
|
||||
task_name: "Operator Review: Approve Design Direction — {task.message}"
|
||||
agent_name: Peter
|
||||
priority: 8
|
||||
context:
|
||||
design_spec: "{design_spec}"
|
||||
gate_purpose: "Review company design spec, approve before review cycle begins"
|
||||
|
||||
- task_type: design_review
|
||||
task_name: "Design Review (Peter): {task.message}"
|
||||
agent_name: Peter
|
||||
@@ -95,6 +110,8 @@ steps:
|
||||
context:
|
||||
design_spec: "{design_spec}"
|
||||
review_focus: financial_viability
|
||||
depends_on:
|
||||
- "Operator Review: Approve Design Direction — {task.message}"
|
||||
|
||||
- task_type: design_review
|
||||
task_name: "Design Review (David): {task.message}"
|
||||
@@ -103,6 +120,8 @@ steps:
|
||||
context:
|
||||
design_spec: "{design_spec}"
|
||||
review_focus: technical_feasibility
|
||||
depends_on:
|
||||
- "Operator Review: Approve Design Direction — {task.message}"
|
||||
|
||||
- task_type: design_review
|
||||
task_name: "Design Review (Sarah): {task.message}"
|
||||
@@ -111,6 +130,8 @@ steps:
|
||||
context:
|
||||
design_spec: "{design_spec}"
|
||||
review_focus: market_fit
|
||||
depends_on:
|
||||
- "Operator Review: Approve Design Direction — {task.message}"
|
||||
|
||||
- task_type: design_review
|
||||
task_name: "Design Review (Elena): {task.message}"
|
||||
@@ -119,6 +140,8 @@ steps:
|
||||
context:
|
||||
design_spec: "{design_spec}"
|
||||
review_focus: operational_completeness
|
||||
depends_on:
|
||||
- "Operator Review: Approve Design Direction — {task.message}"
|
||||
|
||||
- task_type: design_roundtable
|
||||
task_name: "Design Roundtable: {task.message}"
|
||||
|
||||
@@ -59,18 +59,35 @@ steps:
|
||||
- type: document
|
||||
filename: "company-design-final-{{task_name_slug}}"
|
||||
|
||||
- type: reply
|
||||
target: discussion
|
||||
style: |
|
||||
Present the FINAL company design to the operator. This is the last gate before
|
||||
a real company is created. Summarize: company name, agent count, template count,
|
||||
revenue model, and the board's GO verdict. End with: "This will create a live
|
||||
company with agents and templates. Reply 'approved' to proceed with bootstrap."
|
||||
|
||||
- type: package
|
||||
hint: |
|
||||
The polished design is complete. Spawn the bootstrap task to create the company.
|
||||
The polished design is complete and presented to the operator.
|
||||
Spawn a human approval gate — bootstrap will NOT execute until
|
||||
the operator explicitly greenlights the company creation.
|
||||
schema:
|
||||
design_approved: boolean
|
||||
spawn:
|
||||
- task_type: human_action
|
||||
task_name: "Operator Approval: Green Light Bootstrap — {task.message}"
|
||||
agent_name: Peter
|
||||
priority: 9
|
||||
context:
|
||||
gate_purpose: "Final approval before company creation — this spawns real infrastructure"
|
||||
|
||||
- task_type: bootstrap_company
|
||||
task_name: "Bootstrap: {task.message}"
|
||||
agent_name: David
|
||||
priority: 8
|
||||
depends_on:
|
||||
- "Polish Design: {task.message}"
|
||||
- "Operator Approval: Green Light Bootstrap — {task.message}"
|
||||
|
||||
- type: close
|
||||
rag_update: true
|
||||
|
||||
@@ -71,19 +71,37 @@ steps:
|
||||
- type: document
|
||||
filename: "market-pitch-{{task_name_slug}}"
|
||||
|
||||
- type: reply
|
||||
target: discussion
|
||||
style: |
|
||||
Present the Market Opportunity Pitch to the operator. Summarize the 3 business
|
||||
concepts clearly with their rankings. End with: "Which concept should we design?
|
||||
Reply with your choice or feedback."
|
||||
|
||||
- type: package
|
||||
hint: |
|
||||
The market research is complete and documented. Now spawn the boardroom
|
||||
where the full Crimson Leaf board will debate this pitch and design a company.
|
||||
The market research is complete and presented to the operator.
|
||||
Spawn a human approval gate — the boardroom will NOT start until
|
||||
the operator reviews the pitch and selects a concept.
|
||||
schema:
|
||||
market_pitch: string
|
||||
spawn:
|
||||
- task_type: human_action
|
||||
task_name: "Operator Review: Select Business Concept — {task.message}"
|
||||
agent_name: Peter
|
||||
priority: 8
|
||||
context:
|
||||
market_pitch: "{market_pitch}"
|
||||
gate_purpose: "Review market pitch, select which concept to design"
|
||||
|
||||
- task_type: company_design
|
||||
task_name: "Company Design Boardroom: {task.message}"
|
||||
agent_name: Peter
|
||||
priority: 7
|
||||
context:
|
||||
market_pitch: "{market_pitch}"
|
||||
depends_on:
|
||||
- "Operator Review: Select Business Concept — {task.message}"
|
||||
|
||||
- type: close
|
||||
rag_update: true
|
||||
|
||||
Reference in New Issue
Block a user