bdo-cli 0.44.10 → 0.44.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +141 -0
- package/README.md +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,147 @@ All notable changes to Bushido (bdo) will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.44.12] (2026-08-16)
|
|
9
|
+
|
|
10
|
+
### Fixes
|
|
11
|
+
|
|
12
|
+
- **CLI**: bdo-only subcommands no longer fall back to running their name as
|
|
13
|
+
an external program when argument parsing fails. `bdo map --badflag` used to
|
|
14
|
+
report "not found in PATH" (exit 127) instead of clap's usage error; now
|
|
15
|
+
`map`, `deps`, `json`, `smart`, `telemetry`, `read`, and `log` all show the
|
|
16
|
+
real error.
|
|
17
|
+
|
|
18
|
+
`log` was the notable one: macOS ships an unrelated `/usr/bin/log` (Apple's
|
|
19
|
+
unified logging), so a mistyped flag on `bdo log` silently invoked a
|
|
20
|
+
different program with your arguments and exited 0 — reading as success to
|
|
21
|
+
anything gating on the exit code.
|
|
22
|
+
|
|
23
|
+
### Chores
|
|
24
|
+
|
|
25
|
+
- CI now gates on `cargo fmt --all --check`, `cargo clippy --all-targets -D
|
|
26
|
+
warnings`, and `cargo test`, on Linux and Windows. The Windows leg exists
|
|
27
|
+
because 0.44.7's release was broken by a Windows-only lint that nothing
|
|
28
|
+
caught until tag time.
|
|
29
|
+
|
|
30
|
+
## [0.44.11] (2026-08-03)
|
|
31
|
+
|
|
32
|
+
### Fixes
|
|
33
|
+
|
|
34
|
+
- Replaced remaining `rtk` references with `bdo` across docs, comments, and the
|
|
35
|
+
hook instruction templates written into agent config, with regression tests
|
|
36
|
+
asserting the generated instructions no longer mention the legacy name.
|
|
37
|
+
|
|
38
|
+
## [0.44.10] (2026-07-24)
|
|
39
|
+
|
|
40
|
+
### Chores
|
|
41
|
+
|
|
42
|
+
- **npm package**: stop generating `npm-shrinkwrap.json` (`npm-shrinkwrap = false`
|
|
43
|
+
in `dist-workspace.toml`). The shrinkwrap matched `package.json` exactly and
|
|
44
|
+
posed no real risk, but security scanners flag any npm package that ships one
|
|
45
|
+
as a supply-chain heuristic — not worth re-justifying every release.
|
|
46
|
+
|
|
47
|
+
## [0.44.9] (2026-07-22)
|
|
48
|
+
|
|
49
|
+
### Features
|
|
50
|
+
|
|
51
|
+
- **`bdo stale`**: new "DOC↔IMPL DRIFT" check — flags `` `bdo <cmd>` ``
|
|
52
|
+
references in markdown that name a subcommand `bdo --help` no longer lists
|
|
53
|
+
(checked against the CLI's own clap definition, so the check can't itself
|
|
54
|
+
drift). Caught a real doc bug on its first run (`bdo eslint` → `bdo lint`).
|
|
55
|
+
- **`.bdostaleignore`**: inline suppression — a line containing the literal
|
|
56
|
+
string `bdo-stale-ignore` (any comment syntax) is skipped by both the stale-
|
|
57
|
+
marker scan and the new doc-drift check, for one-off intentional mentions
|
|
58
|
+
that don't warrant a whole-file ignore entry.
|
|
59
|
+
|
|
60
|
+
### Fixes
|
|
61
|
+
|
|
62
|
+
- **`bdo stale`**: bound the doc-drift scan's allocation by a cap instead of
|
|
63
|
+
only truncating at display time — a pathological markdown file could
|
|
64
|
+
previously force formatting and allocating a `String` per match before any
|
|
65
|
+
truncation happened.
|
|
66
|
+
|
|
67
|
+
## [0.44.8] (2026-07-15)
|
|
68
|
+
|
|
69
|
+
### Security
|
|
70
|
+
|
|
71
|
+
- **Secret redaction at rest**: mask known secret formats (GitHub/GitLab/npm/
|
|
72
|
+
AWS/Slack/OpenAI/Anthropic/Stripe/Google tokens, JWTs, `Authorization`
|
|
73
|
+
headers, `password=`/`api_key:` assignments, PEM private key blocks) before
|
|
74
|
+
persisting command strings to the tracking DB or raw output to tee recovery
|
|
75
|
+
files. Closes the gap left by 0.44.7's permission hardening: files were
|
|
76
|
+
owner-only, but their contents were still plaintext.
|
|
77
|
+
|
|
78
|
+
### Fixes
|
|
79
|
+
|
|
80
|
+
- **Windows build**: fix unused-variable errors in permission helpers that
|
|
81
|
+
only used their path argument under `#[cfg(unix)]`.
|
|
82
|
+
|
|
83
|
+
## [0.44.7] (2026-07-11)
|
|
84
|
+
|
|
85
|
+
### Security
|
|
86
|
+
|
|
87
|
+
- **Local data protection**: tracking DB and tee recovery files are now
|
|
88
|
+
created owner-only (0600 for files, 0700 for their default directories),
|
|
89
|
+
closing a world-readable window for locally stored command history and raw
|
|
90
|
+
output. Override paths (`BDO_DB_PATH`, `BDO_TEE_DIR`, config) skip the
|
|
91
|
+
directory chmod (they may be shared/user-managed) but files are still
|
|
92
|
+
tightened.
|
|
93
|
+
- **Telemetry**: `low_savings_commands` now reports only the tool name, not
|
|
94
|
+
the first three words of the command (which could carry URL tokens or other
|
|
95
|
+
incidental data).
|
|
96
|
+
|
|
97
|
+
## [0.44.6] (2026-07-07)
|
|
98
|
+
|
|
99
|
+
### Features
|
|
100
|
+
|
|
101
|
+
- **`bdo ci`**: single pre-merge gate composing `bdo review` (informational
|
|
102
|
+
change summary), `bdo stale` (whole-tree residue audit), and `bdo test
|
|
103
|
+
--changed` (change-set tests) into one exit code. All stages always run
|
|
104
|
+
(no fail-fast) so a single pass surfaces every blocker; a real test exit
|
|
105
|
+
code (e.g. cargo's 101) takes priority over the bare residue-gate `1`.
|
|
106
|
+
|
|
107
|
+
### Chores
|
|
108
|
+
|
|
109
|
+
- Shortened the Homebrew formula's `desc` line to stay under rubocop's
|
|
110
|
+
118-column limit. (0.44.5 was an internal version bump that never
|
|
111
|
+
published — its plan failed because the tag didn't point at the version
|
|
112
|
+
bump commit; no user-facing changes beyond what's listed here.)
|
|
113
|
+
|
|
114
|
+
## [0.44.4] (2026-07-04)
|
|
115
|
+
|
|
116
|
+
First release distributed via the new [cargo-dist](https://opensource.axo.dev/cargo-dist/)
|
|
117
|
+
pipeline — tagged pushes now build and publish to GitHub Releases, npm
|
|
118
|
+
(`bdo-cli`), and Homebrew (`tedorigawa001/tap/bushido`) automatically. Also
|
|
119
|
+
the first tagged/published release since 0.43.0; covers all work merged in
|
|
120
|
+
that window (versions 0.44.0–0.44.3 were internal bumps that were never
|
|
121
|
+
independently released).
|
|
122
|
+
|
|
123
|
+
### Features
|
|
124
|
+
|
|
125
|
+
- **`bdo gain --by-agent`**: per-agent attribution for Claude Code, Gemini
|
|
126
|
+
CLI, Cursor, GitHub Copilot, and Google Antigravity. Gemini/Copilot
|
|
127
|
+
attribution is embedded directly in the rewritten command
|
|
128
|
+
(`BDO_AGENT=<agent>`) since those hooks don't otherwise expose it.
|
|
129
|
+
- **`bdo test --changed`**: multi-language test planning via `core::testplan`
|
|
130
|
+
— Rust (`cargo test -- <stems>`), Go (`go test <changed packages>`), Python
|
|
131
|
+
(`pytest <files> [-k "<stems>"]`), JS/TS (`vitest related --run` /
|
|
132
|
+
`jest --findRelatedTests`, runner auto-detected from `package.json`).
|
|
133
|
+
|
|
134
|
+
### Security
|
|
135
|
+
|
|
136
|
+
- **Command injection**: single-quote the `pytest -k` filter value instead of
|
|
137
|
+
interpolating it unescaped.
|
|
138
|
+
- **Test execution**: run test commands via argv instead of `sh -c`, removing
|
|
139
|
+
a shell-interpretation step entirely.
|
|
140
|
+
|
|
141
|
+
### Fixes
|
|
142
|
+
|
|
143
|
+
- `bdo init` and hook decision output: rebrand stale "RTK" references,
|
|
144
|
+
Codex uses inline `AGENTS.md` (not `@import`), spec-compliant Gemini
|
|
145
|
+
decision format, clarified Copilot formats.
|
|
146
|
+
- `bdo review` / `bdo map`: honor `.bdostaleignore`; one-line body signatures
|
|
147
|
+
in map output.
|
|
148
|
+
|
|
8
149
|
## [0.43.0] (2026-06-18)
|
|
9
150
|
|
|
10
151
|
First Bushido (bdo) release line — a hardened fork of
|
package/README.md
CHANGED
|
@@ -85,7 +85,7 @@ Download from [releases](https://github.com/tedorigawa001/TokenReductionTool/rel
|
|
|
85
85
|
### Verify Installation
|
|
86
86
|
|
|
87
87
|
```bash
|
|
88
|
-
bdo --version # Should show "bdo 0.
|
|
88
|
+
bdo --version # Should show "bdo 0.44.11"
|
|
89
89
|
bdo gain # Should show token savings stats
|
|
90
90
|
```
|
|
91
91
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"artifactDownloadUrls": [
|
|
3
|
-
"https://github.com/tedorigawa001/TokenReductionTool-BDO/releases/download/v0.44.
|
|
3
|
+
"https://github.com/tedorigawa001/TokenReductionTool-BDO/releases/download/v0.44.12"
|
|
4
4
|
],
|
|
5
5
|
"author": "Patrick Szymkowiak",
|
|
6
6
|
"bin": {
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
"zipExt": ".tar.xz"
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
|
-
"version": "0.44.
|
|
94
|
+
"version": "0.44.12",
|
|
95
95
|
"volta": {
|
|
96
96
|
"node": "18.14.1",
|
|
97
97
|
"npm": "9.5.0"
|