Replace the comment-only list with a Linear-style unified timeline that
interleaves field changes and comments chronologically.
Backend:
- activity_listeners.go: records field changes (status, assignee, description,
task completed/failed) to activity_log table on domain events
- Timeline API: GET /api/issues/{id}/timeline merges activity_log + comments
sorted by created_at
- Comment reply: parent_id column + handler support for threading
Frontend:
- Unified timeline replaces comment list: activity entries as compact muted
lines, comments as Card components with reply threading
- Filter toggle (All / Comments / Activity)
- Reply UI: inline editor under comments with Cancel/Reply buttons
- Real-time sync for activity:created + comment events
- 10 new Go tests, all passing
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| activity.sql.go | ||
| agent.sql.go | ||
| comment.sql.go | ||
| db.go | ||
| inbox.sql.go | ||
| issue.sql.go | ||
| member.sql.go | ||
| models.go | ||
| personal_access_token.sql.go | ||
| runtime.sql.go | ||
| runtime_usage.sql.go | ||
| skill.sql.go | ||
| subscriber.sql.go | ||
| user.sql.go | ||
| verification_code.sql.go | ||
| workspace.sql.go | ||