Alert rule + dashboard panel for pending orders with expired Stripe sessions #295
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/pal-e-platform#295
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Feature
Lineage
Part of the 2026-04-17 Utah Invitational stranded-orders response. Blocked by basketball-api ticket that emits
basketball_api_pending_orders_with_expired_sessiongauge.Repo
forgejo_admin/pal-e-platformUser Story
As the on-call human, I get paged (warning, not critical) when any pending payment order's Stripe session is expired for >15 minutes, so we can regen + resend before a parent complains.
Context
Existing payment-pipeline alerts live on branch
290-payment-pipeline-observability(commit432e24e):WebhookErrorRate— warning at 5mWebhookStale— warning at 10mNeither fires for the Utah Invitational failure mode. An expired session never triggers a webhook, so "no webhooks" looks normal. We need a direct gauge-based alert.
File Targets
monitoring/prometheusrules/payment-pipeline-alerts.yaml— add ruleTournamentOrdersWithExpiredSessions(warning, for: 15m)monitoring/dashboards/basketball-api-golden-signals.json(or its ConfigMap definition) — add a stat panel showing current value ofbasketball_api_pending_orders_with_expired_session, plus a time-series showing historymonitoring/prometheusrules/payment-pipeline-alerts.yaml— also consider a warningMonthlyOrdersWithExpiredSessionswith its own thresholdAlert expression template:
Files NOT to touch:
tenant-defaultsor other Prometheus rules files unrelated to payment pipelineAcceptance Criteria
TournamentOrdersWithExpiredSessionsrule in payment-pipeline-alerts.yaml, warning severity, 15m windowMonthlyOrdersWithExpiredSessionsrule, same patternyaml.safe_load) before commit — seefeedback_yaml_parse_validation.mdtofu plan -lock=falseoutput in PR shows rule+dashboard changes onlytofu fmt+tofu validatecleanTest Expectations
promtool check rules monitoring/prometheusrules/payment-pipeline-alerts.yamlpassesConstraints
payment-pipeline-alerts.yamlfor consistencyargocd app sync monitoringor rely on branch merge → reconcileChecklist
Related
project-pal-e-platformbasketball_api_pending_orders_with_expired_session