v0.12.25
feyninc/pulpiev0.12.25Aug 31, 2026by DmitriyG228
Upgrading?
AI Summary
A maintenance release adding participant read endpoints, Teams passcode support, sized pods for Kubernetes, and MCP report_issue functionality.
Key Highlights
- New `GET /meetings/{platform}/{native_meeting_id}/participants` endpoint
- Teams passcode joins now supported via numeric ID and passcode
- Bot and agent-worker pods declare CPU/memory requests and limits
- MCP `report_issue` allows agents to file tickets from sessions
New Features
- Participants API
- Teams passcode
- sized pods
- MCP issue reporting
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
f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.
Open-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 🚀
1,324-exercise fitness dataset — animation GIFs, 180×180 thumbnails, muscle-group & equipment data, and step-by-step instructions in 6 languages. The exercise data layer behind the LogPress app.
A complete web-based remote monitoring and management web site. Once setup you can install agents and perform remote desktop session to devices on the local network or over the Internet.
A general purpose HTTP reverse proxy and forwarding tool. Now written in Go!