Add core aggregation layer wrapping the Gitea API for fan-out
concurrent fetching across repos and organizations with caching.
- internal/gitea/client.go: Gitea API client with aggregation
- ListOrgs/ListOrgRepos/ListOrgsAndRepos for org enumeration
- ListAllIssues: concurrent fetch across repos via goroutines with semaphore (5)
- ListAllPullRequests: same pattern for PRs
- GetTriageQueue: unassigned issues + open PRs, sorted by priority
- CreateIssue, ApplyLabel, SubmitReview: write operations with cache invalidation
- In-memory cache with 30s TTL using sync.RWMutex
- internal/gitea/client_test.go: unit tests for caching, priority scoring,
API calls with httptest server, and triage queue sorting
Closesleeworks-agents/gitea-mobile#3
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>