Skip to content

Upload prepared media and call generated Rust APIs directly - #23

Merged
meoyawn merged 4 commits into
masterfrom
codex/prepared-media-presign
Oct 1, 2026
Merged

meoyawn merged 4 commits into
masterfrom
codex/prepared-media-presign

Conversation

@meoyawn

@meoyawn meoyawn commented Sep 30, 2026 •

Copy link
Copy Markdown
Member

Prepared audio previously requested another signature before every storage PUT. Consume initial signed parts from episode-package admission so ordinary audio uses admission/presign, one streamed S3 PUT, and completion. Preserve durable upload checkpoints and additional signing for larger objects and later package files.

Regenerate the public Rust client with async operations from responsibleapi/oasmith#18. Call api.client().get_episode_order(params).await? directly and match the generated response variants. Remove Api::request, generated request wrappers, separate sending, handwritten status allowlists and intermediate JSON response parsing. Preserve cancellation, bounded reads, logging, authentication/payment diagnostics and event streaming through client configuration.

Companion API and pinned submodules: https://github.com/listenbox/listenbox2/pull/104. Ship the API and client changes together. Rebased onto the parent worktree's playlist creation and titleless-entry fixes.

Validation: generator HTTP fixtures, moon run client:lint, and moon run desktop:build passed. After integrating the current client and parent masters, root moon ci passed: 64 actions completed, including all 427 API tests and 87 dashboard browser tests. No test retries or reduced concurrency.

@meoyawn
meoyawn force-pushed the codex/prepared-media-presign branch from f3b1b4f to 9f52f4d Compare September 30, 2026 20:52
@meoyawn meoyawn changed the title Use admission signatures for prepared media uploads Upload prepared media with admission signatures and typed Rust responses Sep 30, 2026
let order: p::EpisodeOrder = if episode.is_empty() {
serde_json::from_value(
api.json(
match api

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can't have api.request bro

Comment thread crates/cli/src/commands.rs Outdated
api.json(
match api
.request(
api.client()

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is enough

@meoyawn meoyawn changed the title Upload prepared media with admission signatures and typed Rust responses Upload prepared media and call generated Rust APIs directly Oct 1, 2026
@meoyawn
meoyawn merged commit 7fb05ed into master Oct 1, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant