v0.12.25

heygen-com/hyperframesv0.12.25Aug 31, 2026by DmitriyG228

Upgrading?

AI Summary

A maintenance release adding participant reading, Teams passcode support, and pod resource sizing.

Key Highlights

  • New API endpoint to read meeting participants with honest roster markers.
  • Teams bots now support numeric IDs combined with passcodes.
  • Spawned bot and agent-worker pods now declare CPU and memory limits.
  • MCP tool added for filing tickets from sessions.

New Features

  • Meeting participants API
  • Teams passcode joins
  • Pod resource sizing (requests/limits)
  • MCP `report_issue` tool
  • Unified `POST /acts` API endpoint

Full Release Notes

## v0.12.25

Maintenance release: everything merged since v0.12.23 (v0.12.24's lite/compose images were never published — its tag predated the release-commit convention; this release closes that gap too).

### Added
- **Meeting participants read** — `GET /meetings/{platform}/{native_meeting_id}/participants`, rows labelled `invite` / `speaker`, owner-scoped, with an honest `observed_roster: "not_recorded"` marker (#451).
- **Teams passcode joins** — numeric Teams id + `passcode` now builds the real `…/meet/<id>?p=<passcode>` URL; unknown aliases are a typed `422`; the passcode stays out of stored URLs and logs (#892).
- **Sized spawned pods** — bot and agent-worker pods declare CPU/memory requests + limits via `runtime.workloadResources`, so quota-controlled namespaces admit them (#1005).
- **MCP `report_issue`** — an agent can file a ticket from inside its session, bound to the cluster's record of the same meeting (#1272).

### Changed
- **One API home for interactive acts** — `POST …/acts` per ADR-0035; speak/chat kept as aliases; screen/avatar retire from `api.v1`; the status page stops overstating speak (#1089).
- **Meetings list ordered by event time**, active meetings pinned to the top (#1226).

### Fixed
- **Capture-fault ≠ empty room** — a bot whose audio capture breaks mid-meeting no longer ends a live meeting as `completed(left_alone)`; it logs a suspected capture fault and attempts a restart (#1192).
- **Restart mid-leave no longer strands meetings in "stopping"** (#1280).
- **Text-only STT hardening** — the transcription client tolerates JSON-only/Voxtral-style engines (#1149, #1343).
- **Terminal honors `DEFAULT_BOT_NAME` without a rebuild** (#1259).
- **Gate failures print their diagnostic** — empty stdout Buffer no longer swallows the real error at 21 call sites (#1107).

### Delivery evidence
Validated at station `t25-01225` (vexa-stations: battery, row-0 image-ID proofs, live-meeting run, five promise-exercises, full-green lite probe S0–S8). Production runs this train as channel entry `0.12.23-estate-20260829-seq11` (cosign-signed, verifier verdict ELIGIBLE).

Related Repositories