~bigbes/sr-ht-dolt

a1fe404f916f0a66242954c9843115ef7146584c — Eugene Blikh 5 days ago 82d997d
docs: spell out the clipped-read answers
1 files changed, 7 insertions(+), 2 deletions(-)

M docs/DESIGN.mcp.md
M docs/DESIGN.mcp.md => docs/DESIGN.mcp.md +7 -2
@@ 262,7 262,7 @@ an agent that does not care about branches never has to name one.
| Tool | Arguments | Answers |
|---|---|---|
| `list_issues` | db, ref?, filter{status/category, type, priority, assignee, label, q, ready}, limit? | cards: id, title, type, priority, assignee, labels, blocked-by/blocks counts, ready, lane — **no long-text bodies** |
| `get_issue` | db, id, ref? | the whole issue: every modelled field, both dependency directions, the transitive trees, subtasks + rollup for an epic, comments, the merged history |
| `get_issue` | db, id, ref? | the whole issue: every modelled field, both dependency directions, the transitive trees, subtasks + rollup for an epic, comments, the merged history. An id absent from a **clipped** read answers `issue: null` with `table_truncated`, which is "not among the rows read" and not "does not exist" |
| `list_milestones` | db, ref? | the `milestone:<name>` rollups: totals, done/in-progress/open, members |
| `list_memories` | db, ref?, q? | `kv.memory.*` from `config`: slug, text, and the revision it was last written at (`DESIGN.views.md` ch. 2) |
| `ready_work` | db?, limit? | the ready set; **db omitted ⇒ across every beads database the caller may see** (the cross-database aggregation of `DESIGN.views.md` ch. 4, one implementation serving both surfaces) |


@@ 282,7 282,12 @@ bodies.
- `list_issues`: `limit` ≤ 500, default 200, applied after filtering.

A cap that silently truncates is a lie to a caller that cannot see the table:
every truncated result carries `truncated: true` and the true total.
every truncated result carries `truncated: true` and the true total. That holds
for the projection's own row cap as well, which every beads tool reports as
`table_truncated` + `table_total` — including `get_issue` and `list_milestones`,
where a partial read is otherwise indistinguishable from a complete one: a
missing id reads as absence, and a rollup reads as arithmetic about the whole
tracker.

## 10. Configuration