Skip to content

Commit 1873053

Browse files
committed
chore: release v3.0.7 — skills-first architecture, changelog, llms.txt updates
- CHANGELOG.md: added v3.0.7 and v3.0.6 entries, collapsed [Unreleased] - llms.txt: updated with skills-first architecture, PR review, security pack - llms-full.txt: full rewrite reflecting skills/, fix strategy/plan, all CLI flags - package.json: bumped to 3.0.7
1 parent 60ff3e3 commit 1873053

4 files changed

Lines changed: 183 additions & 122 deletions

File tree

CHANGELOG.md

Lines changed: 63 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,45 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## [3.0.5] — 2026-03-11
8+
## [3.0.7] - 2026-03-12
9+
10+
### Highlights
11+
- **All agents are now first-class skills.** Hunter, Skeptic, Referee, Fixer, Recon, and Doc-Lookup are bundled under `skills/` with proper frontmatter - no more loose prompt files.
12+
- **Prepublish guard** prevents publishing to npm without committing and pushing to GitHub first.
13+
- **CI fully green** on both Node 18 and 20 with portable shell detection and explicit branch naming.
14+
15+
### Added
16+
- `skills/hunter/SKILL.md` - deep behavioral code analysis skill (migrated from `prompts/hunter.md`)
17+
- `skills/skeptic/SKILL.md` - adversarial code reviewer skill (migrated from `prompts/skeptic.md`)
18+
- `skills/referee/SKILL.md` - independent final arbiter skill (migrated from `prompts/referee.md`)
19+
- `skills/fixer/SKILL.md` - surgical code repair skill (migrated from `prompts/fixer.md`)
20+
- `skills/recon/SKILL.md` - codebase reconnaissance skill (migrated from `prompts/recon.md`)
21+
- `skills/doc-lookup/SKILL.md` - unified documentation access skill (Context Hub + Context7)
22+
- `scripts/prepublish-guard.cjs` - blocks `npm publish` when git working tree is dirty or commits are unpushed
23+
- `prepublishOnly` lifecycle hook in `package.json` enforcing the guard
24+
25+
### Changed
26+
- `SKILL.md` orchestrator routing table now points to `skills/` instead of `prompts/`
27+
- `run-bug-hunter.cjs` preflight now validates all 10 bundled skill `SKILL.md` files exist
28+
- `run-bug-hunter.cjs` uses `process.env.SHELL || '/bin/bash'` instead of hardcoded `/bin/zsh` for CI portability
29+
- `worktree-harvest.test.cjs` uses `git init --bare -b main` for CI environments where default branch is not `main`
30+
- `templates/subagent-wrapper.md` references `skills/` paths instead of `prompts/`
31+
- `skills/README.md` now documents all 10 bundled skills (6 core agents + 4 security skills)
32+
33+
### Fixed
34+
- All v3.0.5 code changes that were published to npm but never committed to GitHub (21 new files, 19 updated files recovered)
35+
- `package.json` version synced to match npm-published 3.0.5→3.0.6→3.0.7
36+
37+
## [3.0.6] - 2026-03-12
38+
39+
### Added
40+
- `scripts/prepublish-guard.cjs` - first version of the publish safety net
41+
- CI fixes for worktree tests and shell portability
42+
43+
### Fixed
44+
- Synced all v3.0.5 changes from npm to GitHub (security skills, PR review flow, schemas, images)
45+
46+
## [3.0.5] - 2026-03-11
947

1048
### Added
1149
- `agents/openai.yaml` UI metadata for skill lists and quick-invoke prompts
@@ -17,33 +55,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1755

1856
## [Unreleased]
1957

