What's Changed
Features
- feat(ui): change trace deletion warning by @jannikmaierhoefer in #11147
- feat(trace): Add json viewer for performant rendering of large json i/o by @FroeMic in #11010
- feat(model-prices): match models if provider prefix is present by @hassiebp in #11118
- feat(ui): change score config menu name by @jannikmaierhoefer in #11167
- feat(ui): change wording in comments function by @jannikmaierhoefer in #11184
- feat(ui): only show tags if tags exist by @jannikmaierhoefer in #11188
Fixes / Improvements
- fix(init): warn when LANGFUSE_INIT_* env vars are partially configured by @Steffen911 in #11122
- fix: dev-tables.sh should use FINAL modifier to produce a correct set of rows by @sumerman in #11124
- fix: get rid of extra IN clauses along trace and score deletion paths introduced in #10554 by @sumerman in #11126
- fix(tracing): show input / output label on trace correctly if not ChatML by @nimarb in #11132
- fix(codemirror): syntax highlighting throwing error by @nimarb in #11134
- style(dataset-versioning): remove warning banner from DatasetVersionHistoryPanel and update icon in DatasetItemContent by @marliessophie in #11133
- fix: fix the behaviour of nulls and score joins on the metrics v2 path by @sumerman in #11148
- fix: don't expose traces view via API endpoint by @sumerman in #11157
- fix(otel): parse cost_details for non-Langfuse SDK spans by @hassiebp in #11166
- fix(trace-table): show output column for non-chat message arrays by @hassiebp in #11163
- fix(trace): log view tab key should be unique by @nimarb in #11172
- fix(trace): advanced json viewer improvements by @FroeMic in #11162
- fix(trace): paddings by @nimarb in #11174
- fix(trace): make the new JSON view beta by @nimarb in #11176
- perf: make batch export part size configurable and reduce default to 10MiB by @Steffen911 in #11185
- perf: deduplicate jobs on the event propagation queue by @Steffen911 in #11190
- fix(ui): trace preview empty state popup layout and visibility by @Lotte-Verheyden in #11192
- fix(datasets): set default order condition to show most recent datasets first by @marliessophie in #11198
- fix(datatable): allow filtering by empty string in stringOptions filter by @FroeMic in #11189
- fix(api): enforce row_limit on metrics endpoints by @sumerman in #11196
- fix(trace): align media label by @FroeMic in #11202
- fix(api): prevent v2/metrics from accepting hight cardinality dimensions by @sumerman in #11203
- fix(trace): convert latency from milliseconds to seconds in observati… by @FroeMic in #11208
- fix(trace): reduce indentation in advanced json view by @FroeMic in #11209
- fix(trace): fix bottom padding by @FroeMic in #11207
- fix(trace): Observation detail header alignment by @FroeMic in #11211
- fix(worker): add deduplication to experiments backfill queries by @Steffen911 in #11226
- fix(batch-exports): update row ID retrieval method in BatchExportsTable component by @marliessophie in #11205
- fix(api): fix single SELECT optimization on count measures by @sumerman in #11236
- perf: events table io loading by @maxdeichmann in #11178
- fix(evalService): add filter for valid_to in extractVariables by @marliessophie in #11238
Chores
- chore(dataset-versioning): add UI changes by @marliessophie in #11068
- chore(api): dedup usage fields by @sumerman in #11204
- chore: fern API docs for public v2 by @sumerman in #10547
- chore: clickhouse migrations for persisted tools by @nimarb in #11130
- chore(dataset-items): adjust read access patterns to read
valid_toby @marliessophie in #11155 - chore: upgrade trpc to 11.8.0 by @nimarb in #11239
- chore(dataset-versioning): change icon to "history" by @marliessophie in #11125
- chore(billing): remove double invoice note from Billing settings by @FroeMic in #11119
- chore: migrate event backfill script to part-based observation processing by @Steffen911 in #11052
- chore(deps): upgrade turbo to 2.6.3 by @nimarb in #11158
- chore(api): update trace colulmn handling on observation API on top of events by @sumerman in #11161
- chore(deps): bump remark-js to 4.0.1 by @nimarb in #11159
- chore(dataset-items): adjust write access patterns to write
valid_toby @marliessophie in #11151 - chore(dataset-items): create idx on [project_id, id, valid_from] by @marliessophie in #11144
- chore(dataset-items): add nullable valid_to col by @marliessophie in #11149
- chore: yet another shot at making observations v2 test less flakey by @sumerman in #11152
- chore(dataset-items): add background migration to backfill valid_to by @marliessophie in #11153
- chore: add options for background migration by @marliessophie in #11183
- chore(dataset-items): adjust seeder to account for valid_to by @marliessophie in #11195
- chore: extend invalid observation logging errors by @Steffen911 in #11200
Full Changelog: v3.140.0...v3.141.0