fix: restore doc bar on RtcSession accessors; refresh stale README status
Some checks failed
CI / fmt (pull_request) Failing after 42s
CI / clippy (pull_request) Failing after 1m19s
CI / test (1.85) (pull_request) Failing after 49s
CI / test (stable) (pull_request) Failing after 29s
CI / deny (pull_request) Failing after 46s

Two Important findings from the final whole-branch review:

T4-M3: RtcSession::channel_id/channel_state/is_closed lacked /// docs
(AGENTS.md mandates /// on every public item; learner-facing code is a
primary product). One-line docs added per existing /// style in rtc_session.rs.

T7-M2: README "Status" section still read "Scoping. No code yet" — stale
post-slice-1. Updated to reflect slice-1 implementation status; minimal
edit, surrounding content preserved.
This commit is contained in:
adlee-was-taken
2026-06-28 13:13:27 -04:00
parent 85a58ab880
commit 3041036d94
2 changed files with 13 additions and 3 deletions

View File

@@ -130,9 +130,11 @@ exactly as integrators did on top of Asterisk.
## Status
Scoping. No code yet — the [vision revision](docs/superpowers/specs/2026-06-26-vision-revision-design.md)
and ADRs define the architecture; the workspace will be scaffolded from the capability ladder
and the thin-slice first proof.
Slice 1 (WebRTC media loopback) implemented; spearhead steps 26 pending. The
[vision revision](docs/superpowers/specs/2026-06-26-vision-revision-design.md)
and ADRs define the architecture; the
[slice-1 design](docs/superpowers/specs/2026-06-28-slice-1-webrtc-loopback-design.md)
documents the active build.
## First proof (the spearhead)

View File

@@ -151,14 +151,22 @@ impl RtcSession {
})
}
/// Returns the session's `ChannelId` — also the REST API session id
/// surfaced at `/v1/sessions/{id}` (spec §4.5).
pub fn channel_id(&self) -> ChannelId {
self.channel.id
}
/// Returns the current signaling state (`ChannelState` from
/// `rutster-call-model`): `New` → `Connecting` → `Connected` →
/// `Closing` → `Closed`.
pub fn channel_state(&self) -> ChannelState {
self.channel.state
}
/// True once the channel has reached `ChannelState::Closed` — str0m
/// resources are dropped; the loop driver returns `None` and the
/// tokio task tears down.
pub fn is_closed(&self) -> bool {
matches!(self.channel.state, ChannelState::Closed)
}