Artifact publish failures now show specific, tailored error messages for many more failure reasons
Artifact publishing (deploying) failures now come with much more specific error messages. A large new table of reason codes, covering cases like audience_conflict, capability_refused, contract_refused, not_owner, read_timeout, deadline_invalid, and live_path_cap, drives custom explanatory text instead of a small set of generic hardcoded checks. A new deadline_invalid case automatically retries the request with its deadline field removed, and errors about specific declared capabilities now get their own tailored messages.
This makes it much clearer why a publish attempt failed, rather than showing a generic error for many different underlying problems.