[Enhancement] Prompt release plan owners to update past-due / approaching SDK release target month
- Dominant language
- C#
- Stars
- 135
- Forks
- 260
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 143
Description
### Summary
Add prompting that asks a release plan owner to update (or abandon) their **SDK release target month** (`Custom.SDKReleaseMonth`) when it is past due or approaching, so PMs no longer have to manually chase owners to keep the field accurate. The Release Plan Dashboard PM View already surfaces **Past Due Release Plans** and **Approaching SDK Release Target (This & Next Month)**; this closes the loop by driving owner action.
### Problem
Keeping `SDKReleaseMonth` accurate currently depends on PMs (Justin, Josephine) reviewing the dashboard and chasing owners one by one. Stale target months degrade dashboard signal and CPEX / Cloud Lifecycle KPI accuracy. We want the system to nudge the owner directly in two situations:
1. The owner is actively using the agent.
2. The owner is not using the agent.
### Current state (relevant existing building blocks)
- `SDKReleaseMonth` is stored on the ADO Release Plan work item (`Custom.SDKReleaseMonth`, format `MMMM yyyy`).
- `DevOpsService.ListOverdueReleasePlansAsync()` detects past-due plans.
- `ReleasePlanTool.ListOverdueReleasePlans(notifyOwners, emailerUri)` -> `NotifyOwnersOfOverdueReleasePlans` -> `SendEmailNotification` already email the owner (`ReleasePlanSubmittedByEmail`) via an emailer URI; the existing email already mentions updating the target date.
### Desired behavior
**Scenario A — owner is using the agent.**
When the agent loads or operates on a release plan whose `SDKReleaseMonth` is past due or in the current/next month (and the plan is not yet released), prompt the owner: show the current target, flag it as past due / approaching, and offer to update the month (reuse the existing update path) or abandon the plan.
**Scenario B — owner is not using the agent.**
We need a way to reach the owner outside an agent session. **One suggested option is email** to the release plan owner, since the notification plumbing largely already exists (`SendEmailNotification` + the overdue detection above). This is a suggestion, not a mandate: alternative approaches are welcome as long as they solve the core problem (the owner is prompted to update or abandon a past-due / approaching target month without a PM chasing them).
### Definitions
- **Past due:** `SDKReleaseMonth` < first day of current month; plan not released; state In Progress/Not Started/New.
- **Approaching:** `SDKReleaseMonth` is the current or next month; plan not released.
### Acceptance criteria
- [ ] The agent detects past-due and approaching plans using the definitions above.
- [ ] In an agent session touching such a plan, the owner is prompted to update or abandon the target month, and can do so inline.
- [ ] Owners of past-due / approaching plans are reached outside of agent sessions (email suggested) so a PM does not have to chase them; the exact mechanism is open to the implementer.
- [ ] Test plans and excluded/abandoned plans are excluded.
### Notes
- Open to the implementer (Praveen): the out-of-agent mechanism is not prescribed beyond email as a starting suggestion. Please confirm understanding of the problem before settling on an approach.
Contributor guide
Assessment
This issue has not been assessed yet.