20-
### Highlights
21-
- PR review is now a first-class workflow with `--pr`, `--pr current`, `--pr recent`, `--pr 123`, `--last-pr`, and `--pr-security`.
22-
- Bug Hunter now emits both `fix-strategy.json` and `fix-plan.json` before fix execution so remediation stays reviewable and confidence-gated.
23-
- The enterprise security pack now ships inside the repository under `skills/`, making PR security review and full security audits portable.
24-
- Fix execution is now safer through schema-validated planning, atomic lock handling, safer worktree cleanup, stash preservation, and shell-safe templating.
25-
26-
### Added
27-
- GitHub Actions npm publish workflow on release publish or manual dispatch, with version/tag verification before `npm publish`
28-
- bundled local security skills under `skills/`: `commit-security-scan`, `security-review`, `threat-model-generation`, and `vulnerability-validation`
29-
- enterprise security entrypoints: `--pr-security`, `--security-review`, and `--validate-security`
30-
- regression tests and eval coverage for integrated local security-skill routing
31-
- `schemas/fix-plan.schema.json` plus validation coverage for canonical fix-plan artifacts
32-
- focused regressions for lock-token ownership, atomic lock acquisition, stale artifact clearing, shell-safe worker paths, failed-chunk fix-plan suppression, managed worktree cleanup, and stash-ref preservation
33-
34-
### Changed
35-
- portable security capabilities now live inside the repository under `skills/` instead of depending on external machine-specific skill paths
36-
- package metadata now ships the `skills/` directory for self-contained distribution
37-
- main Bug Hunter orchestration now routes into the bundled local security skills for PR security review, threat-model generation, enterprise security review, and vulnerability validation
38-
- fix-lock now uses owner tokens for renew/release, atomic acquisition under contention, and safe recovery from corrupted lock files
39-
- run-bug-hunter now shell-quotes templated command arguments, clears stale artifacts before retries, validates fix-plan artifacts, and skips fix-plan emission when chunks fail
40-
- worktree cleanup/status now preserve unrelated directories, preserve stash metadata from defensive harvests, and avoid reporting manifest-only worktrees as dirty
41-
- current-PR git fallback now diffs against the discovered `origin/<default-branch>` ref when the base branch comes from `origin/HEAD`
42-
- README now opens with a short “New in This Update” and PR-first quick-start section
43-
- `llms.txt` and `llms-full.txt` now describe the PR review flow, bundled local security pack, current fix artifacts, and the current regression-test coverage
44-
- `skills/README.md` now explains how the bundled security skills map into Bug Hunter workflows
45-
46-
## [3.0.4] — 2026-03-11
58+
## [3.0.4] - 2026-03-11
4759

4860
### Added
4961
- `schemas/*.schema.json` versioned contracts for recon, findings, skeptic, referee, coverage, fix-report, plus shared definitions and example findings fixtures
@@ -63,15 +75,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6375
- preflight now checks all shipped structured-output schemas, not just findings
6476
- structured-output migration now enforces orchestrated outbound validation beyond the local/manual path
6577

66-
## [3.0.1] 2026-03-11
78+
## [3.0.1] - 2026-03-11
6779

6880
### Changed
6981
- Loop and fix-loop completion now require full queued source-file coverage, not just CRITICAL/HIGH coverage
7082
- Autonomous runs now continue through remaining MEDIUM and LOW files after prioritized chunks finish unless the user interrupts
7183
- Loop iteration guidance now scales `maxIterations` from queue size so large audits do not stop early
7284
- Large-codebase mode now treats LOW domains as part of the default autonomous queue instead of optional skipped work
7385

74-
## [3.0.0] 2026-03-10
86+
## [3.0.0] - 2026-03-10
7587

7688
### Added
7789
- `package.json` with `@codexstar/bug-hunter` package name
@@ -80,7 +92,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8092
- `bug-hunter doctor` checks environment readiness (Node.js, Context Hub, Context7, git)
8193
- Install via: `npm install -g @codexstar/bug-hunter && bug-hunter install`
8294
- Compatible with `npx skills add codexstar69/bug-hunter` for Cursor, Windsurf, Copilot, Kiro, and Claude Code
83-
- `scripts/worktree-harvest.cjs` manages git worktrees for safe, isolated Fixer execution (6 subcommands: `prepare`, `harvest`, `checkout-fix`, `cleanup`, `cleanup-all`, `status`)
95+
- `scripts/worktree-harvest.cjs` - manages git worktrees for safe, isolated Fixer execution (6 subcommands: `prepare`, `harvest`, `checkout-fix`, `cleanup`, `cleanup-all`, `status`)
8496
- 13 new tests in `scripts/tests/worktree-harvest.test.cjs` (full suite: 25/25 passing)
8597
- 5 new error rows in SKILL.md for worktree failures: prepare, harvest dirty, harvest no-manifest, cleanup, and checkout-fix errors
8698

