file: ./content/docs/changelog.mdx meta: { "title": "Changelog" } # Changelog ## Week of 2025-06-09 * Correctly propagate `expected` and `metadata` values to function calls when running `invoke`. This means that if you provide `expected` or `metadata`, `input` refers to the top-level input argument. If you are passing in a value like `{input: "a"}`, then you must now use `{{input.input}}` to refer to the string "a", if you pass in `expected` or `metadata`. This should have no effect on the playground or scorers. * Chat-like thread layout that simplifies thread display to LLM and score data * Enable all agent nodes to access dataset variables with the mustache variable `{{dataset}}`. For example, to access `metadata.foo` in the third prompt in an agent, you can use `{{dataset.metadata.foo}}`. * Improve reliability of online scoring when logging high volumes of data to a project. * Tags can now be sorted in the project configuration page which will change their display order in other parts of the UI. * System-only messages are now supported in Anthropic and Bedrock models. * Logs page UI can now filter nested data fields in `metadata`, `input`, `output`, and `expected`. ### Python SDK version 0.1.4 * Add `project.publish()` to directly `push` prompts to Braintrust (without running `braintrust push`). * `@traced` now works correctly with async generator functions. * The OpenAI and Anthropic wrappers set `provider` metadata. ### JS SDK version 0.0.206 * Add support for `project.publish()` to directly `push` prompts to Braintrust (without running `braintrust push`). * The OpenAI and Anthropic wrappers set `provider` metadata. ## Week of 2025-06-02 * Support reasoning params and reasoning tokens in streaming and non-streaming responses in the [AI proxy](/docs/guides/proxy) and across the product (requires a stack update to 0.0.74). * New [braintrust-proxy](https://pypi.org/project/braintrust-proxy/) Python library to help developers integrate with their IDEs to support new reasoning input and output types. * New `@braintrust/proxy/types` module to augment OpenAI libraries with reasoning input and output types. * New streaming protocol between Brainstore and the API server speeds up queries. * Time brushing interaction enabled on Monitor page charts. * Can create user-defined views in the monitoring page. * Live updating time mode added to the monitoring page. * The `anthropic` package is now included by default in Python functions. * Audit log queries must now specify an `id` filter for the set of rows to fetch. These queries will only return the audit log for the specified rows, rather than the whole trace. * (Beta) continuously export logs, experiments, and datasets to S3. * Enable passing `metadata` and `expected` as arguments to the first agent prompt node. ### Python SDK version 0.1.3 * Improve retry logic in the control plane connection (used to create new experiments and datasets). ## Week of 2025-05-26 * The "Faster tables" flag is now the default (you may need to update your data plane if you are self-hosted). You should notice experiments, datasets, and the logs page load much faster. * Add Claude 4 models in Bedrock and Vertex to the AI proxy and playground. * Braintrust now incorporates cached tokens into the cost calculations for experiments and logs. The monitor page also now includes separate lines so you can track costs and counts for uncached, cached, and cache creation tokens. * Native support for thinking parameters in the playground.