Skip to content

feat(connector): type health.incidents - #179

Merged
Gabrielpanga merged 2 commits into
masterfrom
feat/connector-health-incidents
Sep 8, 2026
Merged

feat(connector): type health.incidents#179
Gabrielpanga merged 2 commits into
masterfrom
feat/connector-health-incidents

Conversation

@Gabrielpanga

@Gabrielpanga Gabrielpanga commented Sep 2, 2026

Copy link
Copy Markdown
Member

Types the incidents array now returned on a connector's health object.

Connector.health.incidents — the incidents affecting that connector right now, as published on status.pluggy.ai, each with a customer-facing title, severity, state and a url permalink. Optional, because it is absent when the connector has no active incident, so its presence is the signal itself.

Adds ConnectorIncident plus the three enums (ConnectorIncidentKind, ConnectorIncidentSeverity, ConnectorIncidentState) as as const arrays with derived union types, matching how the rest of this file is written.

The doc comments carry the two things a caller cannot infer from the shape:

  • It describes the institution, not the caller's own connections — that's ConnectorHealthDetails, which sits right next to it and answers a different question.
  • Only incidents active at this moment are listed; a scheduled maintenance appears once its window opens, not when it is announced.

Types only, no runtime change.

pnpm build and eslint clean. tsc --noEmit reports zero errors under src/; the pre-existing failures in tests/payments/* (nock RequestBodyMatcher) are untouched by this.

@Gabrielpanga Gabrielpanga changed the title Type health.incidents on Connector feat(connector): type health.incidents Sep 2, 2026
Types the `incidents` array now returned on a connector's `health` object: the
incidents affecting that connector right now, each with a customer-facing title,
severity, state and a permalink to status.pluggy.ai.

Absent when the connector has none, so its presence is the signal — hence
optional. It describes the institution, not the caller's own connections, which
is what ConnectorHealthDetails already covers; the doc comment says so, because
the two live next to each other and answer different questions.
@Gabrielpanga
Gabrielpanga force-pushed the feat/connector-health-incidents branch from 9182dda to 7200b25 Compare September 3, 2026 07:17
Two more fields on the incident object.

`type` is what is broken, as opposed to how badly (severity) or how far along
Pluggy is (state) — nineteen values, so a caller can group the same problem
across institutions and decide which incidents are worth putting in front of a
user. A scheduled maintenance and a missing-transactions bug both read as
"degraded" otherwise.

`product` names the affected product line.

Both are required: OTHER covers the unclassified case, so absent is not a state
a caller has to handle.
@Gabrielpanga
Gabrielpanga merged commit b55fadc into master Sep 8, 2026
1 of 2 checks passed
@Gabrielpanga
Gabrielpanga deleted the feat/connector-health-incidents branch September 8, 2026 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants