Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 5 Nov 2026. What's built · Install 0.3.0
jadpo
ReferenceReview and records

ToolsReview and records

Package upgrades

An upgrade is a change to jadpo.lock and packages/, reviewed like any other change, its surface.jadpo_record diff included. The review compares the provider operations and library declarations your app uses, matched by package, resource and operation with the version ignored. So a call moved from one version's connection to the next is compared, not listed as removed and added.

  • Needs a person: a used operation removed; a used field removed or retyped; a new failure on a used operation; a host or credential scheme changed; a service's image new or changed; a package installed from a third party's git repository.
  • Doesn't need a person: new operations or optional fields, documentation, and changes to operations your app never calls.
  • Shown, and needing a person as a new host: a new outbound: grant to a service, and a new connection's hosts, each a NetworkChange.
  • A package from git needs a person (PackageChange.git_source) unless its repository is under one of packages:'s own_sources: (Installing safely).

What counts as used is read on the before side, since the agent has usually fixed the compile error by the time jadpo check is judged: the app's code, outside tests and comments, writing a name through the package (Postcodes.uk.parse) or through a connection to it (couriers.bookings.get), and the types and failures those reach through their inputs, outputs and fields. A connection the code never writes, or that application { } names elsewhere (email: { connection: mail }), serves the app through a capability, so all its operations count as used. A provider's hosts and credential scheme count once a connection reaches the package. A package removed altogether isn't an upgrade.

Each change has its entry in Acceptances, its subject without the version. A new required input field, a new enum variant, a failure no longer listed and a changed failure message need nobody: the compiler stops what they would break, or nothing relied on them.

jadpo package update <name> prints this part of the review, and the approval report says each in plain words. It is the same output as the upgrade plan External services refers to, not a separate format.

Markdown for agents: /docs/package-upgrades.md.Built from Jadpo main at aee2e8f.