Skip to content

BEP — BAML Enhancement Proposals

BEPs are design proposals for evolving the BAML language and core tooling.

Below is an auto-generated index of all BEPs.

⚠️ Do not edit the table below by hand. Run the BEP update script instead (see instructions at the bottom).

Status Meaning
Draft Work in progress, not ready for review
Proposed Ready for review and discussion
Accepted Approved for implementation
Implemented Feature is live in BAML
Rejected Decided against
Superseded Replaced by another BEP
BEP
BEP-001: Exception Handling   Proposed



Shepherd(s): Vaibhav Gupta | Created: 2025-11-20 | Updated: 2025-12-04
BEP-002: match   Accepted



Shepherd(s): hellovai | Created: TBD | Updated: TBD

Management

Scripts are self-contained Python scripts using uv. Ensure uv is installed.

Creating a new BEP

To create a new proposal:

mise run bep:new -- "Feature Name"

This will: 1. Create a new directory beps/BEP-XXX-feature-name/ 2. Create a README.md template inside it with the next available BEP ID.

Updating the Index

After modifying any BEP, update this README table:

mise run bep:readme

Managing BEPs

To update a BEP's status or timestamp:

Touch (Update Timestamp):

mise run bep:update 001
# OR
mise run bep:update BEP-001-exceptions

Change Status:

mise run bep:update 001 --status Proposed
(Valid statuses: Draft, Proposed, Accepted, Implemented, Rejected, Superseded)