What lmnr-ai/lmnr shipped
Written by FoxPlug from the repository's own releases; not affiliated with Laminar. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/lmnr-ai/lmnr; Laminar did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of November 2, 2026
What shipped
- Released v0.3.3, which includes multiple dashboards per project, span view overview inputs and outputs rendered in their own formats, and a blog header fix. Release
- Added support for multiple dashboards, fixed the span view overview, agent versions, faster ClickHouse migrations, a light theme, git tracking fundamentals, custom column fixes, and renamed eval
task_idto trials. Pull request #2636 - Added Okta SSO with SCIM-managed workspace membership and upgraded Better Auth from 1.6 to 1.7, including Azure and Keycloak as social providers. Pull request #2656
- Dashboard write and chart check tools moved from app-server to Next.js, and lmnr-cli now has dashboard write tools with basic dashboard CRUD. Pull request #2641
- Agent records and agent document revisions now store the session
project_id, with a composite foreign key so a row cannot reference another project. Pull request #2655 - Writing trace tags through the API now updates trace tags instead of span tags, a breaking change to that endpoint; SDKs and CLI get a matching 0.x bump. Pull request #2672
- Fixed audited routes without dynamic segments crashing with a TypeError when the audit handler read route params in its finally block. Pull request #2677
- Agent version system prompt and tool definition text is now stored masked, with dates, times and ids replaced, matching how line hashes are computed. Pull request #2684
- The advertised trace id is now a string with a regex instead of a UUID, so Zod-validated clients no longer reject valid OpenTelemetry trace ids. Pull request #2667
- Signal event emails now render Laminar links as chips and handle nested brackets and backtick-wrapped links, along with a severity kicker fix. Pull request #2668
Why it matters
This week brings a new release plus multiple dashboards per project and a cleaner span view overview, which change how people organize and read their traces and charts. It also adds Okta SSO with SCIM-managed membership for sign-in and access control, moves dashboard tooling into Next.js and the CLI, and fixes several crashes and validation mismatches in audited routes, agent version storage and trace ids.
Changelog entry
- Release v0.3.3: multiple dashboards per project, span view overview input and output formats, and a blog header fix. Release
- Multiple dashboards, span view overview fix, agent versions, faster ClickHouse migrations, light theme, git tracking fundamentals, custom column fix, and eval
task_idrenamed to trials. Pull request #2636 - Okta SSO with SCIM-managed workspace membership; Better Auth upgraded to 1.7 with Azure and Keycloak social providers. Pull request #2656
- Dashboard write and chart check tools moved from app-server to Next.js; lmnr-cli gained dashboard write tools and basic dashboard CRUD. Pull request #2641
- Agent_records and
agent_document_revisionsnow storeproject_idwith a composite foreign key toagent_sessions. Pull request #2655 - Trace tags written through the API now update trace tags instead of span tags; SDKs and CLI get a matching 0.x bump. Pull request #2672
- Fixed a crash in audited routes without dynamic segments when reading route params in the audit handler finally block. Pull request #2677
- Agent version system prompt and tool definition text is now stored masked, with dates, times and ids replaced. Pull request #2684
- Trace id is advertised as a string with a regex instead of a UUID so clients no longer reject valid OpenTelemetry trace ids. Pull request #2667
- Signal event emails render Laminar links as chips, handling nested brackets and backtick-wrapped links, plus a severity kicker fix. Pull request #2668
- Added an unlimited workspace tier as the self-hosted default and silenced unknown workspace tier logs on self-hosted instances. Pull request #2681
- Trace panel URL writes on traces, trace view, shared trace and eval, and signals now go through one module. Pull request #2676
V0.3.3 is out: multiple dashboards per project, span view overview inputs and outputs in their own formats, plus Okta SSO with SCIM-managed membership. Dashboard tools moved to the CLI, and audited routes and trace id validation got fixes.
Laminar v0.3.3 is out. This release adds multiple dashboards per project and renders span view overview inputs and outputs in their own formats, and it includes agent versions and faster ClickHouse migrations. Also this week: Okta SSO with SCIM-managed workspace membership, dashboard write and chart check tools moved from app-server to Next.js with dashboard write tools in lmnr-cli, and project_id now stored on agent records and document revisions with a composite foreign key. Fixes cover audited routes without dynamic segments, trace tags written through the API now updating trace tags, masked agent version text, and trace ids advertised as strings with a regex.
Week of October 26, 2026
What shipped
- Eval rows now carry a string
task_id, so repeated trials group into Tasks and comparisons across runs over a subset of datapoints no longer line up the wrong rows. Pull request #2625 - Trial users can upgrade or switch plans from billing, and a stale page issue was fixed. Pull request #2624
- Dashboards were fixed and the SQL to chart builder round-trip now fails loudly instead of silently ignoring unsupported WHERE predicates, with query formatting added. Pull request #2627
- Self-hosted deployments can reuse existing Postgres roles for ClickHouse SQL access, so the migration login no longer needs permission to create or alter database roles. Pull request #2621
- Custom columns on data, target and eval realtime views were fixed, including eval datapoint queries and realtime updates. Pull request #2619
- Span and trace preview text was fixed and a fallback query was rewritten for legacy trace output resolution. Pull request #2616
- Agent versions are now routed by agent ID under the project path, the index redirects to the first agent, version data is seeded server-side, and versions get distinct colors by agent ID and version number. Pull request #2613
- LangGraph availability is no longer stale in the trace panels, because spans was added to the memo that checks it. Pull request #2609
- Time-series chart markers were redrawn as a single clean marker, with navigation and tooltip behavior preserved. Pull request #2612
- Unused frontend dependencies, dead files and exports were removed, keeping only what was unused in both this repo and the private frontend. Pull request #2630
Why it matters
This week improves evals by making rows identifiable across runs, so results over subsets of datapoints compare correctly and repeated trials group under tasks. It also fixes dashboard and query behavior and eval realtime views, and makes spend estimates and upgrades clearer for people on trials. Self-hosted operators get a simpler way to wire Postgres roles for ClickHouse access.
Changelog entry
- Eval rows now use a string
task_id; trials sharing atask_idin a run form a Task, fixing cross-run matching over subsets. Pull request #2625 - Trial users can upgrade or switch plans from billing; fixed a stale page. Pull request #2624
- Dashboards fixed; SQL to chart builder round-trip now fails loudly on unsupported WHERE predicates; query formatting added. Pull request #2627
- Self-hosted deployments can reuse existing Postgres roles for ClickHouse SQL access. Pull request #2621
- Fixed custom columns on data, target and eval realtime views. Pull request #2619
- Fixed span and trace preview text; rewrote a fallback query for legacy trace output. Pull request #2616
- Agent versions routed by agent ID, index redirects to the first agent, version data seeded server-side, distinct colors per agent and version. Pull request #2613
- Added spans to the LangGraph availability check so it no longer goes stale in trace panels. Pull request #2609
- Time-series chart markers redrawn as a single marker; navigation and tooltips unchanged. Pull request #2612
- Removed unused frontend dependencies, dead files and exports. Pull request #2630
- Signals cost estimate per trace-size bucket lowered by 30% in the pricing calculator. Pull request #2620
- Reverted the removal of webpack flags, restoring the previous production build path. Pull request #2634
What shipped this week. Eval datapoints now carry a string task_id: rows are Trials, trials sharing a task_id in one run form a Task, and comparisons across runs over a subset of datapoints no longer match the wrong rows. Dashboards were fixed and the SQL to chart builder round-trip now fails loudly instead of silently ignoring unsupported WHERE predicates, with query formatting added. Custom columns on data, target and eval realtime views were fixed, and trial users can upgrade or switch plans from billing. Self-hosted deployments can reuse existing Postgres roles for ClickHouse SQL access, so the migration login no longer needs role creation rights.
Week of October 12, 2026
What shipped
- A card-less 14-day Starter trial was added for new workspaces. Pull request #2548
- Agent versioning checkpoints were rebuilt on top of system-prompt versioning, so prompt, tool and model changes are caught automatically. Pull request #2565
- The telemetry opt-out from the repository-root environment is now passed into each self-hosted Compose frontend service. Pull request #2438
- The Quickwit healthcheck in Docker no longer uses curl, fixing docker compose up failing after the Quickwit bump. Pull request #2559
- Traces in the OpenCode V2 message format are now parsed. Pull request #2534
- The onboarding signals step was redesigned as a shorter flow with four curated signal options. Pull request #2529
- The onboarding welcome email is now sent once even when several onboarding tabs are open. Pull request #2547
- Signal alert emails now preserve newlines in multiline signal-event fields. Pull request #2546
- Signal clusters, controls and events now use one native scrollport, fixing horizontal scrolling. Pull request #2539
- Frontend startup now logs a clearer warning for consumers on older Quickwit deployments. Pull request #2535
Why it matters
This week shipped a new Starter trial path and moved agent versioning onto system-prompt versioning, so changes to prompts, tools and models are tracked per agent version. Self-hosted deployments also got fixes that matter day to day: the Compose frontend now carries the telemetry opt-out, and the Quickwit healthcheck no longer breaks docker compose up. Onboarding and signal notifications got smaller fixes, including a shorter signals step and single welcome email across tabs.
Changelog entry
- Added a card-less 14-day Starter trial for new workspaces. Pull request #2548
- Rebuilt agent versioning checkpoints on top of system-prompt versioning. Pull request #2565
- Forwarded the telemetry opt-out from the root environment into self-hosted Compose frontends. Pull request #2438
- Replaced the Quickwit healthcheck in Docker so it no longer requires curl. Pull request #2559
- Added parsing for traces in OpenCode V2 message format. Pull request #2534
- Redesigned the onboarding signals step with a shorter flow and four curated options. Pull request #2529
- Sent the onboarding welcome email once across multiple open tabs. Pull request #2547
- Preserved newlines in multiline signal alert emails. Pull request #2546
- Fixed horizontal scrolling for signal events with a single native scrollport. Pull request #2539
- Logged a clearer startup warning on older Quickwit consumers. Pull request #2535
- Refreshed dependencies across the frontend and app-server. Pull request #2536
- Copied Quickwit index definitions into the Dockerfile so they are bundled reliably. Pull request #2537
This week: a card-less 14-day Starter trial, agent versioning rebuilt on system-prompt versioning so prompt, tool and model changes are caught automatically, OpenCode V2 trace parsing, and fixes for Quickwit startup, signal scrolling and welcome emails.
This week's changes to Laminar: A card-less 14-day Starter trial is now available for new workspaces. Agent versioning checkpoints were rebuilt on top of system-prompt versioning, so changes to prompts, tools and models are caught automatically and can later be correlated with error rates per agent version. Self-hosted users got several fixes: the Quickwit healthcheck no longer depends on curl, so docker compose up works again after the Quickwit bump, the root telemetry opt-out now reaches each Compose frontend, and startup logs a clearer warning for older Quickwit deployments. Onboarding also got a shorter signals step and a welcome email that is sent only once across tabs.
Week of October 5, 2026
What shipped
- Released v0.3.0, which adds Valkey to the default Docker compose files, bumps to a newer version, and migrates the postgres schema in a way that cannot be reversed without a backup. Release
- Merged dataset CRUD together with role-based read restrictions, system prompt versioning improvements, shared trace display, view policies, LLM profile improvements, Valkey in compose, usage breakdown changes, and an update to a related package. Pull request #2532
- Added onboarding personalization that prefills the workspace name on a first visit for a new domain. Pull request #2482
- Added compression and dedup savings visibility to the workspace usage breakdown. Pull request #2491
- Alert emails now include the signal event trace ID and event ID in the View link so the matching event is selected. Pull request #2518
- Welcome and workspace invitation emails now come from a named sender address while billing emails keep the founders address, and the welcome introduction and tracing bullet were updated. Pull request #2490
- Refreshed the welcome and workspace invitation email templates, reusing the welcome banner asset and logo for both. Pull request #2483
- Replaced all email template links with the current project domain. Pull request #2513
- Removed the bundled npm CLI from the frontend runner image to drop dependencies carrying known findings. Pull request #2524
- Fixed the open-source sidebar card so it no longer flashes during hydration. Pull request #2510
Why it matters
This week brings a release with a compose change and a postgres schema migration that cannot be rolled back without a backup, so upgrade planning matters. It also lands role-based read restrictions and dataset CRUD, which change what data different people can see and manage. Alert emails and workspace usage views give teams more context when tracing events and reviewing usage.
Changelog entry
- V0.3.0: Valkey added to default Docker compose files, dependency bumped, and an irreversible postgres schema migration that needs a backup before rollback. Release
- Dataset CRUD, role-based read restrictions, system prompt versioning improvements, shared trace display, view policies, LLM profile improvements, Valkey in compose, usage breakdown, and package update. Pull request #2532
- Removed the bundled npm CLI from the frontend runner image, dropping dependencies with known findings. Pull request #2524
- Alert emails now include the signal event trace ID and event ID so the View link opens the matching event. Pull request #2518
- Email template links now use the lmnr.ai domain, including welcome email documentation and blog links. Pull request #2513
- Set email letter spacing to zero across welcome, workspace invitation, and report emails. Pull request #2512
- Replaced raw UI colors with theme tokens so those surfaces follow light and dark themes. Pull request #2395
- Fixed the open-source sidebar card so stored visibility is known before it renders, removing the hydration flash. Pull request #2510
- Added a warning log when the default LLM header configuration fails validation. Pull request #1820
- Landing header updated with an optional mobile navigation mode, plus blog stickiness and pricing spacing changes. Pull request #2492
- Workspace usage breakdown now shows compression and dedup savings. Pull request #2491
- Added the Flow-1 announcement banner to landing, pricing, and blog pages with an animated dot grid and cloud artwork. Pull request #2489
V0.3.0 is out: Valkey in default Docker compose, a version bump, and a one-way postgres schema migration, so make a backup if you may roll back. This week also adds dataset CRUD, role-based read restrictions, alert email links straight to the event trace, and usage dedup savings.
V0.3.0 is out. The default Docker compose files now include Valkey, a bundled dependency was bumped, and the postgres schema migration is irreversible, so make a backup if you may want to roll back. Alongside the release, this week added dataset CRUD and role-based read restrictions, so read access and data management can be scoped more precisely. Alert emails now link straight to the signal event trace with the matching event selected. Workspace usage views show compression and dedup savings. Welcome and invitation emails were refreshed with updated copy and sender address, and email links now use the lmnr.ai domain.
Week of September 28, 2026
What shipped
- Signals pricing switched from monthly per-tier allowances to a pay-as-you-go model with updated rates and credit state across Postgres and ClickHouse. Pull request #2471
- Workspace Usage tab redesigned with ClickHouse-backed API and new chart interface to show detailed billing estimates. Pull request #2479
- User template versioning added to ingestion pipeline, enabling per-version regex resolution and LLM fallback caching for trace content. Pull request #2452
- Sidebar cards refactored to show Signals credit as spend against total credit and align usage progress bars with design specs. Pull request #2480
- Direct user-task extractions now cached by exact text for 5 minutes to reduce repeated processing. Pull request #2464
- Setup CTA updated with rotating agent icons and copy-on-hover interaction while keeping hero buttons responsive on mobile. Pull request #2481
- Fixed blog code blocks disappearing in long posts caused by React lazy-loading child references in production builds. Pull request #2465
- Included Signals credits reduced to $2.50 Free, $7.50 Starter, and $25 Pro with pricing display alignment across frontend and backend. Pull request #2454
- Parent ID index added on clusters table for query performance. Pull request #2475
- Landing page Signals pricing calculator unified at $0.05/1M input, $0.01/1M cached input, and $0.35/1M output tokens with measured token medians. Pull request #2378
Why it matters
The billing and pricing model changed substantially this week with Signals moving to usage-based pricing and the UI updated to reflect spend tracking. Template versioning went live for better trace content extraction. Multiple foundational pieces now support accurate credit accounting and clearer user visibility into costs.
Changelog entry
- Signals pricing updated: monthly per-tier allowances replaced with pay-as-you-go rates; Postgres/ClickHouse credit state and Stripe metering inputs adjusted Pull request #2471
- Usage tab redesigned with ClickHouse-backed API and new chart-based bill estimates interface Pull request #2479
- User template versioning added to ingestion pipeline with per-version regex resolution and direct extraction caching Pull request #2452
- Sidebar refactored: Signals credit shown as spend against total; usage progress bars aligned to design Pull request #2480
- Direct user-task extractions cached by exact text for 5 minutes Pull request #2464
- Setup CTA now rotates agent icons with copy-on-hover interaction; hero buttons remain responsive on mobile Pull request #2481
- Fixed blog code blocks disappearing in long posts due to React lazy-loading behavior Pull request #2465
- Included Signals credits reduced: $2.50 Free, $7.50 Starter, $25 Pro; pricing displays and backend detection aligned Pull request #2454
- Parent ID index added on clusters table Pull request #2475
- Landing calculator unified Signals pricing at $0.05/1M input, $0.01/1M cached input, $0.35/1M output with measured medians Pull request #2378
This week: Signals pricing moves to pay-as-you-go with real-time usage tracking, user template versioning ships for trace extraction, and billing UI redesigned for clarity.
Ship week: Signals pricing model updated to pay-as-you-go with ClickHouse-backed usage tracking and clearer billing UI. User template versioning now enables per-version regex resolution for trace content. Setup CTA rotates agent icons, sidebar cards show spend against total credit, and blog rendering fixed for long-form content.
Week of September 21, 2026
What shipped
- Fixed Responses API LLM profiles to use non-strict function tools and set store: false on response requests. Pull request #2422
- LLM profiles now reject unused fields instead of silently dropping them, and surface malformed AEAD_SECRET_KEY errors during setup. Pull request #2424
- Fixed shared trace loading with responsive layout improvements and corrected trace page initialization. Pull request #2399
- Refactored span message processing into separate stage functions, breaking down a 720-line function into manageable pieces. Pull request #2390
- Added Redis batch insert with TTL support to the cache layer for more efficient bulk key writes. Pull request #2442
- Search snippets are now withheld under masking policy on dual-mode projects to prevent PII leaks. Pull request #2393
- API keys and CLI tokens now read as masked when accessed on dual-mode projects. Pull request #2392
- Removed the CLUSTERING_ENABLED frontend feature flag since clustering is on by default in EE and OSS produces no clusters. Pull request #2420
- Added a Redis cache key constant for temporary signal throttling per project. Pull request #2439
Why it matters
Custom gateway support through Responses API expands LLM profile flexibility for self-hosted deployments. PII masking improvements strengthen security for dual-mode projects. Refactoring span processing and fixing trace loading improve code maintainability and user experience.
Changelog entry
- Fix Responses API to use non-strict function tools and set store: false on response requests Pull request #2422
- Reject unused fields in LLM profile configuration and surface malformed AEAD_SECRET_KEY errors Pull request #2424
- Fix shared trace loading and implement responsive trace layout on shared trace pages Pull request #2399
- Refactor span message processing into separate stage functions for improved maintainability Pull request #2390
- Add
batch_insert_with_ttlto cache layer for efficient bulk Redis key operations Pull request #2442 - Withhold search snippets under masking policy on dual-mode projects Pull request #2393
- Apply masking policy to API key and CLI token reads on dual-mode projects Pull request #2392
- Remove CLUSTERING_ENABLED frontend feature flag Pull request #2420
- Add Redis cache key for temporary signal throttling per project Pull request #2439
Responses API now works with custom gateways. Fixed PII masking in dual-mode projects. Improved trace loading and responsive layouts. Better error handling for LLM profile setup.
This week we expanded LLM profile support with Responses API for custom gateways, strengthened PII protection through masking policies on dual-mode projects, and improved the trace viewing experience with responsive layouts and fixed loading behavior. We also refactored span processing into stage functions and added batch Redis operations for better performance.
Week of September 14, 2026
What shipped
- Dual mode for PII handling now stores canonical text alongside byte-range masks, letting different project members read appropriate versions of the same trace. Pull request #2361
- Fixed realtime SSE to respect dual-mode access policies so masked readers don't receive unmasked agent input over the channel. Pull request #2389
- Refactored PII redactor internals to use SpanVerdict, unify index space, and properly fail batches when project mode lookup fails. Pull request #2384
- Access policies derived from actor roles are now baked into span and trace reads through the query engine. Pull request #2360
- Added dataset CRUD API with create, read, update, delete, and row operations under both project and CLI auth paths. Pull request #2340
- Span detail view now skips reasoning blocks when extracting heuristic previews from reasoning model outputs. Pull request #1865
- Declared the docs sitemap in robots.txt to improve indexing of the 139 documentation URLs. Pull request #2374
- Added static SVG brand assets (icon and wordmark) under frontend/public/brand/ for frontend use. Pull request #2375
- Reverted force-commit-on-batch change to prevent unbounded memory growth in Quickwit at high traffic. Pull request #2362
Changelog entry
- Dual mode for PII now available: stores canonical text and masks, with read paths respecting access policies per actor Pull request #2361
- Fixed realtime
agent_inputSSE to respect dual-mode masks for project subscribers Pull request #2389 - Refactored PII redactor: SpanVerdict type, unified index space, batch-level mode lookup failures Pull request #2384
- Access policies derived from actor roles now applied to span and trace reads Pull request #2360
- Dataset CRUD API: POST/GET/PATCH/DELETE datasets and rows via /v1 (project auth) and /v1/cli (user auth) Pull request #2340
- Span detail view now skips thinking blocks when extracting previews from reasoning model outputs Pull request #1865
- Reverted force-commit batching to prevent unbounded Quickwit memory growth at high traffic Pull request #2362
Shipped dual-mode PII handling: store text once, apply masks per reader. Added dataset CRUD API. Fixed realtime agent_input masking, span preview extraction, and Quickwit memory pressure.
This week we shipped the final piece of trace-level access control: dual-mode PII handling stores canonical text with byte-range masks, letting different project members read appropriate versions of the same trace. We also added a dataset CRUD API for programmatic dataset management, fixed realtime masking for dual-mode projects, improved span preview extraction for reasoning models, and resolved a Quickwit memory issue at high traffic.