diff --git a/docs/agents/issue-tracker.md b/docs/agents/issue-tracker.md index 3779f6a..822a7f9 100644 --- a/docs/agents/issue-tracker.md +++ b/docs/agents/issue-tracker.md @@ -64,12 +64,18 @@ Used by `/wayfinder`. The **map** is a single issue with **child** issues as tic Gitea 1.24+ has native sub-issues, but `tea` does not expose them — the `Part of #` line is the convention here, and Gitea renders it as a cross-reference on the map. - **Blocking**: Gitea has **native issue dependencies**, which is what renders the frontier in - the web UI. `tea` does not wrap them, so use the API: - `tea api --method POST repos/RDietermann/dionotes-client/issues//dependencies -d '{"index": }'`. - Read them back with `tea api repos/RDietermann/dionotes-client/issues//dependencies`. - **Unverified** — the first session to wire a blocking edge should confirm this endpoint - works and fix this line. If it does not, fall back to a `Blocked by: #, #` line at the - top of the description. A ticket is unblocked when every blocker is closed. + the web UI. `tea` does not wrap them, so use the API — **verified working**: + + ```bash + tea api "repos/RDietermann/dionotes-client/issues//dependencies" \ + -F index= -f owner=RDietermann -f repo=dionotes-client + ``` + + The body must repeat `owner` and `repo` — the path alone is not enough, and omitting them + fails with a misleading `repository does not exist [owner_name: ]`. The `{owner}`/`{repo}` + placeholders `tea api` documents do **not** get substituted here either; write them out. + Read the blockers back with a plain GET on the same path. A ticket is unblocked when every + blocker is closed. - **Frontier query**: `tea issues ls --output json --labels wayfinder:grilling,wayfinder:research,wayfinder:prototype,wayfinder:task`, keep those whose body says `Part of #`, drop any with an assignee (claimed) or an open blocker; first in map order wins.