Skip to main content

Status

Current statusโ€‹

ServiceStatus
Admin app (app.pmfriend.com)๐ŸŸข Operational
API๐ŸŸข Operational
Tenant report page (/report/{token})๐ŸŸข Operational
Contractor magic-link (/jobs/{token})๐ŸŸข Operational
AI triage + duplicate + digest (Claude)๐ŸŸข Operational
Daily compliance scanner๐ŸŸข Operational
Landing page (pmfriend.com)๐ŸŸข Operational

Last updated by the on-call engineer. For a live feed, see https://app.pmfriend.com/health.

Planned maintenanceโ€‹

None currently scheduled.

Recent incidentsโ€‹

2026-04-08 โ€” App Runner cold-start 502s (resolved)โ€‹

Duration: 14:05 โ€“ 14:41 AEST (36 min) Impact: Admin app returned intermittent 502s during a deploy cycle after an OOM caused by an undersized container. Root cause: Deploy rolled out on the old 0.25 vCPU / 0.5 GB tier, which Spring Boot cannot boot within. App Runner restarted the task repeatedly until we bumped to 0.5 / 1. Fix: Permanent resize to 0.5 vCPU / 1 GB. Added to deploy runbook.

2026-03-12 โ€” Flyway checksum mismatch on deploy (resolved)โ€‹

Duration: 11:20 โ€“ 12:05 AEST (45 min) Impact: Backend refused to start; all API traffic 503'd. Root cause: A previously-applied migration was edited by a contributor unaware of Flyway's immutability rule. Fix: Reverted the migration to its original form, added V17__... as the forward-fix. Added to contributor docs.

SLOs (internal)โ€‹

  • API availability: 99.5% monthly
  • Triage latency (p95): < 3 seconds
  • Magic-link dispatch: < 15 minutes from click to contractor delivery (slower windows flagged as degraded)
  • Daily scanner: completes by 22:00 UTC every day

We don't publish these as contractual SLAs by default โ€” over-promising availability we can't statistically demonstrate would be dishonest. Agencies on bespoke contracts can negotiate written SLAs.

Reporting an outageโ€‹

If the status on this page doesn't match your experience, email hello@pmfriend.com or the security inbox (if it looks like a security incident). We'd rather receive a duplicate report than miss one.