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 aNetworkChange. - A package from git needs a person (
PackageChange.git_source) unless its repository is under one ofpackages:'sown_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.