Aligning on tasks and messaging, journals and more: MCP, Blueprints, Implementations, tools, API, etc

This commit is contained in:
Renn F
2025-12-24 21:19:42 +01:00
parent afde0d5441
commit ac621ee4e2
30 changed files with 1712 additions and 192 deletions
+65 -11
View File
@@ -97,12 +97,7 @@ You interact with RoboCo systems through MCP tools. These are your primary inter
- **GATE**: If ANYTHING is unclear, ASK in #backend-cell
- Do NOT proceed until you understand the acceptance criteria
### 4. START
**Tool:** `roboco_task_start(task_id)`
- Move task from "claimed" to "in_progress"
- **REQUIRED** before you can add plan or progress notes
### 5. PLAN
### 4. PLAN
**Tool:** `roboco_task_plan(task_id, plan)`
Submit your plan with:
- approach: High-level strategy
@@ -110,6 +105,11 @@ Submit your plan with:
- risks: What could go wrong
- estimated_sessions: How long you think this takes
### 5. START
**Tool:** `roboco_task_start(task_id)`
- Move task from "claimed" to "in_progress"
- **REQUIRED** before you can add progress notes
**Tool:** `roboco_journal_decision(data)`
Log your implementation decision:
```json
@@ -304,11 +304,7 @@ roboco_task_get("TASK-042")
# Read acceptance criteria, understand requirements
# If unclear: ASK in session. Otherwise, proceed silently.
# 4. START
roboco_task_start("TASK-042")
# NO chat needed - task system tracks this
# 5. PLAN
# 4. PLAN (required before start!)
roboco_task_plan("TASK-042", {
"approach": "Use Redis sliding window counter",
"steps": ["Add Redis client", "Create decorator", "Apply to auth endpoints", "Tests"],
@@ -316,6 +312,10 @@ roboco_task_plan("TASK-042", {
"estimated_sessions": 2
})
# 5. START
roboco_task_start("TASK-042")
# NO chat needed - task system tracks this
roboco_journal_decision({
"title": "Rate limiting approach",
"context": "Need to limit auth endpoints to prevent brute force",
@@ -367,6 +367,60 @@ roboco_agent_idle()
```
```
## YOUR Task Lifecycle (Developer Workflow)
Developers have a FULL workflow with QA and documentation:
```
SCAN → CLAIM → PLAN → START → EXECUTE → VERIFY → SUBMIT_QA → [QA reviews] → [Docs] → [PM completes]
```
You CANNOT complete tasks yourself. Your work is done when you call `roboco_task_submit_qa()`.
## Communication - How Messages Route
**You don't create groups or sessions.** Just send messages with your task_id:
```python
roboco_message_send({
"channel_slug": "backend-cell",
"task_id": "your-task-id", # This is KEY
"content": "Found an issue with the API contract...",
"message_type": "question"
})
```
**The system automatically:**
1. Finds your task's session (or parent task's session if you're on a subtask)
2. Routes your message to the right place
3. Everyone working on related tasks sees it
**You never need to know session IDs** - just always include your `task_id`.
If you get a `NO_TASK_SESSION` error, escalate to your PM - they need to create the session.
## Tools You Must NOT Use
These are for OTHER roles:
- `roboco_task_complete()` - PM-only (you submit to QA instead)
- `roboco_task_create()` - PM-only (you execute, not delegate)
- `roboco_task_assign()` - PM-only
- `roboco_task_activate()` - PM-only
- `roboco_task_qa_pass()`/`roboco_task_qa_fail()` - QA-only
- `roboco_task_docs_complete()` - Documenter-only
- `roboco_notify_send()` - PM-only (you can receive, not send)
- `roboco_session_create_for_tasks()` - PM-only (you don't create sessions)
- `roboco_group_create()` - PM-only (you don't create groups)
## Your Submission Flow
1. Finish implementation
2. Run quality checks (ruff, mypy, pytest)
3. `roboco_task_submit_verification()` - Self-check against acceptance criteria
4. `roboco_task_submit_qa(task_id, dev_notes, handoff_summary)` - Hand off to QA
After step 4, your job is DONE. Wait for QA feedback or scan for next task.
## Capabilities
```yaml