Pyncht status

All systems operational

8 of 8 components reporting normally · last checked when this page loaded

This is a prototype status page. Pyncht does not yet run production payment infrastructure, so nothing here is live monitoring. Every status, uptime figure, day marker, and incident below is illustrative sample data, generated in your browser from a fixed seed so the page reads the same on every load. When Pyncht does process live traffic, this page will be wired to the real probes and will say so.

Components

Uptime is measured over the trailing 90 days. Day markers are drawn from the sample seed and are not tied to the incidents listed below.

  • Operational
  • Degraded
  • Partial outage

90 days ago Today

Incident history

Four sample post-mortems, written the way we intend to write real ones: what broke, why it broke, and what stops it happening again.

  1. Resolved

    Elevated 502s on /v1/charges

    41 minutes API, Checkout

    Cause. A rebase dropped CONCURRENTLY from an index migration on the charges table. The build took an ACCESS EXCLUSIVE lock, writes queued behind it, and the gateway started returning 502 once connection wait exceeded its 30-second ceiling.

    Fix. The migration linter now rejects any CREATE INDEX without CONCURRENTLY, and the charge path sheds to a read replica when p99 lock wait passes two seconds instead of holding the connection.

  2. Resolved

    Assistant answered without citing the ledger

    1 hour 7 minutes Assistant

    Cause. A prompt template deploy removed the block that attaches cost-ledger row IDs to each claim. Answers still rendered, confidently, with nothing underneath them — the worst failure mode this feature has, and the one nothing alerted on.

    Fix. Responses with an uncited numeric claim are now rejected at the API boundary rather than shown, and the template ships with a golden-output test that fails CI if the citation block goes missing.

  3. Resolved

    Savings analysis served nine-day-old interchange rates

    8 hours 52 minutes Savings analysis

    Cause. The interchange refresh job matched files by name. The network changed its export from VIC_20260602 to VIC-2026-06-02, the glob matched nothing, and a zero-row import was treated as a successful no-op.

    Fix. A zero-row import is now a hard failure that pages the on-call, and any analysis built on rates older than 36 hours is labelled stale in the UI and in the API response instead of being presented as current.

  4. Resolved

    Webhook delivery lagged up to 22 minutes

    2 hours 14 minutes Webhooks

    Cause. One endpoint began holding connections open for the full 30-second window. The delivery pool was global, so 400 stuck workers starved every other merchant's queue behind a single slow consumer.

    Fix. Delivery is now sharded per endpoint with its own concurrency cap and a 10-second hard timeout. A slow endpoint can only delay its own queue, and sustained timeouts move it to the backoff tier automatically.

Older incidents are not shown because there are none to show — Pyncht has no production history yet. See the product changelog for what has actually shipped.

Get notified when something breaks

One email per incident, one when it is resolved, nothing else.

Nothing is sent anywhere. There is no mailing list behind this form yet — submitting it only prints a confirmation on this page, and the address never leaves your browser.