Port the Vivox validation program over the native Rust Vivox protocol adapter.
Deliverables
Preserve account/connector/session/participant control flows and useful diagnostics.
Keep proprietary service/SDK prerequisites explicit; do not ship or invoke the C# implementation.
Provide a fake TCP/control server and scripted events for CI.
Validation
CLI and fake-service workflows pass offline.
Opt-in live validation redacts credentials/tokens.
Teardown closes pipes, sessions, and tasks.
Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
Project constraints
Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
Provide deterministic offline/fake validation before opt-in live or device tests.
Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
Update program/source completeness, docs, and workspace validation evidence.
## Objective
Port the Vivox validation program over the native Rust Vivox protocol adapter.
## Deliverables
- Preserve account/connector/session/participant control flows and useful diagnostics.
- Keep proprietary service/SDK prerequisites explicit; do not ship or invoke the C# implementation.
- Provide a fake TCP/control server and scripted events for CI.
## Validation
- CLI and fake-service workflows pass offline.
- Opt-in live validation redacts credentials/tokens.
- Teardown closes pipes, sessions, and tasks.
## Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
## Project constraints
- Programs must use the native Rust public API; no CLR, C# process, bridge, RPC, or fallback.
- Provide deterministic offline/fake validation before opt-in live or device tests.
- Never log/store credentials or capability tokens, and keep destructive/spending actions separately opt-in.
- Update program/source completeness, docs, and workspace validation evidence.
hugo
added this to the 11 - Programs and live-grid validation milestone 2026-08-08 08:24:35 +00:00
Added a bounded async Vivox XML/TCP control client with request correlation, connector/account/session state, device enumeration, participant events and volume control, opaque secret handles/URIs, safe rejection diagnostics, and idempotent reverse-order teardown.
Replaced the VivoxTest stub with credential-gated live grid/capability validation. The proprietary daemon is only connected to at a supplied endpoint and is never bundled, located, started, or invoked. Live audio has its own --allow-session-audio gate.
Added a scripted in-process loopback control server that validates the complete ten-action connector/account/session/participant/logout/shutdown sequence and supports scripted rejection events.
Added CLI, protocol, translated compatibility, documentation, and completeness/parity updates.
Issue-scoped verification:
3 Vivox protocol unit tests passed.
2 VivoxTest module unit tests passed.
4 VivoxTest CLI/fake-service tests passed, including secret-redaction and teardown cases.
vivox_protocol_semantics and extension_shims compatibility tests passed.
Strict Clippy passed for the adapter, program/CLI targets, and compatibility case.
Rust mapping, API shim, and surface/parity checks passed (0 pending/unreviewed).
Live validation remains opt-in because no user credentials or proprietary Vivox service were supplied; the gated live path compiles and uses the same tested native control API.
Implemented in da4afec and pushed to main.
Native Rust implementation:
- Added a bounded async Vivox XML/TCP control client with request correlation, connector/account/session state, device enumeration, participant events and volume control, opaque secret handles/URIs, safe rejection diagnostics, and idempotent reverse-order teardown.
- Replaced the VivoxTest stub with credential-gated live grid/capability validation. The proprietary daemon is only connected to at a supplied endpoint and is never bundled, located, started, or invoked. Live audio has its own --allow-session-audio gate.
- Added a scripted in-process loopback control server that validates the complete ten-action connector/account/session/participant/logout/shutdown sequence and supports scripted rejection events.
- Added CLI, protocol, translated compatibility, documentation, and completeness/parity updates.
Issue-scoped verification:
- 3 Vivox protocol unit tests passed.
- 2 VivoxTest module unit tests passed.
- 4 VivoxTest CLI/fake-service tests passed, including secret-redaction and teardown cases.
- vivox_protocol_semantics and extension_shims compatibility tests passed.
- Strict Clippy passed for the adapter, program/CLI targets, and compatibility case.
- Rust mapping, API shim, and surface/parity checks passed (0 pending/unreviewed).
- cargo check --workspace --all-targets --locked -j 1 passed.
Live validation remains opt-in because no user credentials or proprietary Vivox service were supplied; the gated live path compiles and uses the same tested native control API.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Objective
Port the Vivox validation program over the native Rust Vivox protocol adapter.
Deliverables
Validation
Prerequisite
The library behavior required by the program is implemented and its translated parity tests pass.
Project constraints
Implemented in
da4afecand pushed to main.Native Rust implementation:
Issue-scoped verification:
Live validation remains opt-in because no user credentials or proprietary Vivox service were supplied; the gated live path compiles and uses the same tested native control API.