Add bt init command with managed .bt directory layout#98
Draft
Parker Henderson (parkerhendo) wants to merge 8 commits intomainfrom
Draft
Add bt init command with managed .bt directory layout#98Parker Henderson (parkerhendo) wants to merge 8 commits intomainfrom
bt init command with managed .bt directory layout#98Parker Henderson (parkerhendo) wants to merge 8 commits intomainfrom
Conversation
bt init command with managed .bt directory layout
|
Latest downloadable build artifacts for this PR commit
Available artifact names
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
TL;DR
Updates
bt initcommand with managed gitignore rules and improved runner script caching to use repository-local storage.What changed?
bt initto generate.bt/.gitignoreto ignore generated artifactsbt_dirmodule to centralize.bt/directory path management and layout enforcement.bt/cache/runners/instead of global cache so all runners are handled the same way (instead ofts-nodehaving a special case)js_runnerandpython_runnermodules into unifiedrunnermodule withjsandpysubmodules.bt/directory layout.bt/directory operationsThe managed
.bt/.gitignoretracksconfig.json,.gitignore, andskills/by default while ignoring runtime artifacts like runner caches.How to test?
Run
bt initin a new directory to verify it creates the expected structure. Test that eval commands now cache runners in.bt/cache/runners/within the repository. Verify that the gitignore rules properly track/ignore the expected files.Why make this change?
This establishes a consistent project structure for Braintrust repositories, improves runner script caching by keeping artifacts local to each project, and provides better control over what gets tracked in version control through managed gitignore rules.