Skip to content

feat(spatius): update sdk to 1.1.1 and forward session options - #2286

Open
3DRX wants to merge 3 commits into
TEN-framework:mainfrom
spatius-ai:feat/spatius-extra-params
Open

3DRX wants to merge 3 commits into
TEN-framework:mainfrom
spatius-ai:feat/spatius-extra-params

Conversation

@3DRX

@3DRX 3DRX commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Summary

Upgrade spatius[opus] from 1.0.4 to 1.1.1 and expose params.extra_params
so callers can pass server session options such as
{"server_post_process": "false"} to the SDK. Copy these options during
configuration normalization and session creation to isolate caller state.
The manifest exposes params.extra_params as an object with an empty default.

Automatic region selection now appears in connection-success logs and the
existing vendor_metadata.region field using the SDK session's resolved region.
The requested configuration stays intact, and disconnect clears session-specific
reporting. Explicitly configured regions continue to work.

The SDK upgrade includes automatic region selection and caching, shared TLS setup,
initialization telemetry, and separate 10-second session-token request and
WebSocket server-confirmation timeouts. Preserve the extension's 24 kHz Ogg Opus
default, explicit 30-minute token expiry, Agora egress, and TEN lifecycle. Optional
prewarming and token prefetching are not enabled.

Set the extension version to 0.2.5.

Validation

Validated with Python 3.10.12 and Spatius 1.1.1 in a disposable container using
ghcr.io/ten-framework/ten_agent_build:0.7.14:

  • task test-extension EXTENSION=agents/ten_packages/extension/spatius_avatar_python:
    18 passed, including 14 new parameterized session regression cases.
  • Tests use the real SDK constructor/configuration types with mocked network
    operations. Coverage includes automatic/pinned regions, Agora configuration,
    Opus/PCM and expiry settings, defensive copying, resolved-region reporting and
    cleanup, audio/EOF/interruption/shutdown, and startup error propagation without
    launching the audio processing task.
  • task check: passed, 1,432 Python files unchanged by Black.
  • task lint-extension EXTENSION=spatius_avatar_python: passed, 10.00/10.
  • git diff --check, Python syntax, JSON manifests, version and dependency
    consistency checks: passed.
  • Full task lint: failed on unrelated extensions, with no Spatius
    diagnostics. The environment lacks other vendors' dependencies, and
    smallest_tts_python references a missing ten_ai_base.utils.redact_headers
    member. The full repository lint gate is not claimed as passing.

Live Spatius/Agora playback was not exercised. A supplemental pip check reports
the development image's existing pygobject dependency on missing pycairo.

@3DRX 3DRX changed the title feat(spatius): forward avatar session extra params, update spatius to 1.0.5 feat(spatius): update sdk to 1.1.1 and forward session options Sep 11, 2026
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