Add AGENTS.md/CLAUDE.md agent-skills block, docs/agents/issue-tracker.md (Gitea via tea CLI) and docs/agents/domain.md (single-context layout). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
40 lines
2.6 KiB
Markdown
40 lines
2.6 KiB
Markdown
# Issue tracker: Gitea
|
|
|
|
Issues and specs for this repo live as Gitea issues on `git.arthurerlich.de/haylan/Smart-Tablet-Screen`. Use the `tea` CLI for all operations.
|
|
|
|
## Conventions
|
|
|
|
- **Create an issue**: `tea issues create -r haylan/Smart-Tablet-Screen --title "..." --description "..."`
|
|
- **Read an issue**: `tea issues view -r haylan/Smart-Tablet-Screen <number>`
|
|
- **List issues**: `tea issues list -r haylan/Smart-Tablet-Screen`
|
|
- **Comment on an issue**: `tea comment -r haylan/Smart-Tablet-Screen <number> "..."`
|
|
- **Apply / remove labels, assignees, milestone**: `tea issues edit -r haylan/Smart-Tablet-Screen --add-labels "..." --add-assignees "..." <number>` (use `--remove-labels`/`--remove-assignees` to unset)
|
|
- **Close / reopen**: `tea issues close -r haylan/Smart-Tablet-Screen <number>` / `tea issues reopen -r haylan/Smart-Tablet-Screen <number>`
|
|
|
|
Repo is inferred from `git remote -v` when running `tea` from the repo root; pass `-r haylan/Smart-Tablet-Screen` explicitly if inference fails.
|
|
|
|
## 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 — not relevant yet since `triage` isn't installed.)_
|
|
|
|
When set to `yes`, use the `tea pulls` equivalents: `tea pulls view`, `tea pulls create`, `tea comment <number> "..."`, `tea pulls merge`.
|
|
|
|
## When a skill says "publish to the issue tracker"
|
|
|
|
Create a Gitea issue with `tea issues create`.
|
|
|
|
## When a skill says "fetch the relevant ticket"
|
|
|
|
Run `tea issues view -r haylan/Smart-Tablet-Screen <number>`.
|
|
|
|
## Wayfinding operations
|
|
|
|
Gitea has no native issue-dependency/blocking API (unlike GitHub/GitLab), so fall back to plain-text conventions:
|
|
|
|
- **Map**: a single issue labelled `wayfinder:map`, holding the Notes / Decisions-so-far / Fog body.
|
|
- **Child ticket**: an issue with `Part of #<map>` at the top of its description, labelled `wayfinder:<type>` (`research`/`prototype`/`grilling`/`task`). Once claimed, assign it to the driving dev.
|
|
- **Blocking**: a `Blocked by: #<n>, #<n>` line at the top of the description — no native link available. A ticket is unblocked when every blocker listed there is closed.
|
|
- **Frontier query**: `tea issues list -r haylan/Smart-Tablet-Screen`, scoped to the map's children, drop any with an open blocker in its `Blocked by` line or an assignee; first in map order wins.
|
|
- **Claim**: `tea issues edit -r haylan/Smart-Tablet-Screen --add-assignees "@me" <n>` — the session's first write.
|
|
- **Resolve**: `tea comment -r haylan/Smart-Tablet-Screen <n> "<answer>"`, then `tea issues close -r haylan/Smart-Tablet-Screen <n>`, then append a context pointer to the map's Decisions-so-far.
|