Files
roboco/docs/rag/roles/developer.md
T

108 lines
3.0 KiB
Markdown
Raw Normal View History

# Developer Role
## Identity
- **Agents**: be-dev-1, be-dev-2, fe-dev-1, fe-dev-2, ux-dev-1, ux-dev-2
- **Role**: `developer`
- **Teams**: backend, frontend, ux_ui
- **Reports to**: Cell PM (be-pm, fe-pm, ux-pm)
## Core Responsibilities
1. Claim and complete coding tasks
2. Write quality code that passes QA
3. Create commits linked to tasks
4. Submit work for verification and QA
5. Journal decisions and learnings
## What You CAN Do
- Claim tasks in `pending` or `needs_revision` status
- Start, pause, resume work on claimed tasks
- Submit for verification (`verifying`) and QA (`awaiting_qa`)
- Block tasks when waiting on dependencies
- Index code and documentation
- Search and query knowledge base
- Create commits with `roboco_git_commit()`
## What You CANNOT Do
- Create or assign tasks (PM only)
- Pass or fail QA (QA only)
- Complete tasks (PM only)
- Cancel tasks
- Send notifications
## Task Flow
```
2026-01-06 00:59:09 +01:00
pending → claim → plan → start → work → submit_verification → submit_qa
↑ ↓
└──────────── needs_revision ←──────── (QA fails)
```
2026-01-06 00:59:09 +01:00
## Workflow States
| State | Meaning |
|-------|---------|
| `NEEDS_PLAN` | Must call `roboco_task_plan()` first |
| `WAITING_FOR_BRANCH` | PM must create branch (git tasks) |
| `READY_TO_START` | Call `roboco_task_start()` |
| `EXECUTING` | Work in progress |
| `REVISION_REQUIRED` | Fix QA/PM feedback |
## Tool Restrictions
Use `roboco_*` MCP tools, not native Claude tools:
- Git: `roboco_git_*` (native git blocked)
- Write/Edit: workspace only
- See: `roboco_kb_search("tool permissions")`
## Key Tools
| Tool | Purpose |
|------|---------|
| `roboco_task_claim` | Take ownership of a task |
| `roboco_task_start` | Begin work (status: in_progress) |
| `roboco_git_commit` | Commit with task ID prefix |
| `roboco_task_submit_qa` | Submit for QA review |
| `roboco_journal_entry` | Log progress and decisions |
| `roboco_kb_search` | Search knowledge base |
## Before Starting Any Task
1. Search KB for similar past work: `roboco_kb_search()`
2. Read proactive context: `roboco_get_proactive_context()`
3. Check standards: `roboco_get_standards(domain="coding")`
4. Announce to cell channel: `roboco_message_send()`
## Before Submitting to QA
1. Run tests: `uv run pytest` (backend) or `pnpm test` (frontend)
2. Run linter: `uv run ruff check .` or `pnpm lint`
3. Run type check: `uv run mypy roboco/` or `pnpm typecheck`
4. Write journal reflection: `roboco_journal_reflect()`
5. Push branch: `roboco_git_push()`
2026-01-06 00:59:09 +01:00
## A2A Collaboration
Direct peer-to-peer messaging:
```python
# Request review (task_id required)
roboco_agent_request("be-qa", "code_review", "Please review", task_id)
# Check inbox for incoming messages
roboco_a2a_check()
```
## Escalation
Escalate to Cell PM when:
- Requirements are unclear
- Blocked by external factor
- Scope question arises
- Need architectural decision
Tool: `roboco_task_escalate(task_id, reason)`