Experimental feature labels for v0.1.0 by jeremy · Pull Request #158 · basecamp/basecamp-cli
added 2 commits
February 24, 2026 23:20Add Experimental field to CommandInfo (omitempty JSON) and mark the tui entry. The `basecamp commands` output prefixes experimental descriptions with [experimental]; the JSON response includes the boolean field. Cobra Short/Long get the [experimental] tag and active-development disclaimer. An annotation on the command provides a hook for future generic detection. A one-time-per-version stderr advisory prints on first `basecamp tui` invocation, gated by a sentinel file in CacheDir. Resets on upgrade so the notice resurfaces when experimental behavior is most likely to have changed.
Add experimentalBadge field and SetExperimental setter to Breadcrumb. When enabled, renders an [experimental] badge in Warning color before the account badge. Wire SetExperimental(true) in Workspace.New() — hardcoded since the TUI is the only workspace entry point. Promotion to stable is just removing the call.
Copilot AI review requested due to automatic review settings
February 25, 2026 07:21- Guard printExperimentalNotice against empty cacheDir - Suppress fmt.Fprintf return values for errcheck/lint - Tighten sentinel file permissions to 0700/0600 - Gate [experimental] description prefix to human output only; JSON relies on the Experimental bool field without mutation - Add unit tests for sentinel lifecycle (once-per-version, empty cache dir, version upgrade resurface)
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