docs(agents): verify the issue dependency API #26

Merged
pit merged 1 commit from docs/agent-tracker-dependency-api into main 2026-10-06 12:44:11 +00:00
Owner

Follow-up to #17 (the forgejo-mcp split). The tracker note in
docs/agents/issue-tracker.md said the issue-dependency endpoints were
"unverified against this instance" and told agents to rely on a
Blocked by: body line alone. They are verified, and the body line is
now optional.

What changed

docs/agents/issue-tracker.md only. A Dependencies entry under
Conventions, plus a line in Wayfinding that keeps the body line as the
fallback for a caller with only the tracker UI. No code, no manifest
change: this file is listed under exclude, so it never reaches the
wiki.

Verified live (15.0.9, 2026-10-06)

  • GET /issues/{n}/dependencies and GET /issues/{n}/blocks return
    bare IssueMeta arrays. Both 200; absent blockers is [], not 404.
  • POST /issues/{n}/dependencies adds an edge, 201. The body must be
    a full IssueMeta (owner, repo, index); index alone is
    404 IsErrRepoNotExist, which reads as a missing repo.
  • The write is idempotent (repeat POST is 201), and DELETE of an
    edge that is not there still answers 201.
  • Direction confirmed both ways on the #21→#22→#23→#24 chain.
  • There is no sub-issue API in 15: /issues/{n}/sub_issues is 404.

Context

Prose only -- no behaviour changes. Reverting it costs nothing if the
body-line convention is preferred after all.

Follow-up to #17 (the forgejo-mcp split). The tracker note in `docs/agents/issue-tracker.md` said the issue-dependency endpoints were "unverified against this instance" and told agents to rely on a `Blocked by:` body line alone. They are verified, and the body line is now optional. ## What changed `docs/agents/issue-tracker.md` only. A `Dependencies` entry under Conventions, plus a line in Wayfinding that keeps the body line as the fallback for a caller with only the tracker UI. No code, no manifest change: this file is listed under `exclude`, so it never reaches the wiki. ## Verified live (15.0.9, 2026-10-06) - `GET /issues/{n}/dependencies` and `GET /issues/{n}/blocks` return bare `IssueMeta` arrays. Both 200; absent blockers is `[]`, not 404. - `POST /issues/{n}/dependencies` adds an edge, `201`. The body must be a full `IssueMeta` (`owner`, `repo`, `index`); `index` alone is `404 IsErrRepoNotExist`, which reads as a missing repo. - The write is idempotent (repeat POST is `201`), and `DELETE` of an edge that is not there still answers `201`. - Direction confirmed both ways on the #21→#22→#23→#24 chain. - There is no sub-issue API in 15: `/issues/{n}/sub_issues` is `404`. ## Context Prose only -- no behaviour changes. Reverting it costs nothing if the body-line convention is preferred after all.
The tracker note called the issue-dependency endpoints "unverified" and
told agents to rely on a `Blocked by:` body line alone. They work on this
instance: GET .../dependencies and GET .../blocks return bare IssueMeta
arrays, POST/DELETE .../dependencies add and remove an edge with 201.

Recorded from live calls against 15.0.9: the POST body is a full
IssueMeta (owner, repo, index) -- index alone returns 404
IsErrRepoNotExist, which reads as a missing repo; the write is
idempotent; DELETE of a missing edge also 201s; and the direction is
A-depends-on-B, readable from B as /blocks. There is no sub-issue API
in 15 (`/sub_issues` is 404), so a parent/child split is a body
reference plus each child's dependency on its predecessor.

Wayfinding keeps the body line as the fallback for a caller with only
the tracker UI.
pit force-pushed docs/agent-tracker-dependency-api from 29c1782ae7 to b0a42ff508 2026-10-06 12:41:45 +00:00 Compare
pit merged commit 324b2fd93b into main 2026-10-06 12:44:11 +00:00
pit deleted branch docs/agent-tracker-dependency-api 2026-10-06 12:44:11 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
olympus/infra-forge!26
No description provided.