New features
- B-Wave's
--virtual option now works across the documented five-command
matrix. Virtual Signals support fail-fast ordered resolution, sample
trigger and capture expressions, and value point evaluation. The CLI,
public docs, and Coverage Analyst guidance now describe the same behavior.
(#320)
Quality of life
booley auth now mints Claude credentials inside the validated Session
Runtime while credential storage and runtime-spec reseeding remain on the
host. It safely reuses running runtimes and recovers interrupted refreshes.
- Doctor now probes the live MCP catalog through a supported entry point and
reconciles positively identified stopped VS Code Session Runtimes. Deep
Doctor resolves only its selected Targets, avoiding unnecessary work across
large vendored Target matrices.
- Project initialization and Doctor now share a typed, guarded line-ending
reconciliation path. Repairs revalidate the worktree, index, attributes, and
Git configuration before changing files, preserving unrelated staged work.
(#259)
- The Session Runtime now includes Claude Code 2.1.259 and Codex CLI 0.153.1.
Development checks use Ruff 0.16.6.
- Installation guidance now distinguishes first-time setup from upgrades.
Bug fixes
- Concurrent synthesis runs can no longer delete a shared Target workspace
while another run is using it. Workspace leases remain held through report
snapshotting, and timeouts or release failures are reported as infrastructure
errors.
- Acceptance Journal recovery now tracks and reconciles exact prepared and
finalized commit identities, preserves finalized commits across interrupted
cleanup, and safely handles concurrent or symbolic ref movement.
(#257)
- Cycle Count grading preserves both the durable Target identity and callable
selector across current and baseline evidence, and rejects ambiguous or
identity-drifting baseline resolution.
(#267)
- Testbench reviews bind their selected simulation Target before inspecting
candidates, so unrelated or ambiguous Targets cannot redirect the review.
(#268)
- Doctor runs simulation probes from the correct Project directory and opens
generated contracts transactionally, leaving failed attempts retryable.
(#269)
- Doctor's simulation fail-path check now applies bad firmware and vector
overlays through an isolated runtime view, preventing configured run
directories from masking the deliberate failure or replacing real inputs.
- Doctor now recognizes tests generated by cocotb 2
@cocotb.parametrize,
treating rendered IDs as statically unverifiable while retaining warnings
for ordinary misspelled test names.
- Successful cocotb trace conversion removes simulator-owned raw VCD files,
including files emitted outside the managed work directory. Failed
conversions retain raw traces and diagnostics in the simulation work area.
- Simulation elaboration-only checks now classify missing build executables as
EDA tool errors while preserving report metadata and leaving the design
verdict unset.
- Windows initialization again recognizes trusted installed console launchers
after path normalization without accepting Project-controlled executables.
(#313)
- Managed Project Images now force PEP 517 isolation when installing pinned
dependencies, restoring packages with legacy source distributions such as
cocotb-test on the Python 3.13 sandbox.
- Native B-Wave metadata now remains correct for both single-root and
multi-root traces. (#266)
Upgrade notes
- No configuration migration is required. After upgrading, run
booley bootstrap, then use booley session refresh for a headless runtime
or Dev Containers: Rebuild Container for a VS Code runtime.
Full changes from v0.2.11