Added
- Restored the deprecated
basectl ci setup|check|doctorand
--verbose-wrappercompatibility aliases for the v1.x contract; new
automation should use the canonical--ciand--debug-wrapperforms.
Changed
-
Align the published Base CLI provider used by development dependencies and
CI checkout workflows withbase-cli0.4.2. -
Treat GitHub's unsupported
branch_name_patternresponse as a capability
warning duringbasectl repo configure, preserving the issue-branch policy
workflow fallback instead of failing the whole repository configuration. -
Updated Base CI and source-checkout contract coverage to consume the
publishedbase-bash-libsv2.0.0 GA release commit. -
Refined basectl logs with comma-separated --command filters, the
--latest path action, and the explicit last-failed report command. -
Clarified basectl logs action conflicts and help for --latest, --tail, and
--open.
Fixed
-
Aligned Base's self-repository baseline checks and workspace agent brief with
base_manifest.yaml's./bin/base-testvalidation contract while retaining
tests/validate.shfor generated repositories. -
Preserved
basectl checkdiagnostics and exit status when the optional
latest-check record cannot be written, with stable JSON and text warnings. -
Separated
basectl workspace check's readiness renderer from
basectl workspace doctor's actionable finding renderer while preserving the
shared read-only workspace checks and JSON diagnostic shape. -
Continue
basectl onboardthrough project discovery and manifest trust
status whenbasectl doctorreports remaining findings. -
Kept helper-backed Bash defaults and runtime prompts shell-local so child
shells no longer report missing prompt helper functions. -
Corrected Bash startup's readonly
BASE_HOMEdetection to inspect only
variable attributes, allowing refreshed profile snippets to replace writable
Homebrew paths while keeping genuine mismatch recovery diagnostics specific. -
Prevented
basectl activatefrom reusing a virtual environment override owned
by a different active project. -
Unified human-readable
basectl doctoroutput across Base and project
findings, including shared status styling and removal of redundant headings. -
Tightened
basectl doctortext spacing, aligned fix continuations, and
rendered final summaries as INFO logs. -
Made
basectl history --commandaccept comma-separated command filters with
the same normalization and validation asbasectl logs --command. -
Preserved complete
basectl historylog paths, including filenames, in
interactive terminal tables. -
Replaced the generic setup-only summary after failed checks with guidance to
follow each finding's fix and rerun the check; activation-backed environment
checks now mention project activation. -
Kept
basectl historyandbasectl logsterminal tables aligned when command,
project, or run-ID values exceed their compact minimum widths. -
Render blocking
basectl checkfindings, remediation lines, and failure
summaries asERRORin text output while preservingWARNfor non-blocking
findings. -
Finalized
basectl activaterun bundles and history after the runtime shell
exits, while isolating commands entered in the shell from the activation run
context. -
Show the names and retention reasons for ordinary unmerged branches during
local and GitHub remote branch pruning. -
Reported GitHub merge-verification failures separately from unmerged branches
during branch and worktree pruning, while retaining every unverified cleanup
candidate and returning a nonzero status for incomplete prune scans. -
Consolidated each public invocation into one run ID, one
run.json, and one
logs/primary.log; delegated Bash/Python phases now share the DEBUG-level
diagnostic stream and produce one history row. Legacy internal logs and
history rows are ignored by discovery and reporting. -
Restored local-time defaults for interactive Python CLI logs so Bash and
Python output from one local run share a clock.--utc-wrapperremains the
explicit UTC mode, while persisted history, run metadata, and run IDs remain
canonical UTC; updated the cache, observability, and Base CLI documentation.