QueryTaskInbox returns the observer-backed aggregate task inbox view for one actor.
( ctx context.Context, query TaskInboxQuery, actor taskpkg.ActorIdentity, )
| 562 | |
| 563 | // QueryTaskInbox returns the observer-backed aggregate task inbox view for one actor. |
| 564 | func (o *Observer) QueryTaskInbox( |
| 565 | ctx context.Context, |
| 566 | query TaskInboxQuery, |
| 567 | actor taskpkg.ActorIdentity, |
| 568 | ) (TaskInboxView, error) { |
| 569 | if ctx == nil { |
| 570 | return TaskInboxView{}, errors.New("observe: task inbox context is required") |
| 571 | } |
| 572 | if err := query.Validate(); err != nil { |
| 573 | return TaskInboxView{}, err |
| 574 | } |
| 575 | |
| 576 | normalizedActor, err := normalizeTaskInboxActor(actor) |
| 577 | if err != nil { |
| 578 | return TaskInboxView{}, err |
| 579 | } |
| 580 | |
| 581 | snapshot, err := o.loadTaskSnapshot(ctx, query.summaryQuery()) |
| 582 | if err != nil { |
| 583 | return TaskInboxView{}, err |
| 584 | } |
| 585 | triageStates, err := o.registry.ListTaskTriageStates(ctx, normalizedActor) |
| 586 | if err != nil { |
| 587 | return TaskInboxView{}, fmt.Errorf("observe: list task triage states: %w", err) |
| 588 | } |
| 589 | |
| 590 | return taskInboxFromSnapshot(snapshot, triageStates, query, normalizedActor), nil |
| 591 | } |
| 592 | |
| 593 | func (o *Observer) collectTaskHealth(ctx context.Context) (TaskHealth, error) { |
| 594 | if ctx == nil { |
nothing calls this directly
no test coverage detected