Skip to content

[pull] main from openai:main - #189

Merged
pull[bot] merged 4 commits into
Pyrex77:mainfrom
openai:main
Sep 27, 2026
Merged

pull[bot] merged 4 commits into
Pyrex77:mainfrom
openai:main

Conversation

@pull

@pull pull Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

markstuart-oai and others added 4 commits September 27, 2026 18:55
A custom base URL such as https://example.test/v1/customer?tenant=sample
failed to open Realtime WebSockets. Both the base URL normalization and
sync/async Realtime path preparation appended to HTTPX's raw_path, which
includes the query. As a result, the server received /v1/customer
instead of /v1/customer/realtime.

Append the slash and endpoint before the existing query, preserving the
original query and connection options. Four real WebSocket tests verify
the path, authentication and header overrides, configured compression,
outbound messages, same-connection recovery after an API error, unknown
fields and clean close.

Validation:
- Before: both query-bearing tests failed, both plain-URL cases passed.
- After: 149 affected Realtime/WebSocket/HTTPX/redirect/region tests and
12 client base URL tests passed under each of Pydantic 1 and 2. All four
final tests passed on both.
- Full Ruff, mypy and Pyright passed.

No new API or schema changes. Shared base URL normalization also applies
to HTTP clients; broader HTTP relative-query behavior is outside this
change.
## Summary

Adds credential metadata, session options and speech voices, and
corrects the file download response description.

## Changes

- Add metadata to Agents vault credential creation and results; allow
credential updates without replacing authentication.
- Support the ultrafast Agents service tier and report
misalignment_policy_violation for session turns.
- Include fable, onyx and nova in speech voice options.
- Describe file content as binary while preserving legacy
retrieve_content() and its Accept header behavior.

## Compatibility

When constructing beta Agents Credential models yourself, supply
`metadata` (for example, `{}`). Exhaustive handlers should account for
the new service tier and error code.

Co-authored-by: markstuart-oai <323302876+markstuart-oai@users.noreply.github.com>
Stacked on #3971, which fixes base URL normalization. Once that is
merged, this PR can be retargeted to main.

Live WebSocket primary, fork and sideband managers appended their
endpoint after the base URL query. For example,
/v1/customer?tenant=sample dialed /v1/customer instead of the Live
endpoint. Append the path before the query in all six sync/async
managers.

Tests cover the actual WebSocket upgrade, preserved query parameters and
escaped session IDs, caller-initiated primary and fork starts, immediate
sideband events without waiting for session.started, follow-up updates
and clean close.

Validation: all six query cases failed and six plain cases passed before
the fix. After it, all 363 affected tests and 12 base URL tests passed
on both Pydantic v1 and v2. Full Ruff, mypy and Pyright passed. No
hosted-service or stored-fork-eligibility claims.
…3970)

Valid fractional Live transcript grouping timeouts can hang on the next
transcript event. For example, after a fragment ends at 200 ms, a
timeout of 0.1 ms is scheduled for 200.1; subtracting 200 later rounds
to less than 0.1, so the scheduler never consumes that deadline.

Compare absolute times against the same deadlines that the scheduler
creates. This preserves the existing API and options and adds bounded
sync/async regressions for assistant silence, speaker separation, and
isolated backchannels.

Validation:
- All six regressions safely reproduced the hang before the fix.
- 224/224 Live tests passed on both Pydantic v1 and v2 after the fix.
- Full Ruff, mypy and Pyright passed.
- No schema, generated SDK, dependency or API changes.
@pull pull Bot locked and limited conversation to collaborators Sep 27, 2026
@pull pull Bot added the ⤵️ pull label Sep 27, 2026
@pull
pull Bot merged commit 4ef4129 into Pyrex77:main Sep 27, 2026
4 of 6 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant