Files

3.0 KiB
Raw Permalink Blame History

Issue tracker: Gitea

Issues for this repository live in Gitea at:

https://git.bongbetic.com/xavierk/Fenris/issues

Use the authenticated tea CLI from the repository root. The configured login is xavierk.

General operations

  • List: tea issues list
  • Read: tea issues <index> --comments
  • Create: tea issues create --title "<title>" --description "<body>"
  • Edit: tea issues edit <index> --title "<title>" --description "<body>"
  • Assign: tea issues edit <index> --add-assignees "<username>"
  • Add labels: tea issues edit <index> --add-labels "<labels>"
  • Comment: tea comments add <index> --description "<comment>"
  • Close: tea issues close <index>
  • Reopen: tea issues reopen <index>

Use --output json for machine-readable list and read operations. Use tea api when the high-level issue commands do not expose a native Gitea operation.

When a skill says “publish to the issue tracker”

Create a Gitea issue in this repository. Preserve Markdown formatting in its body and apply any labels required by the invoking skill.

When a skill says “fetch the relevant ticket”

Read the named issue with comments. The user may provide its URL, title, or index. In user-facing output, refer to issues by their linked titles rather than bare indices.

Wayfinding operations

Wayfinder maps and decision tickets are Gitea issues.

Map and ticket grouping

  • A map has the label wayfinder:map.
  • Create one milestone named Wayfinder: <map title> for the effort.
  • Assign the map and all its tickets to that milestone.
  • Every ticket links its parent by name near the top: Parent map: [<map title>](<map URL>).
  • Every ticket has exactly one type label: wayfinder:research, wayfinder:prototype, wayfinder:grilling, or wayfinder:task.

The shared milestone and explicit parent link express the child relationship, because this Gitea version has no native parent/child issue API.

Blocking

Use Gitea’s native issue-dependency relationship. To make <blocked> depend on <blocker>:

tea api -X POST \
  repos/{owner}/{repo}/issues/<blocked>/dependencies \
  -F index=<blocker> \
  -f owner=xavierk \
  -f repo=Fenris

List blockers:

tea api repos/{owner}/{repo}/issues/<index>/dependencies

Remove the relationship with the same payload and -X DELETE.

Frontier

List open issues in the map’s milestone. Exclude:

  • the issue labelled wayfinder:map
  • assigned tickets, because assignment is the claim
  • tickets whose dependency query returns any open issue

The remaining open, unassigned, unblocked tickets are the frontier. Choose the oldest first unless the user names one.

Claim

Before doing any ticket work, assign it to the current tea whoami user. An open ticket without an assignee is unclaimed.

Resolve

  1. Add the answer as a resolution comment.
  2. Close the ticket.
  3. Re-fetch the map immediately before editing it.
  4. Append a linked one-line context pointer to Decisions so far.
  5. Create newly visible tickets, then wire dependencies in a second pass.