Test plan: Notifications and Async Activity Signals¶
Status: DRAFT — spec.md's Open Question 1 (whether notifications, overdue tasks, and SLA-breached approvals nudge as one combined signal or distinct categories) is unresolved. The scenarios below cover what's already resolved; scenario 1 needs to be finalized once that question closes.
Scenarios¶
- Combined vs. categorized nudge framing. (blocked on Open Question 1)
-
Once resolved, verify the nudge wording matches whichever framing was chosen (single combined count vs. per-category counts).
-
List vs. count threshold (Resolved Decisions — content specificity).
- Given a user with 1–2 pending items (notifications + overdue tasks combined)
- When they initiate a chat
- Then the nudge lists each item individually.
- Given a user with 3 or more pending items
-
Then the nudge collapses to a count (e.g., "You have 4 overdue tasks and 1 pending notification — click the link to review.").
-
SLA-breach gating for approvals (Resolved Decisions — pending approvals).
- Given a user with a pending approval still within SLA
- When they initiate a chat
- Then no nudge is triggered for that approval.
- Given a user with an approval whose SLA has been breached
-
Then the nudge includes it.
-
No pending items → no nudge.
- Given a user with no unread/expired notifications, no overdue tasks, and no SLA-breached approvals
- When they initiate a chat
-
Then the response is unaffected — no nudge segment is added.
-
Threshold is configurable without a code change (Resolved Decisions — threshold configurability).
- Given the list/count threshold is implemented as a named constant/env var
- When the value is changed
-
Then the list-vs-count cutover point shifts accordingly with no redeploy of application code.
-
Deep link reuses the "Continue in Novaworks" mechanism.
- Given a nudge is shown
- When the user follows its deep link
- Then it resolves through the same mechanism as ../continue-in-novaworks/spec.md (per ../software-design/adr-gateway-owns-untranslatable-response-detection.md), landing the user in the Nova portal where the underlying items can be viewed and acted on.
Out of scope for this pass¶
- Native push notifications, Slack/Teams messages, mobile push, email digests — explicitly out of scope in spec.md.
- Nudge-fatigue mitigation (e.g., not re-nudging on unchanged items across chat turns) — not yet designed; flagged as a Risk in spec.md.