feat(teams): granular progress notifications with direct/leader mode

- Replace progress_notifications toggle with granular config:
  dispatched (on), progress (on), failed (on) + delivery mode
- Direct mode: outbound to channel, no AI processing
- Leader mode: inject into leader session with NO-ACTION instructions
- Add consumer.team-notify subscriber for event forwarding
- Enrich TeamTaskEventPayload with TaskNumber, ProgressPercent/Step
- Add auto-status system prompt section
- UI: card-select for delivery mode (Zap/Bot icons), 3 toggles
This commit is contained in:
viettranx committed 2026-03-16 22:46:51 +07:00
1 parent 2c5ae04c01
commit eee79d111e
8 files changed
+311 -82

No files matched your search

+5
View File
@@ -107,6 +107,7 @@ type QualityGateRetryPayload struct {
type TeamTaskEventPayload struct {
TeamID string `json:"team_id"`
TaskID string `json:"task_id"`
TaskNumber int `json:"task_number,omitempty"`
Subject string `json:"subject,omitempty"`
Status string `json:"status"`
OwnerAgentKey string `json:"owner_agent_key,omitempty"`
@@ -117,6 +118,10 @@ type TeamTaskEventPayload struct {
ChatID string `json:"chat_id"`
Timestamp string `json:"timestamp"`
// Progress (for team.task.progress events).
ProgressPercent int `json:"progress_percent,omitempty"`
ProgressStep string `json:"progress_step,omitempty"`
// Actor info for audit trail (recorded to team_task_events by subscriber).
ActorType string `json:"actor_type,omitempty"` // "agent", "human", "system"
ActorID string `json:"actor_id,omitempty"` // agent key, user ID, or system identifier