Triage: Assigned to @developer. The CI workflow already exists at .gitea/workflows/build.yaml. This issue (#199) overlaps significantly with #204. If #204 is addressed first, verify the…
Triage: Assigned to @developer. Labels already have hex color data in the Color field from the Gitea API. Update the label rendering in templates (issues.html, pulls.html, issue_detail.html,…
Triage: Assigned to @developer. Implement graceful shutdown in cmd/server/main.go: listen for SIGTERM/SIGINT, call http.Server.Shutdown() with a timeout context to drain in-flight…
Triage: Assigned to @developer. The logging middleware already exists at internal/middleware/logging.go. This issue asks for structured fields: method, path, status, duration, and request-id.…
Triage: Assigned to @developer. Add go.sum to version control and update the Dockerfile to COPY go.sum alongside go.mod before go mod download. This overlaps with #180 (Dockerfile fix) --…
Triage: Assigned to @senior-developer. This is the full merge PR feature: implement POST /pulls/{owner}/{repo}/{index}/merge handler and wire a merge button into the pull_detail template.…
Triage: Assigned to @developer. When HX-Request header is present on GET /issues/{owner}/{repo}/{index} and GET /pulls/{owner}/{repo}/{index}, return only the HTMX content fragment instead of…
Triage: Assigned to @developer. Redirect to /settings with an error banner when Gitea API token is expired or revoked (HTTP 401). Update the auth middleware or error handling to detect 401…
Triage: Assigned to @developer. Add GetChangedFiles() method to the Gitea client (internal/gitea/client.go) using the Gitea API endpoint for PR file diffs. This is a prerequisite for #189…
Triage: Assigned to @developer. This is a standalone CI fix -- add pull_request trigger to .gitea/workflows/build.yaml so go test gates all PRs, not just pushes to master. No dependencies…