Address remaining SDK-288 tracing UX issues - #39
Merged
Conversation
This was referenced Sep 1, 2026
Stephen Belanger (Qard)
marked this pull request as ready for review
September 1, 2026 16:06
Stephen Belanger (Qard)
requested a review
from Abhijeet Prasad (AbhiPrasad)
September 1, 2026 16:06
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0317e8ef77
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "Codex (@codex) review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "Codex (@codex) address that feedback".
Abhijeet Prasad (AbhiPrasad)
approved these changes
Sep 1, 2026
Stephen Belanger (Qard)
added a commit
to braintrustdata/bt
that referenced
this pull request
Sep 2, 2026
## Summary Implements the `bt`-owned SDK-288 work: - SDK-272: make `trace enable` / `trace setup`, `trace run`, and `trace import` complete from credentials already available to the command. `BRAINTRUST_API_KEY` remains invocation-local for run/import; persistent setup materializes it into a normal saved profile for future hooks; interactive commands collect a missing key, org, or project instead of requiring a separate login step. - SDK-274: require explicit consent before ordinary `bt login` saves `BRAINTRUST_API_KEY`; persistent tracing setup itself is the explicit request to create the durable login it needs. - SDK-270 / SDK-275: keep bare `bt status` concise; expand saved profile and credential-storage details only under `--all`, and show precedence only for an active environment override. - SDK-276: clarify that logout is local-only and add a one-confirmation `logout --all` flow with per-profile JSON results. Profile deletion clears config references before removing metadata, and rename stages both names while references move so config never points to a missing profile. - SDK-273: provide side-effect-free, credential-redacted auth provenance to `bt trace doctor`. - SDK-277: add `bt profiles doctor` and `bt profiles repair`. Automatic diagnosis and cleanup operate on the enumerable plaintext fallback store; explicit deleted profile names can be repaired across the OS credential store and plaintext fallback without unsafe keychain enumeration. - SDK-278: format no-browser/remote OAuth as labeled authorization, callback, credential-storage, and logged-in-profile sections while keeping JSON and quiet output clean. - SDK-281: advance the embedded daemon to the integrated plugin-monorepo `main` commit containing PR #39 and stable trace profile IDs. ## Dependency braintrustdata/braintrust-coding-agent-plugins#39 has been merged. This PR pins plugin-monorepo `main` at exact commit `202b3e305ea7ff74bc6ea117f46a32cc18b61b25`, which contains both the PR #39 import/setup fixes and the subsequent stable-profile-ID migration from #44. ## Validation - `cargo fmt --check` - `cargo clippy --all-targets --locked -- -D warnings -A clippy::collapsible_match` - `cargo test --all-targets --locked -- --skip eval::tests::eval_args_from_env_populates_supported_fields --skip eval::tests::eval_args_parse_first_sampling_flag --skip eval::tests::eval_args_parse_max_concurrency_flag` - 793 unit tests passed; 3 known eval argument-parser tests skipped - 62 CLI tests passed - dataset, eval dev-server, eval fixture, functions, and setup integration suites passed - focused regression proving environment-auth setup persists and routes by the new stable profile ID - `cargo check --locked` - `git diff --check` The three excluded eval tests fail without these changes because their parser inputs combine `--dev` with `--max-concurrency`, which clap declares mutually conflicting. Current Rust 1.95 clippy also reports unrelated `collapsible_match` findings in existing dataset, SQL, and trace code; the repository's existing lint invocation allows that lint.
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.
Summary
BRAINTRUST_API_KEYAddresses SDK-279, SDK-280, SDK-282, and SDK-284.
Validation
make testcargo test --manifest-path bt-daemon/Cargo.toml --all-featurescargo clippy --manifest-path bt-daemon/Cargo.toml --all-features --all-targets -- -D warnings