Add `status_history` to `agents` to keep track of status changes and reasons
- Dominant language
- Python
- Stars
- 670
- Forks
- 183
- Avg merge
- 17h 7m
- Merged PRs (30d)
- 358
Description
prerequisite of #1844
Let's add a status history just like the session status history (refs #412 and #480) representing the status changes of agents as a list of the pairs of the new status, the timestamp, and the reason.
- [ ] **manager:** Update the database and GraphQL schema.
- [ ] **manager:** When the agent alive/lost is detected (e.g., in the heartbeat handler), add the status history item with the status `"alive"` or `"lost"`.
- [ ] **manager:** When the status and schedulable fields are changed via GraphQL mutations, add the status history item with the status `"schedulable-off"` or `"schedulable-on"`.
- [ ] **control panel:** Add a column to the agent view to inspect `status_history`.
JIRA Issue: BA-161
Contributor guide
Assessment
This issue has not been assessed yet.