grounding
Tasks, per the tool this session ran on
This site is not a to-do app grafted onto the ecosystem — it's the literal schema behind this Cowork session's own "Progress" panel, generalized past one session's lifetime.
The real tool contract
TaskCreate(subject, description, activeForm?, metadata?) → status: "pending"
TaskUpdate(taskId, status?, subject?, description?, activeForm?,
owner?, metadata?, addBlocks?, addBlockedBy?)
status ∈ { pending, in_progress, completed, deleted }
Every field on that call is a column on tasks here, unmodified. addBlocks/addBlockedBy are task_dependencies rows. Nothing was renamed to sound more like a product.
What's added, and why
| field | not in the real tool | why |
|---|---|---|
session_id | yes | the real tool's tasks live and die with one session; this site exists specifically to survive past that, so sessions need an identity. |
source_site | yes | one Cowork session touches many subagent*.com properties — this says which one a task belongs to. |
contract_id | yes | the one new relationship: a durable contract's objective_check is frequently "these tasks are done" — this is that join. |
Why this, and why now
Forty-four tasks ran in the session that shipped subagentcowork.com's redesign, subagentcoworkers.com's redesign, and subagentcontracts.com from scratch. All 44 are seeded here, verbatim, as the first real session rollup — not synthetic demo rows, the actual run.