feat: implement HTTP handlers for all routes with HTMX fragment support #56
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Roadmap Reference
Phase 1, Section 1.5 — HTTP Handlers
What to do
Implement all route handlers using Go 1.22+ http.ServeMux:
Routes to implement:
HTMX awareness: each GET handler checks the HX-Request header. If true, render only the HTML fragment; otherwise render the full page layout.
Handler file layout:
Acceptance Criteria
Closing as implemented.
internal/handlers/handlers.goon master contains all required routes:GET /-- Dashboard triage queueGET /issues-- All issues across orgsGET /pulls-- All PRs across orgsGET /issues/{owner}/{repo}/{index}-- Issue detailGET /pulls/{owner}/{repo}/{index}-- PR detailPOST /issues-- Create issuePOST /issues/{owner}/{repo}/{index}/labels-- Assign labelsPOST /pulls/{owner}/{repo}/{index}/review-- Submit PR reviewGET /health-- Returns 200 OKPOST /issues/{owner}/{repo}/{index}/close,POST /issues/{owner}/{repo}/{index}/comment,GET /issues/newHTMX awareness:
isHTMX()helper checks HX-Request header;renderPage()renders fragment for HTMX requests, full page for normal requests.All handlers call the aggregation layer via
h.Client.Tests in
internal/handlers/handlers_test.go.