CollectTaskEvents collects lifecycle events for tasks with recent activity.
(ctx context.Context, db database.Store, createdAfter, now time.Time)
| 1110 | |
| 1111 | // CollectTaskEvents collects lifecycle events for tasks with recent activity. |
| 1112 | func CollectTaskEvents(ctx context.Context, db database.Store, createdAfter, now time.Time) ([]TaskEvent, error) { |
| 1113 | rows, err := db.GetTelemetryTaskEvents(ctx, database.GetTelemetryTaskEventsParams{ |
| 1114 | CreatedAfter: createdAfter, |
| 1115 | Now: now, |
| 1116 | }) |
| 1117 | if err != nil { |
| 1118 | return nil, xerrors.Errorf("get telemetry task events: %w", err) |
| 1119 | } |
| 1120 | events := make([]TaskEvent, 0, len(rows)) |
| 1121 | for _, row := range rows { |
| 1122 | events = append(events, buildTaskEvent(row, createdAfter, now)) |
| 1123 | } |
| 1124 | return events, nil |
| 1125 | } |
| 1126 | |
| 1127 | // HashContent returns a SHA256 hash of the content as a hex string. |
| 1128 | // This is useful for hashing sensitive content like prompts for telemetry. |