Uh oh!
There was an error while loading. Please reload this page.
fix(cli/push): address round-2 Bugbot findings on the v0.4.0 RC (#106) - #109
Merged
Conversation
logout cleared the token and email but left active_client_id in ~/.tracebloc/config.json. Since that pointer is account-scoped, a later `login` as a different user inherited the stale id — `auth status` and `client list` would surface the previous account's active client until the user ran `client create`/`client use` again. Clear it alongside the token/email so logout fully drops local session state. Bugbot: "Stale active client after logout" (Medium, v0.4.0 RC, #107) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ty (#106) The re-vendored ingest.v1.json (#103) accepts token_classification, but the category registry didn't list it — so `dataset push --category=token_classification` hit the "isn't a recognized task category" path despite being schema-valid (the same misrouting just fixed for causal_language_modeling). Added it as a known, not-yet-CLI-supported FamilyText category with a pending-support note (the safe default — it was never pushable, so this only improves the message; flip to supported when the texts/token-label staging lands). Root-cause guard: the existing registry tests only pinned the registry against a hand-written list, which stayed self-consistent while drifting from the schema. Added TestRegistryCoversSchemaCategories — parses the embedded schema's category enum and asserts every entry is registry-known — so any future schema-only category is caught here, not in the next review pass. (The reverse, a registry-only known-unsupported alias like instance_segmentation, is allowed: it's gated out before schema validation.) Bugbot: "Missing token_classification registry entry" (Medium, v0.4.0 RC, #107) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
LukasWodka
approved these changes
Jun 24, 2026
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 freeto 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.
Second batch of Cursor Bugbot findings on the v0.4.0 RC — surfaced when Bugbot re-reviewed the promote PR #107 after #108 merged. Both Medium. Rolls up under #106.
1.
cli: logout leftactive_client_idbehind (Medium)logoutcleared the token + email but notactive_client_id. That pointer is account-scoped, so a laterloginas a different user inherited the stale id —auth status/client listwould show the previous account's active client until overwritten. Now cleared alongside the token/email.2.
push: schema acceptstoken_classification, registry didn't know it (Medium)The re-vendored
ingest.v1.json(#103) addedtoken_classification, butcategoryRegistrydidn't — sodataset push --category=token_classificationhit the "unrecognized category" path despite passing schema validation (same class as thecausal_language_modelingfix in #108). Added it as a known, not-yet-supportedFamilyTextcategory with a pending-support note — the safe default (it was never pushable, so this only improves the message).Root-cause guard (stops the whack-a-mole): the registry tests only pinned the registry against a hand-written list, which stayed self-consistent while drifting from the schema. Added
TestRegistryCoversSchemaCategories— it parses the embedded schema's category enum and asserts every entry is registry-known, so any future schema-only category is caught here instead of in a later review pass. (The reverse — a registry-only known-unsupported alias likeinstance_segmentation— is allowed; it's gated out before schema validation.)Tests
active_client_idis clearedgofmt/vet/buildclean; fullgo test -race -cover ./...green🤖 Generated with Claude Code
Note
Low Risk
Localized auth config cleanup and registry/test updates; no changes to token handling, push staging, or network behavior beyond clearer category gating.
Overview
Auth:
logoutnow clearsactive_client_idalong with token and email so a later login as another user does not keep showing the previous account’s active client inauth status/client list.Push categories:
token_classificationis added to the category registry as known but not CLI-supported (with an unsupported note), sodataset push --category=token_classificationis no longer rejected as “unrecognized” when the ingest schema already allows it.Tests: Logout coverage asserts the active client is cleared.
TestRegistryCoversSchemaCategoriesparses the embedded ingest schema’s category enum and requires every value to be registry-known, reducing future schema-only drift without hand-maintained lists.Reviewed by Cursor Bugbot for commit 321c0f1. Bugbot is set up for automated code reviews on this repo. Configure here.