Files
roboco/docs/rag/architecture/task-model.md
T
Renn F 71f068ea6c docs: refresh user-facing docs for the features shipped since 0.8.0
Documentation had drifted behind the post-0.8.0 work. Adds a CHANGELOG [Unreleased] section, documents the three new feature flags in the config reference (and removes the retired ROBOCO_RAG_USE_HYDE), a new Architectural Conventions Standard page, the provider-overload break in CLAUDE.md, the >=3.13 Python floor + feature flags in the README, and the toolchain/conventions delivery gates + structured-note model across the developer / QA / PR-reviewer role docs and the task-model doc.
2026-06-22 13:42:38 +02:00

3.2 KiB

Task Model

Core Fields

Field Type Description
id UUID Primary key
title String Task title
description Text Detailed description
acceptance_criteria Array How we know it's done
acceptance_criteria_ids Array Stable per-criterion id (1:1 with acceptance_criteria)
parent_ac_refs Array Parent AC ids this subtask is responsible for
status Enum Lifecycle state
priority Int 0=P0 (highest) to 3=P3
team Enum backend, frontend, ux_ui

Acceptance-Criteria Tracking

Every task's acceptance_criteria get a parallel list of stable acceptance_criteria_ids — one id per criterion, generated automatically when a task is created. The ids are stable across edits, so other tasks can reference a specific criterion.

When a parent task is decomposed, each subtask declares which parent criteria it covers in parent_ac_refs (set from the covers_parent_criteria argument to delegate). That child→parent link is what lets the org guarantee a decomposition actually covers the parent's full intent. See docs/rag/workflows/task-planning.md for the coverage gates and the PM's coverage briefing.

Task Types

Type Description
code Development work
documentation Writing docs
research Investigation
planning Task breakdown
design UX/UI design
administrative Admin work

Git Fields

Field Description
project_id Associated project (required)
branch_name Git branch for task
work_session_id Active work session
pr_number PR number
pr_url Full PR URL
docs_complete Documenter finished
pr_created Developer created PR
commits Linked commits

Assignment Fields

Field Description
created_by Agent who created
assigned_to Currently assigned
parent_task_id Parent for subtasks
dependency_ids Blocking tasks

Context Fields

Field Description
plan Implementation plan
quick_context 2-3 sentence summary
proactive_context RAG context at claim
dev_notes Developer notes
qa_notes QA feedback

Structured notes & toolchain marker

Each role's handoff note is stored as a validated structured model in notes_structured. The legacy text columns (dev_notes, qa_notes, doc_notes, pr_reviewer_notes, quick_context) are DERIVED mirrors regenerated from it through a single chokepoint — never hand-authored.

When toolchain matching is enabled, the agent's workspace clone carries a .git/.roboco-toolchain marker recording the resolved Python and a status (ok / broken / unknown), and the WorkSession records the toolchain columns. A broken status blocks the delivery gates.

Timestamps

Field Description
claimed_at When claimed
started_at When started
completed_at When completed
target_date Target date

Indexes

  • ix_tasks_team_status - Team + Status queries
  • ix_tasks_assigned_status - Assignee + Status
  • ix_tasks_project_status - Project + Status