36 lines
1.3 KiB
TOML
36 lines
1.3 KiB
TOML
# crates/rutster-brain-realtime/Cargo.toml
|
|
[package]
|
|
name = "rutster-brain-realtime"
|
|
version = "0.1.0"
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
repository.workspace = true
|
|
description = "OpenAI Realtime speech-to-speech brain — translates slice-2's tap protocol to OpenAI Realtime's event schema (green-zone per ADR-0008; slice-3 spec §1.1, §4)."
|
|
|
|
[dependencies]
|
|
rutster-tap = { path = "../rutster-tap" }
|
|
rutster-media = { path = "../rutster-media" } # for PcmFrame in tests (spec §4.2 audio round-trip)
|
|
tokio = { workspace = true, features = ["full"] }
|
|
tokio-tungstenite = { workspace = true, features = ["connect"] }
|
|
futures-util = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
serde = { workspace = true }
|
|
tracing = { workspace = true }
|
|
tracing-subscriber = { workspace = true }
|
|
url = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
base64 = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
# http: Request/Response builder for the WS handshake (Task 9's main.rs).
|
|
# This task's unit tests assert URL + headers shape only.
|
|
http = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3"
|
|
|
|
[features]
|
|
default = []
|
|
# Mock mode: in-process fake OpenAI Realtime WS server (no real API calls).
|
|
# Used by the integration test + the offline dev loop (spec §7.3).
|
|
mock = []
|