Expand description
Bounded image calls with explicit progress. There is no implicit retry.
The host must own a unique operation identity and scope for each generation. Resource publication is idempotent; upstream image generation is not. A new ImageProgress is not permission to repeat an uncertain billed generation. Dropping the future stops later calls. Completed bytes/usage and recorded publication identities survive in caller-owned progress; the host can query publication_status and release its owned handles explicitly. This adapter never deletes resources or silently compensates a partial publication.
All requests, source options, byte caps and required delivery facts are checked before the first upstream send. All output images are validated before the first publish. Non-2xx responses retain their original HTTP body; invalid decoded 2xx responses retain the typed native response, including usage, so failed output conversion does not erase billing evidence.
Structs§
- Image
Limits - Image
Outcome - Image
Progress - Caller-owned progress survives future cancellation. Once generation starts, this object cannot be reused for generation: a dropped send may have billed upstream. All completed image bytes and native usage remain available. Publication operation IDs are recorded BEFORE awaiting publish; recover an uncertain result with ResourceAccess::publication_status(scope, id).