v0.50.1
calesthio/OpenMontagev0.50.1Aug 24, 2026by github-actions[bot]
Upgrading?
AI Summary
Fixes observability blind spots by counting trunk gate rejections in metrics and correcting admin endpoint labels.
Key Highlights
- `[[trunk]]` gate 403s now count as `result="rejected_trunk"` in `siphon_ai_invites_total`.
- Four admin endpoints (`/status`, `/errors`, `/cdrs/recent`, `/drain`) no longer report as `unknown`.
- siphon-rs pinned to v2026.08.24 to enable PASSporT signing feature (not currently enabled).
New Features
- Trunk rejection metrics
- Admin endpoint metric visibility
Full Release Notes
**Two observability blind-spot fixes and routine upstream pin rolls.**
Both fixes came out of validating the 0.50.0 getting-started flow: the
`[[trunk]]` gate's 403s — the exact scanner traffic the gate exists to
shed — were invisible on `/metrics`, and four 0.49.0 admin endpoints
reported as `endpoint="unknown"`. No protocol change (still `1`), CDR
still v8, no new config keys. Drop-in upgrade; alerting can now key on
`siphon_ai_invites_total{result="rejected_trunk"}`.
### Changed
- **siphon-rs pinned to `v2026.08.24`** (from `v2026.08.21`) — picks up
[sip-identity 0.3.0](https://github.com/thevoiceguy/siphon-rs/pull/124):
PASSporT **signing** behind a new `sign` feature
([siphon-rs #123](https://github.com/thevoiceguy/siphon-rs/pull/123)),
the provider-side complement to the ES256 verification SiphonAI already
uses. SiphonAI does not enable the feature, so verification behaviour is
unchanged — this makes outbound STIR/SHAKEN signing (long demand-gated)
buildable against the current pin when it's picked up.
- **forge-media pinned to `c277860cd123`** (from `1fe94a502efa`) — one
commit: aligns forge-media's own siphon-rs submodule to `v2026.08.24`,
keeping both pins on the same upstream revision (the media path sees
siphon-rs through that submodule).
### Fixed
- **`[[trunk]]`-gate 403s now count in `siphon_ai_invites_total` as
`result="rejected_trunk"`**
([#564](https://github.com/thevoiceguy/siphon-ai/issues/564)). The allowlist gate runs in the SIP
dispatch layer before the acceptor, whose paths owned every increment of
that counter — so the INVITEs the gate sheds (scanner traffic hammering
the SIP port from non-allowlisted sources) were invisible on `/metrics`
and unalertable without log-pipeline tooling. Per-peer detail stays in
the audit stream and SIP ring; the new label is alertable directly.
Digest-auth 401s are deliberately still not in this counter (a challenged
INVITE retries with credentials and is counted then) — that gate's
brute-force signal remains `siphon_ai_sip_auth_total{result="failed"}`.
- **Four admin endpoints no longer report as `endpoint="unknown"` in
`siphon_ai_admin_requests_total`**
([#565](https://github.com/thevoiceguy/siphon-ai/issues/565)):
`GET /admin/v1/status`, `GET /admin/v1/errors`,
`GET /admin/v1/cdrs/recent`, and `POST /admin/v1/drain` — the 0.49.0
sightglass endpoints — got authorization arms but no metric-label
arms, so their traffic lost per-endpoint visibility and polluted the
`unknown` probing signal dashboards key on. The static route table is
now a single shared source (`STATIC_ROUTES`) answering both
`min_role` and `route_label`, so a route can no longer be known to
authorization yet invisible to metrics.
---
**Artifacts**
- Static musl binaries for `x86_64` and `aarch64` (`.tar.gz`).
- Debian packages (`.deb`) for `amd64` and `arm64` — `apt install ./siphon-ai_*_amd64.deb`.
- `SHA256SUMS` — verify with `sha256sum -c SHA256SUMS`.
- `*-sbom.cdx.json` — CycloneDX SBOM.
- `SHA256SUMS.cosign.bundle` — cosign keyless signature over the checksums.
- Container: `ghcr.io/thevoiceguy/siphon-ai:v0.50.1` (multi-arch, cosign-signed).
Verify the checksums signature:
```
cosign verify-blob --bundle SHA256SUMS.cosign.bundle \
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
--certificate-identity-regexp 'release.yml@' SHA256SUMS
```
Related Repositories
public-apis/public-apis★ 491,126
A collective list of free APIs
NousResearch/hermes-agent★ 255,899
The agent that grows with you
yt-dlp/yt-dlp★ 199,996
A feature-rich command-line audio/video downloader
microsoft/markitdown★ 191,480
Python tool for converting files and office documents to Markdown.
Significant-Gravitas/AutoGPT★ 187,700
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.