Killed "active" session dependency:

1. roboco/mcp/schemas/__init__.py:
    - SendMessageInput.task_id → required
    - AskQuestionInput.task_id → required
    - ReportBlockerInput.task_id → required
  2. roboco/mcp/message_server.py:
    - Removed _get_active_session() entirely (dead code)
    - Simplified _handle_message_send() - no fallback, just uses task's linked session
    - Updated tool signatures for roboco_ask_question and roboco_report_blocker
  3. roboco/api/routes/tasks.py (earlier fix):
    - Added subtask validation before parent completion

  New behavior:
  - All messages MUST have task_id
  - Task's linked session is the only source of truth
  - No session? → Clear error: "Cell PM must create one"
  - No more "active" status guessing
This commit is contained in:
Renn F
2025-12-23 22:58:07 +01:00
parent 204b959733
commit 06720b1978
9 changed files with 66 additions and 89 deletions
+7 -7
View File
@@ -39,15 +39,15 @@ services:
retries: 5
# ==========================================================================
# Agent Image Builder (pre-builds the agent image at compose time)
# Agent Base Image Builder (specialized images built on-demand by orchestrator)
# ==========================================================================
agent-image:
agent-base-image:
build:
context: .
dockerfile: docker/agent.Dockerfile
image: roboco-agent
container_name: roboco-agent-builder
entrypoint: ["/bin/sh", "-c", "echo 'Agent image built successfully'"]
dockerfile: docker/agent-base.Dockerfile
image: roboco-agent-base
container_name: roboco-agent-base-builder
entrypoint: ["/bin/sh", "-c", "echo 'Agent base image built successfully'"]
restart: "no"
# ==========================================================================
@@ -92,7 +92,7 @@ services:
condition: service_healthy
redis:
condition: service_healthy
agent-image:
agent-base-image:
condition: service_completed_successfully
# Default agents to spawn (override in .env or command line)
# command: ["--spawn", "main-pm", "be-dev-1", "be-qa"]