Repository navigation
Releases
Releases · lebe-dev/soika
v0.10.1
- Breaking: project slugs are now validated strictly at startup: 1-48 characters
froma-z,0-9and-, with no leading, trailing or repeated-. The same rule
covers Alertmanager project label keys. Every invalid or duplicate slug is reported
by name in one error, so fix the configuration file before upgrading. - Projects are addressed by slug in web URLs and the API (
/projects/{slug}). The old
6-character short id still works and the UI redirects it to the slug URL. Email,
webhook and Alertmanager notification links use the slug. - Teams get a short id used in
/teams/{short_id}URLs. The team API accepts the short
id or the UUID, and the UI redirects UUID URLs to the short form. - Alertmanager: per-project severity and source links, global and per-project refresh
intervals, and alert names selected by effective severity. Severity defaults to
critical. - Alertmanager defaults and alert names can be managed through environment variables or
the admin UI. Test alerts can be sent from the service settings and from a monitored
project's settings. - All Alertmanager delivery failures are now reported to Sentry.
- Added an Alertmanager guide with complete configuration and VMRule examples.
- Project admins can regenerate the project DSN from the SDK Setup page, behind a
confirmation dialog. - Projects removed from the configuration are shown as disabled: a Disabled pill on the
project page, and a badge with muted styling at the bottom of the dashboard. - Settings managed by configuration are marked with a notice that stays highlighted
while you hover nested controls. Team pages show it as a pill under the team name. - UI polish: text selection is disabled except in fields, code and event data, and
special characters no longer end up in avatar initials. - Performance: notifications are delivered in a background task (up to eight at a time),
so SDK requests never wait on SMTP, webhooks or Alertmanager. Event ingestion does less
database work and the issue list uses its index. - Ingest bodies are capped at 20 MiB after decompression (413 above the limit).
- Helm chart: the deployment strategy is configurable and
values.yamllists the
environment variables the application reads.
Full Changelog: 0.10.0...0.10.1
0.10.0
- Breaking: project webhooks now send the Alertmanager webhook v4 JSON format
instead of the previous flat payload. Update receivers before upgrading. See
docs/WEBHOOKS.md. - Added an Alertmanager notification channel that posts alerts to the Alertmanager
API. It is gated byNOTIFICATIONS_ALERTMANAGER_ENABLED, configured with
ALERTMANAGER_URL, supports default and per-project labels, optional TLS
verification skipping, and test alerts from the admin UI. - Service-wide notification settings can be managed through environment variables.
- Breaking: team invites are now controlled by
ALLOW_INVITESand are off by
default. SetALLOW_INVITES=trueto keep creating and accepting invite links. - Invites stay off while teams are managed by the YAML file, whatever
ALLOW_INVITES
says. Team pages show a disabled invite button with an explanation. - Admin settings pages explain options with info tooltips, and read-only default
teams no longer show Save and Reset.
0.9.0
- Manage projects, teams and team membership declaratively from a YAML file,
independently from UI management. Existing projects retain their DSNs and history. - Assign team roles through email grants and exact OIDC group paths, including
users joining later through SSO. Matching grants automatically approve users. - Preserve removed projects as read-only by default, or explicitly choose permanent
deletion. Restore read-only projects with the same DSN by adding them back. - Display management sources, synchronization status, pending grants and orphan
warnings in the UI. Mute settings and DSN regeneration remain available. - Team deletion preserves projects and supports an explicit atomic transfer.
- Enforce SSO for non-Owner accounts, including old sessions and invite acceptance.
The first SSO login to a local non-Owner account removes its password, passkeys
and previous sessions. Owners retain their password fallback. - Breaking: SSO and passkeys cannot be enabled together. Disable one before
upgrading. Management defaults to the UI, so GitOps remains opt-in.
0.8.0
- Configure additional instance Owners with
ADMIN_USERSand disable first-run setup withADMIN_ENABLED=false. - Automatically add new users to teams selected in Admin → Users.
- Disable email/password sign-in with
EMAIL_LOGIN_ENABLED=falsewhile retaining SSO and passkeys. - Upgrade note: outgoing email and project webhooks are now disabled by default. Set
SMTP_ENABLED=trueandWEBHOOKS_ENABLED=trueto keep sending notifications. - Improve operational logs with request IDs, timings, and sensitive-data redaction. Default log verbosity is now
info.
0.7.0
- Add PostgreSQL support alongside SQLite and a Helm chart with deployment guidance.
- Refresh the interface with client-side navigation and persistent English/Russian language selection.
- Fix dashboard refresh after team creation and require display names of at least three characters.
- Update dependencies and documentation; add the MIT license.