representing guardian review timeouts in protocol types (#17381)

## Summary

- Add `TimedOut` to Guardian/review carrier types:
  - `ReviewDecision::TimedOut`
  - `GuardianAssessmentStatus::TimedOut`
  - app-server v2 `GuardianApprovalReviewStatus::TimedOut`
- Regenerate app-server JSON/TypeScript schemas for the new wire shape.
- Wire the new status through core/app-server/TUI mappings with
conservative fail-closed handling.
- Keep `TimedOut` non-user-selectable in the approval UI.

**Does not change runtime behavior yet; emitting `TimeOut` and
parent-model timeout messaging will come in followup PRs**
This commit is contained in:
Won Park
2026-04-10 20:02:33 -07:00
committed by GitHub
parent 824ec94eab
commit 37aac89a6d
25 changed files with 85 additions and 15 deletions

View File

@@ -3494,6 +3494,9 @@ pub enum ReviewDecision {
#[default]
Denied,
/// Automatic approval review timed out before reaching a decision.
TimedOut,
/// User has denied this command and the agent should not do anything until
/// the user's next command.
Abort,
@@ -3514,6 +3517,7 @@ impl ReviewDecision {
NetworkPolicyRuleAction::Deny => "denied_with_network_policy_deny",
},
ReviewDecision::Denied => "denied",
ReviewDecision::TimedOut => "timed_out",
ReviewDecision::Abort => "abort",
}
}