Repository navigation
Releases: tripl-io/tripl
Releases · tripl-io/tripl
Release list
v0.3.2
Upgrade notes
- Short-downtime upgrade from 0.3.1, both editions. The migration drops
organizations.members_can_create_projects, which 0.3.1 code still maps, so stop the app and workers, run the migration, then start 0.3.2. Do not run 0.3.1 and 0.3.2 side by side (https://docs.tripl.io/run/deployment). Take apg_dumpfirst, as always. - Usage telemetry is now on by default in Community: one anonymous ping a day. Turn it off with
TELEMETRY_ENABLED=false(orDO_NOT_TRACK=1). Details: https://docs.tripl.io/run/telemetry - The app port binds to
127.0.0.1by default incompose.yamland intripl install. A reverse proxy or tunnel on the same host still reaches it. A proxy in its own container should targetapp:8000on the stack network, or setAPP_BIND_ADDRESS. See https://docs.tripl.io/run/deployment - Enterprise: the audit webhook URL is now stored encrypted only. The migration encrypts any URL still in plain text and drops the
urlcolumn.
What's Changed
- feat: demo guide, Google-only demo sign-in, roomier welcome, preview image by @vladenisov in #416
- fix: demo guide stays with the visitor; demo version history covers the window by @vladenisov in #417
- fix: demo onboarding, third round — the demo starts itself, the guide keeps clear of toasts by @vladenisov in #418
- fix: public demo settings offer only what the demo takes; the guide stays beside wide dialogs at 1280px by @vladenisov in #419
- ci: the preview build times out and retries once; no preview job runs for hours by @vladenisov in #420
- fix: project rows count only inside their organization; replayed drifts, scan figures, test noise, docs robots.txt by @vladenisov in #421
- fix: alert items stop calling a drift "up"; test isolation for the Enterprise nightly; add_member under the owner-set lock by @vladenisov in #422
- fix: joining an organization drops project rows left from an earlier membership by @vladenisov in #423
- feat: Greenplum and Amazon Redshift connectors on PostgreSQL dialect seams by @vladenisov in #424
- test: browser smoke suite for the critical flows by @vladenisov in #425
- docs: CLA v1.1 — successors, moral rights, Spanish law, tiered sublicensing by @vladenisov in #426
- feat: Trino and Amazon Athena warehouse connectors by @vladenisov in #427
- fix: one date+time picker, and what a browser walk of the app turned up by @vladenisov in #428
- fix: the last native date fields use the app's own picker by @vladenisov in #429
- feat: usage telemetry on by default in Community, said loudly by @vladenisov in #430
- fix: pre-launch polish across the product by @vladenisov in #431
- fix: a long address prefix no longer breaks the slug field by @vladenisov in #435
- chore(deps): bump the minor-and-patch group across 3 directories with 1 update by @dependabot[bot] in #433
- chore(deps): bump the minor-and-patch group across 1 directory with 6 updates by @dependabot[bot] in #434
- chore(deps): bump the minor-and-patch group in /frontend with 15 updates by @dependabot[bot] in #432
- fix: sign-in survives a crowd behind one address by @vladenisov in #436
- fix: crowd-sized limits for /auth/status and invitation redemption by @vladenisov in #437
- docs: the upgrade encrypts an audit webhook URL left in plain text by @vladenisov in #439
- chore(deps): bump the minor-and-patch group in /frontend with 3 updates by @dependabot[bot] in #438
- chore(deps): bump the minor-and-patch group across 1 directory with 3 updates by @dependabot[bot] in #440
Full Changelog: v0.3.1...v0.3.2
v0.3.1
What's Changed
- perf: build the SPA once, on the build platform by @vladenisov in #402
- test: e2e layout and screenshot checks for the demo (DEMO-34, DEMO-35) by @vladenisov in #403
- fix: events search, branch authoring and Impact placement (analyst feedback) by @vladenisov in #404
- feat: branch transfer, merge preview, bulk conflicts, observed values, property suggestions, duplicate by @vladenisov in #405
- chore: upgrade all dependencies; port tripl-mcp to mcp 2 by @vladenisov in #406
- chore: ship third-party license notices in the published images by @vladenisov in #407
- chore: design-sync resolves the two new @/ barrel imports by @vladenisov in #408
- refactor: move the theme tokens into styles/tokens.css by @vladenisov in #409
- feat: Databricks SQL warehouse connector by @vladenisov in #410
- ci: run the Databricks value contract on release tags by @vladenisov in #411
- feat: cookie banner and GTM on the docs site by @vladenisov in #412
- perf: introspect ClickHouse columns with DESCRIBE instead of LIMIT 0 by @vladenisov in #413
- perf: read the warehouse once per scheduled tick when the windows agree by @vladenisov in #414
- feat: Snowflake warehouse connector by @vladenisov in #415
Full Changelog: v0.3.0...v0.3.1
v0.3.0
What's Changed
- chore(release): tripl CLI 0.2.3 by @vladenisov in #347
- docs: README with a hero screenshot and a tighter intro by @vladenisov in #348
- feat: public demo instance — Google sign-in, zero egress, idle cleanup by @vladenisov in #349
- test: Playwright e2e suite, starting with the demo by @vladenisov in #350
- chore: bring the stack up to date (RabbitMQ 4.3, pgvector 0.8.7, Redis 8.8) by @vladenisov in #351
- chore: move the frontend and docs from pnpm to Bun 1.4 by @vladenisov in #352
- perf: backend tests in ~9 minutes instead of ~22 (coverage via sys.monitoring) by @vladenisov in #354
- chore(deps): bump the minor-and-patch group in /backend with 8 updates by @dependabot[bot] in #353
- feat: planned events — expected windows that suppress alerts (F18) by @vladenisov in #355
- feat: project-wide Annotations page by @vladenisov in #356
- test: fix the annotations-page e2e locator by @vladenisov in #358
- feat: Claude, Gemini and OpenRouter presets in the AI settings by @vladenisov in #357
- feat: delete accounts left in no organization after an idle purge by @vladenisov in #359
- feat: holiday calendars — public holidays as planned events by @vladenisov in #360
- feat: suggest recurring planned windows from expected verdicts by @vladenisov in #361
- chore: remove issue-tracker ids from code comments and docs by @vladenisov in #362
- chore: remove internal review codes from code comments and docs by @vladenisov in #363
- chore: name the regression test files for what they test by @vladenisov in #364
- feat: seed demo workspaces on the Celery worker by @vladenisov in #365
- feat: hand out pre-seeded demos from a pool by @vladenisov in #366
- docs: CLA, security policy, code of conduct, trademarks, templates by @vladenisov in #367
- fix: allowlist the claude co-author in the CLA check by @vladenisov in #368
- feat: add backend extension points by @vladenisov in #369
- feat: add frontend extension slots by @vladenisov in #370
- feat: add tripl install --edition by @vladenisov in #371
- chore: move the repository to the tripl-io organization by @vladenisov in #372
- refactor: separate shared OIDC sign-in code from organization SSO by @vladenisov in #374
- feat: show Enterprise features in Community as tagged teasers by @vladenisov in #375
- feat: run extension migrations from the migrate one-shot by @vladenisov in #377
- [analytics] Allow link-only public demo invitations by @vladenisov in #376
- feat: move per-organization SSO and SCIM to the Enterprise package by @vladenisov in #378
- feat: move the organization-wide audit log, export and webhook to Enterprise by @vladenisov in #380
- feat: add OUTBOUND_PUBLIC_HOSTS_ONLY for the outbound private-host guard by @vladenisov in #381
- feat: put hosted multi-tenancy behind an extension's tenancy policy by @vladenisov in #382
- feat: move the platform console to Enterprise by @vladenisov in #383
- feat: Community runs one organization; more are Enterprise by @vladenisov in #384
- feat: move the demo pool and the idle-organization purge to Enterprise by @vladenisov in #385
- feat: PUBLIC_DEMO is the Enterprise edition's by @vladenisov in #386
- feat: plumbing for the Enterprise license key by @vladenisov in #387
- docs: an Enterprise section for the Enterprise features by @vladenisov in #388
- test: route audits walk Community's own routes by @vladenisov in #389
- feat: sign in through the instance's own OpenID Connect provider by @vladenisov in #390
- feat: opt-in anonymous usage telemetry by @vladenisov in #391
- feat: PagerDuty and Microsoft Teams alert destinations by @vladenisov in #392
- feat: catalog, teaser and docs for Enterprise audit retention by @vladenisov in #393
- chore(deps): bump the minor-and-patch group across 1 directory with 5 updates by @dependabot[bot] in #379
- feat: Enterprise seams, teasers and docs for org insights, escalation and KMS by @vladenisov in #397
- feat: plan policy and project access hooks for Enterprise governance and RBAC by @vladenisov in #398
- docs: publish the docs site at docs.tripl.io by @vladenisov in #400
- fix: vulnerable dependencies, a flaky demo test and public-demo invitation follow-ups by @vladenisov in #399
- chore: one version for the service, the CLI and the MCP server by @vladenisov in #401
Full Changelog: v0.2.3...v0.3.0
v0.2.3
What's Changed
- fix(docs): show only the screenshot that matches the theme by @vladenisov in #344
- chore(release): tripl and tripl-mcp 0.2.2 by @vladenisov in #345
- fix: first-run walk — demo spike survives collection, coach steps reachable by @vladenisov in #346
Full Changelog: v0.2.2...v0.2.3
v0.2.2
What's Changed
- fix(activity): keep the recent-activity rail on main and off dead ids (tripl-r5ri) by @vladenisov in #87
- fix(ui): pin every colour token to the WCAG AA floor and route status text through them (tripl-zgtu, tripl-ds9m, tripl-yx0k) by @vladenisov in #86
- fix(anomalies): stop judging a release against a population it does not share (tripl-9y4l) by @vladenisov in #88
- chore(deps): bump actions/upload-artifact from 4 to 7 by @dependabot[bot] in #81
- chore(deps): bump actions/download-artifact from 4 to 8 by @dependabot[bot] in #83
- chore(deps): update uvicorn[standard] requirement from >=0.51.0 to >=0.52.0 in /backend by @dependabot[bot] in #84
- fix(cli): stop the drifts sample expiring on a fixed date by @vladenisov in #91
- fix(anomalies): make the comparability gate work on fine-grained catalogs (tripl-9y4l) by @vladenisov in #90
- fix(alerting): stop offering the same link twice in every alert item by @vladenisov in #92
- fix(anomalies): five defect classes from the 2026-08-05 audit (tripl-l429.1-.5) by @vladenisov in #93
- fix(alerting): point a release regression at something that can corroborate it by @vladenisov in #94
- feat(scans): make scans explainable end to end (tripl-3y7z) by @vladenisov in #95
- fix(branches): approvals chip + clipped Merge button; docs: both distributions are on PyPI by @vladenisov in #96
- fix(branches): a long description widened the page and hid Merge (+ restore docs fixes lost in #96's squash) by @vladenisov in #97
- fix(branches): a photo comment must not void a branch approval (tripl-zjmo) by @vladenisov in #98
- chore(release): bump tripl and tripl-mcp to 0.2.0 (tripl-yh8t) by @vladenisov in #99
- docs(mcp): stop pinning install docs to a version that just shipped by @vladenisov in #102
- fix(events): empty tab charts, merged-branch tabs, and archival that actually hides by @vladenisov in #103
- feat(alerting): fold what-was-sent into the incident, and link alerts there by @vladenisov in #104
- chore(deps): bump the minor-and-patch group across 1 directory with 33 updates by @dependabot[bot] in #101
- chore(deps): update redis[hiredis] requirement from >=8.0.1 to >=8.1.0 in /backend by @dependabot[bot] in #82
- fix(alerting): link an incident to the thing that fired it by @vladenisov in #105
- Fix/alerting event link by @vladenisov in #107
- feat(alerting): make the incident inbox a triage surface (tripl-oxkt) by @vladenisov in #108
- chore(deps): bump the minor-and-patch group across 1 directory with 6 updates by @dependabot[bot] in #106
- Merge Monitors into Alerting, plus five issues and two production diagnoses by @vladenisov in #109
- Make an event's references survive a merge, and stop them outliving a delete by @vladenisov in #110
- Make silencing an alert say what it actually does by @vladenisov in #111
- Act on several incidents at once by @vladenisov in #112
- Make search relevance measurable, then fix what it measured by @vladenisov in #113
- Index the surface form beside the stem, so a word's forms meet by @vladenisov in #114
- Keep a still-silenced incident reachable after its deliveries age out by @vladenisov in #115
- Make two vacuous search assertions capable of failing by @vladenisov in #116
- Let the embeddings endpoint be pointed somewhere else by @vladenisov in #117
- Stop the command palette re-ranking the server's results by @vladenisov in #118
- Repair the Metrics table's role tree and the scans row's nesting by @vladenisov in #119
- Make the keyword tiers stop paying for harvested event values by @vladenisov in #120
- Say when the source cap cut the 30-day inbox window short by @vladenisov in #121
- Reward a result that answered the whole query by @vladenisov in #122
- fix(search): stop the page size deciding the ranking, and delete a boost that buried its own answer (tripl-0tt4) by @vladenisov in #123
- feat(search): make the index self-healing on plan branches (tripl-uji9) by @vladenisov in #124
- fix(demo): regenerate the embedding artifacts and make the sidecar check mean something (tripl-khnz) by @vladenisov in #125
- feat(search): index scan configurations and alert rules (tripl-dfct) by @vladenisov in #126
- chore(deps): bump astral-sh/setup-uv from 9.0.0 to 10.0.0 by @dependabot[bot] in #130
- chore(deps): bump the minor-and-patch group in /backend with 3 updates by @dependabot[bot] in #129
- chore(deps): bump the minor-and-patch group in /frontend with 8 updates by @dependabot[bot] in #134
- refactor(metrics): give the condition toolkit its own module instead of the middle of metric_collect by @vladenisov in #128
- chore(search): remove what eight consecutive PRs accreted, keep what they measured by @vladenisov in #127
- fix(search): let only an identity match be painted as certain (tripl-d5u8) by @vladenisov in #136
- feat(search): weight the title, so a name outranks a mention (tripl-dito) by @vladenisov in #138
- fix(ux): the 37 things the browser walk found, in seven file-disjoint batches by @vladenisov in #139
- fix(prerelease): what a sixth audit found, and what two rounds of fixing it found by @vladenisov in #143
- fix(prod-verification): the seven things a post-deploy check found, and the twenty-two that reviewing the fixes found by @vladenisov in #144
- chore(deps): bump the minor-and-patch group in /frontend with 6 updates by @dependabot[bot] in #142
- chore(deps): bump the minor-and-patch group in /backend with 3 updates by @dependabot[bot] in #141
- fix(audit): 25 findings from a re-validated multi-dimension audit by @vladenisov in #145
- chore(deps): update uvicorn[standard] requirement from >=0.52.0 to >=0.52.3 in /backend by @dependabot[bot] in #132
- fix(variables): why active events showed no observed values, and what destroys them afterwards by @vladenisov in #149
- chore(deps): bump the minor-and-patch group in /backend with 3 updates by @dependabot[bot] in #146
- chore(deps-dev): bump jsdom from 29.1.1 to 30.0.1 in /frontend by @dependabot[bot] in #135
- fix(variables,alerts): merge resampled values, unstall the sampler ring, surface it, and auto-retry transient delivery failures by @vladenisov in #151
- fix: three follow-ups the stale-issue verification turned up by @vladenisov in #152
- chore(deps): bump astral-sh/setup-uv from 10.0.0 to 10.0.1 in the minor-and-patch group across 1 directory by @dependabot[bot] in #140
- Manual event authoring: make the scan identity real, and the form honest about it by @vladenisov in #153
- Deliver alerts on a schedule instead of after every collection by @vladenisov in #154
- Make a scheduled digest readable: one message, grouped, links instead of URLs by @vladenisov in #157
- chore(deps): bump the minor-and-patch group in /backend with 2 updates by @dependabot[bot] in #155
- chore(deps): bump cryptography from 49.0.0 to 50.0.1 in /backend by @dependabot[bot] in #147
- Branch handoff: naming rules on branches, event titles, spec card, branch-aware links by @vladenisov in #158
- Analyst feedback 2026-09-08: authoring and reviewing events by @vladenisov in #160
- Teach the email transport implicit TLS, and give SMTP a way to test itself by @vladenisov in #161
- Analyst fe...
v0.2.1
What's Changed
- fix(anomalies): show all flagged scopes on the anomalies page by @vladenisov in #61
- Pre-release polish: onboarding + prod UX walkthrough (epic tripl-yfsj) by @vladenisov in #62
- feat(monitoring): raise default anomaly sensitivity (sigma 4.0, min expected 50) by @vladenisov in #63
- feat(monitoring): configurable open-signal window + epic follow-ups by @vladenisov in #64
- chore(deps): bump the minor-and-patch group in /frontend with 6 updates by @dependabot[bot] in #57
- chore(deps): bump actions/setup-node from 4 to 7 by @dependabot[bot] in #56
- chore(deps): bump astral-sh/setup-uv from 8.2.0 to 8.3.2 in the minor-and-patch group across 1 directory by @dependabot[bot] in #55
- chore(deps): update redis[hiredis] requirement from >=8.0.0 to >=8.0.1 in /backend by @dependabot[bot] in #23
- chore(deps): bump the minor-and-patch group across 1 directory with 7 updates by @dependabot[bot] in #65
- fix(prerelease): resolve the 2026-07-26 fresh-eyes audit findings (tripl-jfm3) by @vladenisov in #69
- fix(prerelease): third fix wave from the 2026-07-26 fresh-eyes audit (tripl-jfm3) by @vladenisov in #70
- fix: post-release hotfixes — false schema-drift alert and stale-shell chunk 404s by @vladenisov in #71
- fix: close the pre-release audit epic (tripl-jfm3) by @vladenisov in #72
- chore(deps): bump astral-sh/setup-uv from 8.3.2 to 9.0.0 by @dependabot[bot] in #66
- chore(deps-dev): bump @testing-library/jest-dom from 6.9.1 to 7.0.0 in /frontend by @dependabot[bot] in #68
- fix(scan): never reserve the column an event name is built from (tripl-lpin) by @vladenisov in #74
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
- Feat/owner reviewers and platform presence by @vladenisov in #16
- chore(deps-dev): bump @types/node from 25.9.3 to 26.0.1 in /frontend by @dependabot[bot] in #25
- chore(deps): bump docker/setup-qemu-action from 3 to 4 by @dependabot[bot] in #17
- Update sqlalchemy[asyncio] requirement from >=2.0.50 to >=2.0.51 in /backend by @dependabot[bot] in #11
- chore(deps): bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #18
- chore(deps): bump docker/setup-buildx-action from 3 to 4 by @dependabot[bot] in #19
- chore(deps): bump actions/deploy-pages from 4 to 5 by @dependabot[bot] in #20
- chore(deps): bump actions/configure-pages from 5 to 6 by @dependabot[bot] in #21
- chore(deps): bump the minor-and-patch group across 1 directory with 4 updates by @dependabot[bot] in #22
- fix(scans): keep reserved columns (app_version/platform) out of the catalog by @vladenisov in #26
- feat(metrics): user-defined metrics catalog + monitoring (tripl-dxhp) by @vladenisov in #27
- feat(sql-editor): rich SQL editor for metrics & fact tables by @vladenisov in #28
- fix: pre-release polish — 2026-07-03 production review (epic tripl-7l83) by @vladenisov in #29
- fix(monitoring): version-maturity labelling & anomaly over-flagging (epic tripl-dmch) by @vladenisov in #38
- Feat/branch diff details by @vladenisov in #39
- [analytics] Demo pre-release review: zero-egress, atomic reset, kill switch — and enforce ruff format by @vladenisov in #41
- Coach the demo scenario on the surfaces, not just from the tour dialog (tripl-2su6.21) by @vladenisov in #42
- Stop the route tests racing the lazy-chunk import (tripl-gk3l) by @vladenisov in #43
- chore(deps): bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #34
- chore(deps): bump actions/upload-pages-artifact from 3 to 5 by @dependabot[bot] in #33
- chore(deps): bump softprops/action-gh-release from 2 to 3 by @dependabot[bot] in #32
- chore(deps): bump docker/login-action from 3 to 4 by @dependabot[bot] in #31
- chore(deps): bump astral-sh/setup-uv from 8.2.0 to 8.3.2 in the minor-and-patch group across 1 directory by @dependabot[bot] in #30
- chore(deps): bump the minor-and-patch group across 1 directory with 31 updates by @dependabot[bot] in #46
- Bring BigQuery, PostgreSQL and the frontend onto one warehouse bucket contract (tripl-64n8.1–.4) by @vladenisov in #44
- chore(deps): bump the minor-and-patch group across 1 directory with 6 updates by @dependabot[bot] in #45
- Branch review: readable diffs, deep links, and per-change revert by @vladenisov in #49
- chore(deps): update uvicorn[standard] requirement from >=0.49.0 to >=0.51.0 in /backend by @dependabot[bot] in #36
- feat: batch fact metric refreshes by @vladenisov in #50
- [analytics] First-run experience overhaul (epic tripl-q7i1): P0–P3, 23 fixes by @vladenisov in #51
- [analytics] Onboarding v2: welcome hero, anchored coach emphasis, demo recipe v4, chaptered tour (epic tripl-odrj) by @vladenisov in #52
- [analytics] tripl-mcp: standalone MCP server over the agent REST API (tripl-l8xj) by @vladenisov in #54
- [analytics] Add real BigQuery conformance by @vladenisov in #60
Full Changelog: v0.1.0...v0.2.0
v0.1.0
What's Changed
- Feat/replay chunked scans by @vladenisov in #1
- Fix/scan job dispatch race by @vladenisov in #2
- Redesign/data first by @vladenisov in #3
- Fix/fastapi review remediation lyo9 by @vladenisov in #4
- A11y/wcag 2.2 remediation by @vladenisov in #5
- Bump the minor-and-patch group across 1 directory with 24 updates by @dependabot[bot] in #12
- fix: resolve pre-release browser-QA issues by @vladenisov in #14
New Contributors
- @vladenisov made their first contribution in #1
- @dependabot[bot] made their first contribution in #12
Full Changelog: https://github.com/vladenisov/tripl/commits/v0.1.0