2026-05-19 01:18:46 -05:00
|
|
|
# Pipeline — Up Next
|
|
|
|
|
|
|
|
|
|
## Phase 1: Backend — Forgejo API Integration
|
2026-05-19 21:18:18 -05:00
|
|
|
- [x] Forgejo API client service (`backend/app/services/forgejo_client.py`)
|
|
|
|
|
- [x] DB models: `ForgejoConnection`, `ForgejoRepository`, `ForgejoIssue` (labels cached on issues)
|
|
|
|
|
- [x] Alembic migration for new models
|
|
|
|
|
- [x] API endpoints: `/api/v1/forgejo/repositories`, `/api/v1/forgejo/issues`
|
|
|
|
|
- [x] Config via Forgejo connection/repository CRUD
|
|
|
|
|
- [x] On-demand repository sync endpoint: `POST /api/v1/forgejo/repositories/{repository_id}/sync`
|
|
|
|
|
- [x] Scheduled sync (background task or cron)
|
2026-05-19 01:18:46 -05:00
|
|
|
|
|
|
|
|
## Phase 2: Frontend — Issues Panel
|
2026-05-19 21:18:18 -05:00
|
|
|
- [x] New "Issues" sidebar link and route (`/git-projects/issues`)
|
|
|
|
|
- [x] Issue list page with repo/state/search filters
|
|
|
|
|
- [ ] Label/priority filters
|
2026-05-19 01:18:46 -05:00
|
|
|
- [ ] Issue detail page
|
|
|
|
|
- [ ] "Create Task from Issue" button
|
|
|
|
|
|
|
|
|
|
## Phase 3: Task Integration
|
|
|
|
|
- [ ] Link tasks to Forgejo issues (foreign key on task)
|
|
|
|
|
- [ ] Task detail view shows linked issue info
|
2026-05-19 21:18:18 -05:00
|
|
|
- [x] Dashboard issue count widgets
|
2026-05-19 01:18:46 -05:00
|
|
|
|
|
|
|
|
## Phase 4: Polish
|
2026-05-19 21:18:18 -05:00
|
|
|
- [x] Forgejo webhook for cached issue updates
|
|
|
|
|
- [x] Issue status sync (open/closed)
|
|
|
|
|
- [ ] Auto-archive closed issues
|