Create error summary when flows fail
Add the ability to summarize a workflow flow and persist the result to a `summary` field on the workflow record.
## Problem
Currently, workflows do not have a way to capture or store a human-readable summary of what the flow does. This makes it harder to understand a workflow at a glance without inspecting all its steps.
## Proposed Solution
- Add a summary field to workflows
- Add specific failure reasons to the summary field on workflows
- Add an LLM-generated summary of failure reason based on the job log
- Add an LLM-generated summary of successfully sessions
- Save the generated summary to a dedicated `summary` field on the workflow model
- Expose the `summary` field via the relevant API and UI
## Acceptance Criteria
- [x] A `summary` field exists on the workflow model https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231554
- [x] The summary is filled with concrete errors when runners fail https://gitlab.com/gitlab-org/gitlab/-/merge_requests/232583
- [ ] An LLM-generated summary of the job logs is added to the field when it fails
- [ ] An LLM-generated summary of the session is added when successful.
- [x] The summary is accessible via the API https://gitlab.com/gitlab-org/gitlab/-/merge_requests/232583
- [ ] The summary is displayed in the workflow UI
## References
Based on [this comment](https://gitlab.com/gitlab-org/gitlab/-/work_items/592972#note_3178446128)
issue