Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 30 Oct 2026. What's built · Install 0.1.0
jadpo
Reference: External services

External services · rule

package.operation_invalid

Provider operation holds what it can't, or lacks what it needs.

Area 11, External services; not declinable; the next step is usually the agent's.

A provider package's operations in resources/ are each read and checked: its keys, method: and path: (each placeholder one of its input's fields, by its spelling on the wire), its input: one of the package's object types, its failures: the package's own, and output_at: and failed_when: places in the answer.

A placeholder in path: is filled from the input's field of that spelling on the wire:

example
public resource parcels {    get: {        method: HttpMethod.get        path: "/v1/parcels/{parcelId}"        input: ParcelLookup        output: Parcel        changes: false        source: PackageSource.written    }}
text
error: `parcels.get`'s path names `{parcelId}`, which its input doesn't give --> shared/providers/acme_couriers/v1/resources/parcels.jadpo:4:15  |4 |         path: "/v1/parcels/{parcelId}"  |               ^^^^^^^^^^^^^^^^^^^^^^^^ a placeholder with no field  reason: A placeholder in `path:` is filled from the input's field of that spelling on the wire, and its input, `AcmeCouriers.ParcelLookup`, has no field sent as `parcelId`.  next: Add a field `parcelId` to the input, or give the field the provider's spelling with `wire_name: "parcelId"` (agent)  rule: package.operation_invalid  help: https://jadpo.dev/docs/errors/package.operation_invalidcheck failed: 1 error, 6 files

Markdown for agents: /docs/errors/package.operation_invalid.md.Built from Jadpo main at a707efb.