Files
php-node-renderer-playground/docs/agents/issue-tracker.md
T
haylan 880e032ba1 chore: scaffold Astro project and configure agent skills
Initial commit: Astro minimal template (Node >= 22.12), agent docs
(AGENTS.md/CLAUDE.md/QWEN.md), and docs/agents setup for the Gitea
issue tracker via the tea CLI, triage labels, and domain docs.
2026-09-10 10:21:00 +02:00

3.1 KiB

Issue tracker: Gitea

Issues and specs for this repo live in the Gitea repository at https://git.arthurerlich.de/haylan/php-node-renderer-playground. Use the tea CLI (the official Gitea CLI, v0.15.1) for all operations.

tea infers the repository from the local git remote (origin → this repo), so commands are run from the repo root without -r. Use -o json for machine-readable output (e.g. tea issues ls -o json). If a command can't find a login, run tea login first.

Conventions

  • Create an issue: tea issues create -t "..." -d "..." (add -L "label, label" for labels)
  • Read an issue: tea issues <n> --comments -o json
  • List issues: tea issues ls -o json (filters: --state open|closed|all, --labels "...", --keyword "...")
  • List issue comments: tea comments list <n>
  • List labels: tea labels ls
  • Comment on an issue: tea comments add <n> "..."
  • Add / remove labels: tea issues edit <n> -L "label" / tea issues edit <n> --remove-labels "label"
  • Assign a dev: tea issues edit <n> -a <username>
  • Close: tea issues close <n>
  • Reopen: tea issues reopen <n>

Gitea shares one number space across issues and pull requests, so a bare #42 may be either: resolve with tea pulls view <n> (or tea issues -K pulls <n>) and fall back to tea issues <n>.

Pull requests as a triage surface

PRs as a request surface: no. (Set to yes if this repo treats external PRs as feature requests; /triage reads this flag.)

When set to yes, PRs run through the same labels and states as issues, using the tea pulls equivalents (tea pulls ls, tea pulls view <n>).

When a skill says "publish to the issue tracker"

Create a Gitea issue in haylan/php-node-renderer-playground (tea issues create).

When a skill says "fetch the relevant ticket"

Run tea issues <n> --comments for the referenced number.

Wayfinding operations

Used by /wayfinder. The map is a single issue with child issues as tickets. Gitea has no native sub-issues or issue-dependencies API, so links are recorded in issue bodies.

  • Map: a single issue labelled wayfinder:map, holding the Notes / Decisions-so-far / Fog body. Create with tea issues create -t "..." -d "..." -L "wayfinder:map".
  • Child ticket: an issue linked to the map via a task list in the map body, with Part of #<map> at the top of the child body. Labels: wayfinder:<type> (research/prototype/grilling/task). Once claimed, the ticket is assigned to the driving dev.
  • Blocking: a Blocked by: #<n>, #<n> line near the top of the child body. A ticket is unblocked when every blocker is closed.
  • Frontier: scan the map's open children (task list / Part of), drop any with an open blocker (per the Blocked by line) or an assignee; first in map order wins.
  • Claim: assign the issue to the driving dev, the session's first write (tea issues edit <n> -a <username>).
  • Resolve: comment the answer (tea comments add <n> "..."), close the issue (tea issues close <n>), then append a context pointer (gist + link) to the map's Decisions-so-far.