@@ -90,7 +102,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
90102
- `templates/subagent-wrapper.md` updated with `{WORKTREE_RULES}` variable for Fixer isolation rules
91103
- SKILL.md Step 5b now shows a visible `⚠️` warning when `chub` is not installed (previously a silent suggestion)
92104

93-
## [2.4.1] 2026-03-10
105+
## [2.4.1] - 2026-03-10
94106

95107
### Fixed
96108
- `scripts/triage.cjs`: LOW-only repositories promoted into `scanOrder` so script-heavy codebases do not collapse to zero scannable files
@@ -101,28 +113,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
101113
### Added
102114
- `scripts/tests/run-bug-hunter.test.cjs`: regressions for LOW-only triage, optional `code-index`, `teams` backend selection, and delta-hop expansion
103115

104-
## [2.4.0] 2026-03-10
116+
## [2.4.0] - 2026-03-10
105117

106118
### Added
107119
- `scripts/doc-lookup.cjs`: hybrid documentation lookup that tries [Context Hub](https://github.com/andrewyng/context-hub) (chub) first for curated, versioned, annotatable docs, then falls back to Context7 API when chub doesn't have the library
108-
- Requires `@aisuite/chub` installed globally (`npm install -g @aisuite/chub`) optional but recommended; pipeline works without it via Context7 fallback
120+
- Requires `@aisuite/chub` installed globally (`npm install -g @aisuite/chub`) - optional but recommended; pipeline works without it via Context7 fallback
109121

110122
### Changed
111123
- All agent prompts (hunter, skeptic, fixer, doc-lookup) updated to use `doc-lookup.cjs` as primary with `context7-api.cjs` as explicit fallback
112124
- Preflight smoke test now checks `doc-lookup.cjs` first, falls back to `context7-api.cjs`
113125
- `run-bug-hunter.cjs` validates both scripts exist at startup
114126

115-
## [2.3.0] 2026-03-10
127+
## [2.3.0] - 2026-03-10
116128

117129
### Changed
118-
- `LOOP_MODE=true` is the new default every `/bug-hunter` invocation iterates until full CRITICAL/HIGH coverage
130+
- `LOOP_MODE=true` is the new default - every `/bug-hunter` invocation iterates until full CRITICAL/HIGH coverage
119131
- `--loop` flag still accepted for backwards compatibility (no-op)
120132
- Updated triage warnings, coverage enforcement, and all documentation to reflect the new default
121133

122134
### Added
123135
- `--no-loop` flag to opt out and get single-pass behavior
124136

125-
## [2.2.1] 2026-03-10
137+
## [2.2.1] - 2026-03-10
126138

127139
### Fixed
128140
- `modes/loop.md`: added explicit `ralph_start` call instructions with correct `taskContent` and `maxIterations` parameters
@@ -131,16 +143,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
131143
- Changed completion signal from `<promise>DONE</promise>` to `<promise>COMPLETE</promise>` (correct ralph-loop API)
132144
- Each iteration now calls `ralph_done` to proceed instead of relying on a non-existent hook
133145

134-
## [2.2.0] 2026-03-10
146+
## [2.2.0] - 2026-03-10
135147

136148
### Added
137149
- Rollback timeout guard: `git revert` calls now timeout after 60 seconds; conflicts abort cleanly instead of hanging
138150
- Dynamic lock TTL: single-writer lock TTL scales with queue size (`max(1800, bugs * 600)`)
139151
- Lock heartbeat renewal: new `renew` command in `fix-lock.cjs`
140-
- Fixer context budget: `MAX_BUGS_PER_FIXER = 5` large fix queues split into sequential batches
152+
- Fixer context budget: `MAX_BUGS_PER_FIXER = 5` - large fix queues split into sequential batches
141153
- Cross-file dependency ordering: when `code-index.cjs` is available, fixes are ordered by import graph
142154
- Flaky test detection: baseline tests run twice; non-deterministic failures excluded from revert decisions
143-
- Dynamic canary sizing: `max(1, min(3, ceil(eligible * 0.2)))` canary group scales with queue size
155+
- Dynamic canary sizing: `max(1, min(3, ceil(eligible * 0.2)))` - canary group scales with queue size
144156
- Dry-run mode (`--dry-run`): preview planned fixes without editing files
145157
- Machine-readable fix report: `.bug-hunter/fix-report.json` for CI/CD gating, dashboards, and ticket automation
146158
- Circuit breaker: if >50% of fix attempts fail/revert (min 3 attempts), remaining fixes are halted
@@ -150,7 +162,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
150162
- Per-bug revert granularity: clarified one-commit-per-bug as mandatory; reverts target individual bugs, not clusters
151163
- Post-fix re-scan severity floor: fixer-introduced bugs below MEDIUM severity are logged but don't trigger `FIXER_BUG` status
152164

153-
## [2.1.0] 2026-03-10
165+
## [2.1.0] - 2026-03-10
154166

155167
### Added
156168
- STRIDE/CWE fields in Hunter findings format, with CWE quick-reference mapping for security categories
@@ -164,14 +176,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
164176
### Fixed
165177
- `dep-scan.cjs` lockfile-aware audits (`npm`, `pnpm`, `yarn`, `bun`) and non-zero audit exit handling so vulnerability exits are not misreported as scanner failures
166178

167-
## [2.0.0] 2026-03-10
179+
## [2.0.0] - 2026-03-10
168180

169181
### Changed
170-
- Triage moved to Step 1 (after arg parse) was running before target resolved
171-
- All mode files consume triage JSON riskMap, scanOrder, fileBudget flow downstream
172-
- Recon demoted to enrichment no longer does file classification when triage exists
182+
- Triage moved to Step 1 (after arg parse) - was running before target resolved
183+
- All mode files consume triage JSON - riskMap, scanOrder, fileBudget flow downstream
184+
- Recon demoted to enrichment - no longer does file classification when triage exists
173185
- Mode files compressed: small 7.3→2.9KB, parallel 7.9→4.2KB, extended 7.1→3.3KB, scaled 7.3→2.7KB
174-
- Skip-file patterns consolidated single authoritative list in SKILL.md
186+
- Skip-file patterns consolidated - single authoritative list in SKILL.md
175187
- Error handling table updated with correct step references
176188
- hunter.md: scope rules and security checklist compressed
177189
- recon.md: output format template and "What to map" sections compressed
@@ -181,23 +193,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
181193
- single-file.md: local-sequential backend support added
182194

183195
### Added
184-
- `modes/_dispatch.md` shared dispatch patterns (18 references across modes)
196+
- `modes/_dispatch.md` - shared dispatch patterns (18 references across modes)
185197

186198
### Removed
187-
- Step 7.0 re-audit gate removed duplicated Referee's work
199+
- Step 7.0 re-audit gate removed - duplicated Referee's work
188200
- FIX-PLAN.md deleted (26KB dead planning doc)
189201
- README.md compressed from 8.5KB to 3.7KB
190202
- code-index.cjs marked optional
191203

192-
## [1.0.0] 2026-03-10
204+
## [1.0.0] - 2026-03-10
193205

194206
### Added
195-
- `scripts/triage.cjs` zero-token pre-recon triage, runs before any LLM agent (<2s for 2,000+ files)
207+
- `scripts/triage.cjs` - zero-token pre-recon triage, runs before any LLM agent (<2s for 2,000+ files)
196208
- FILE_BUDGET, strategy, and domain map decided by triage, not Recon
197209
- Writes `.bug-hunter/triage.json` with strategy, fileBudget, domains, riskMap, scanOrder
198210
- `local-sequential.md` with full phase-by-phase instructions
199211
- Subagent wrapper template in `templates/subagent-wrapper.md`
200-
- Coverage enforcement partial audits produce explicit warnings
212+
- Coverage enforcement - partial audits produce explicit warnings
201213
- Large codebase strategy with domain-first tiered scanning
202214

203215
[Unreleased]: https://github.com/codexstar69/bug-hunter/compare/v3.0.5...HEAD

0 commit comments

Comments
 (0)