agentic-sdlc-wizard 1.27.0 → 1.29.0
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +43 -0
- package/CLAUDE_CODE_SDLC_WIZARD.md +18 -5
- package/README.md +2 -2
- package/cli/init.js +12 -0
- package/cli/templates/settings.json +3 -0
- package/package.json +1 -1
- package/skills/setup/SKILL.md +15 -5
- package/skills/update/SKILL.md +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,49 @@ All notable changes to the SDLC Wizard.
|
|
|
4
4
|
|
|
5
5
|
> **Note:** This changelog is for humans to read. Don't manually apply these changes - just run the wizard ("Check for SDLC wizard updates") and it handles everything automatically.
|
|
6
6
|
|
|
7
|
+
## [1.29.0] - 2026-04-07
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
- Node 24 compliance across all GitHub Actions workflows (#93, PR #160)
|
|
11
|
+
- 5 action version bumps: checkout@v5, setup-node@v5, upload-artifact@v6, create-pull-request@v8, sticky-pull-request-comment@v3
|
|
12
|
+
- 2 third-party actions replaced with `gh` CLI: `int128/hide-comment-action` → GraphQL `minimizeComment`, `softprops/action-gh-release` → `gh release create`
|
|
13
|
+
- 4 node-version bumps from 20 to 22
|
|
14
|
+
- 13 new compliance regression tests (`test-node24-compliance.sh`)
|
|
15
|
+
- Expression injection P0 in release.yml caught by CI reviewer and fixed
|
|
16
|
+
- Autocompact env var in settings.json (#88, PR #161)
|
|
17
|
+
- CLI now ships `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75` in `settings.json` `env` field (200K default)
|
|
18
|
+
- Smart merge preserves existing user env vars on upgrade; `--force` resets to defaults
|
|
19
|
+
- Handles malformed env values (arrays, strings) gracefully with type validation
|
|
20
|
+
- Setup wizard Step 9.5 references settings.json instead of shell profiles; 1M users guided to 30%
|
|
21
|
+
- 9 new tests (41 total CLI tests)
|
|
22
|
+
- Effectiveness scoreboard (#80, PR #162)
|
|
23
|
+
- `.metrics/catches.jsonl`: 52 historical bug catches extracted from repo history
|
|
24
|
+
- `catch-analytics.sh`: DDE (Defect Detection Effectiveness) per layer, escape rates, severity breakdown
|
|
25
|
+
- Results: cross-model-review (48%) and self-review (46%) nearly tied; self-review missed 28 bugs caught downstream; all 3 P0s caught by cross-model or CI review
|
|
26
|
+
- 14 new quality tests (`test-effectiveness-scoreboard.sh`)
|
|
27
|
+
- Log automation deferred until analytics proven useful (prove-it gate)
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
- Expression injection in `release.yml`: `${{ github.ref_name }}` directly in `run:` shell command allowed tag-based code injection. Fixed by passing through `TAG_NAME` env var (P0, caught by CI reviewer)
|
|
31
|
+
- `$TOTAL_` variable name collision in `catch-analytics.sh`: bash parsed as undefined variable `TOTAL_` instead of `$TOTAL` + underscore. Fixed with `${TOTAL}_` brace syntax (P0, caught by CI reviewer)
|
|
32
|
+
|
|
33
|
+
## [1.28.0] - 2026-04-06
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
- Autocompact benchmarking methodology — first rigorous framework for testing `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` thresholds (#92, PR #158)
|
|
37
|
+
- `AUTOCOMPACT_BENCHMARK.md`: experimental design, canary fact mechanism, cost estimation, limitations
|
|
38
|
+
- `tests/benchmarks/run-benchmark.sh`: parameterized harness with `--dry-run`, threshold validation, multi-turn session via `--resume`
|
|
39
|
+
- `tests/benchmarks/analyze-results.sh`: statistical comparison tables using `stats.sh`
|
|
40
|
+
- 3 task files (short/medium/long) with canary fact injection for context preservation measurement
|
|
41
|
+
- `canary-facts.json`: 5 domain-independent facts for binary recall scoring with negation detection
|
|
42
|
+
- `.github/workflows/benchmark-autocompact.yml`: `workflow_dispatch` with matrix strategy across thresholds
|
|
43
|
+
- 26 quality tests proving methodology rigor, harness behavior, and research standards
|
|
44
|
+
|
|
45
|
+
### Changed
|
|
46
|
+
- README bio: reflects full-stack founding engineer background (not just SDET/QA)
|
|
47
|
+
- Wizard doc autocompact section references benchmarking methodology
|
|
48
|
+
- Workflow count updated (5→6) across README and CI
|
|
49
|
+
|
|
7
50
|
## [1.27.0] - 2026-04-05
|
|
8
51
|
|
|
9
52
|
### Added
|
|
@@ -800,17 +800,26 @@ Two tools for managing context — use the right one:
|
|
|
800
800
|
|
|
801
801
|
### Autocompact Tuning
|
|
802
802
|
|
|
803
|
-
Override the default auto-compact threshold with environment variables. These are community-discovered settings referenced in upstream issues ([#34332](https://github.com/anthropics/claude-code/issues/34332), [#42375](https://github.com/anthropics/claude-code/issues/42375)) — not yet officially documented by Anthropic
|
|
803
|
+
Override the default auto-compact threshold with environment variables. These are community-discovered settings referenced in upstream issues ([#34332](https://github.com/anthropics/claude-code/issues/34332), [#42375](https://github.com/anthropics/claude-code/issues/42375)) — not yet officially documented by Anthropic. For a rigorous benchmarking methodology to validate these thresholds, see [AUTOCOMPACT_BENCHMARK.md](AUTOCOMPACT_BENCHMARK.md).
|
|
804
804
|
|
|
805
805
|
| Variable | What It Does | Default |
|
|
806
806
|
|----------|-------------|---------|
|
|
807
807
|
| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Trigger compaction at this % of context capacity (1-100) | ~95% |
|
|
808
808
|
| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Override context capacity in tokens (useful for 1M models) | Model default |
|
|
809
809
|
|
|
810
|
-
|
|
810
|
+
**Recommended:** The SDLC Wizard CLI sets `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75` in `.claude/settings.json` by default (200K model optimized). To customize, edit the `env` field in `.claude/settings.json`:
|
|
811
|
+
|
|
812
|
+
```json
|
|
813
|
+
{
|
|
814
|
+
"env": {
|
|
815
|
+
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "75"
|
|
816
|
+
}
|
|
817
|
+
}
|
|
818
|
+
```
|
|
819
|
+
|
|
820
|
+
Alternatively, set via shell profile (`~/.bashrc`, `~/.zshrc`) or per-project `.envrc`:
|
|
811
821
|
|
|
812
822
|
```bash
|
|
813
|
-
# Example: compact earlier on a 200K model
|
|
814
823
|
export CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75
|
|
815
824
|
```
|
|
816
825
|
|
|
@@ -828,6 +837,10 @@ export CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75
|
|
|
828
837
|
|
|
829
838
|
**Note:** These env vars may change as Claude Code evolves. Check [Claude Code settings docs](https://docs.anthropic.com/en/docs/claude-code/settings) for the latest supported configuration.
|
|
830
839
|
|
|
840
|
+
### Benchmarking Methodology
|
|
841
|
+
|
|
842
|
+
The thresholds above are community consensus — not empirically validated. For rigorous benchmarking of autocompact thresholds (measuring task quality, context preservation, and cost at each setting), see [AUTOCOMPACT_BENCHMARK.md](AUTOCOMPACT_BENCHMARK.md). It provides a controlled experimental methodology with a novel "canary fact" mechanism for measuring context preservation post-compaction.
|
|
843
|
+
|
|
831
844
|
### 1M vs 200K Context Window
|
|
832
845
|
|
|
833
846
|
Claude Code supports both 200K and 1M context windows. Choose based on your task:
|
|
@@ -2596,7 +2609,7 @@ If deployment fails or post-deploy verification catches issues:
|
|
|
2596
2609
|
|
|
2597
2610
|
**SDLC.md:**
|
|
2598
2611
|
```markdown
|
|
2599
|
-
<!-- SDLC Wizard Version: 1.
|
|
2612
|
+
<!-- SDLC Wizard Version: 1.29.0 -->
|
|
2600
2613
|
<!-- Setup Date: [DATE] -->
|
|
2601
2614
|
<!-- Completed Steps: step-0.1, step-0.2, step-0.4, step-1, step-2, step-3, step-4, step-5, step-6, step-7, step-8, step-9 -->
|
|
2602
2615
|
<!-- Git Workflow: [PRs or Solo] -->
|
|
@@ -3655,7 +3668,7 @@ Walk through updates? (y/n)
|
|
|
3655
3668
|
Store wizard state in `SDLC.md` as metadata comments (invisible to readers, parseable by Claude):
|
|
3656
3669
|
|
|
3657
3670
|
```markdown
|
|
3658
|
-
<!-- SDLC Wizard Version: 1.
|
|
3671
|
+
<!-- SDLC Wizard Version: 1.29.0 -->
|
|
3659
3672
|
<!-- Setup Date: 2026-01-24 -->
|
|
3660
3673
|
<!-- Completed Steps: step-0.1, step-0.2, step-1, step-2, step-3, step-4, step-5, step-6, step-7, step-8, step-9 -->
|
|
3661
3674
|
<!-- Git Workflow: PRs -->
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
A **self-evolving Software Development Life Cycle (SDLC) enforcement system for AI coding agents**. Makes Claude plan before coding, test before shipping, and ask when uncertain. Measures itself getting better over time.
|
|
4
4
|
|
|
5
|
-
**Built on 15+ years of
|
|
5
|
+
**Built on 15+ years of software engineering and founding engineering experience** — battle-tested patterns from real production systems, baked into an AI agent that follows tried-and-true software quality practices so you don't have to enforce them manually.
|
|
6
6
|
|
|
7
7
|
## Install
|
|
8
8
|
|
|
@@ -229,7 +229,7 @@ This isn't the only Claude Code SDLC tool. Here's an honest comparison:
|
|
|
229
229
|
| Document | What It Covers |
|
|
230
230
|
|----------|---------------|
|
|
231
231
|
| [ARCHITECTURE.md](ARCHITECTURE.md) | System design, 5-layer diagram, data flows, file structure |
|
|
232
|
-
| [CI_CD.md](CI_CD.md) | All
|
|
232
|
+
| [CI_CD.md](CI_CD.md) | All 6 workflows, E2E scoring, tier system, SDP, integrity checks |
|
|
233
233
|
| [SDLC.md](SDLC.md) | Version tracking, enforcement rules, SDLC configuration |
|
|
234
234
|
| [TESTING.md](TESTING.md) | Testing philosophy, test diamond, TDD approach |
|
|
235
235
|
| [CHANGELOG.md](CHANGELOG.md) | Version history, what changed and when |
|
package/cli/init.js
CHANGED
|
@@ -51,6 +51,18 @@ function mergeSettings(existingPath, templatePath, force) {
|
|
|
51
51
|
const existing = JSON.parse(fs.readFileSync(existingPath, 'utf8'));
|
|
52
52
|
const template = JSON.parse(fs.readFileSync(templatePath, 'utf8'));
|
|
53
53
|
|
|
54
|
+
// Merge env field
|
|
55
|
+
if (template.env) {
|
|
56
|
+
if (!existing.env || typeof existing.env !== 'object' || Array.isArray(existing.env)) {
|
|
57
|
+
existing.env = {};
|
|
58
|
+
}
|
|
59
|
+
for (const [key, val] of Object.entries(template.env)) {
|
|
60
|
+
if (!(key in existing.env) || force) {
|
|
61
|
+
existing.env[key] = val;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
54
66
|
if (!existing.hooks) existing.hooks = {};
|
|
55
67
|
|
|
56
68
|
for (const [event, templateEntries] of Object.entries(template.hooks || {})) {
|
package/package.json
CHANGED
package/skills/setup/SKILL.md
CHANGED
|
@@ -183,13 +183,23 @@ Present suggestions and let the user confirm.
|
|
|
183
183
|
|
|
184
184
|
### Step 9.5: Context Window Configuration
|
|
185
185
|
|
|
186
|
-
|
|
186
|
+
The CLI already sets `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=75` in `.claude/settings.json` `env` field (200K default). Ask the user which model context window they use:
|
|
187
|
+
|
|
188
|
+
- **200K models (default):** Already configured. Confirm `75` is set in `settings.json` `env` field
|
|
189
|
+
- **1M models:** Update `settings.json` `env` field: set `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` to `"30"` — the default fires at ~76K on 1M, wasting 92% of the window. Optionally also add `CLAUDE_CODE_AUTO_COMPACT_WINDOW` set to `"400000"`
|
|
190
|
+
|
|
191
|
+
To update, edit `.claude/settings.json`:
|
|
192
|
+
```json
|
|
193
|
+
{
|
|
194
|
+
"env": {
|
|
195
|
+
"CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "30"
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
```
|
|
187
199
|
|
|
188
|
-
|
|
189
|
-
- **1M models:** Suggest `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=30` or `CLAUDE_CODE_AUTO_COMPACT_WINDOW=400000` — the default fires at ~76K on 1M, wasting 92% of the window
|
|
190
|
-
- **CI pipelines:** Suggest 60% — short tasks, compact early
|
|
200
|
+
For CI pipelines, consider `"60"` — short tasks benefit from compacting early.
|
|
191
201
|
|
|
192
|
-
|
|
202
|
+
This is project-scoped and shared with the team via git.
|
|
193
203
|
|
|
194
204
|
### Step 10: Customize Hooks
|
|
195
205
|
|
package/skills/update/SKILL.md
CHANGED
|
@@ -46,9 +46,11 @@ Parse all CHANGELOG entries between the user's installed version and the latest.
|
|
|
46
46
|
|
|
47
47
|
```
|
|
48
48
|
Installed: 1.24.0
|
|
49
|
-
Latest: 1.
|
|
49
|
+
Latest: 1.29.0
|
|
50
50
|
|
|
51
51
|
What changed:
|
|
52
|
+
- [1.29.0] Node 24 compliance, autocompact in settings.json, effectiveness scoreboard, ...
|
|
53
|
+
- [1.28.0] Autocompact benchmarking methodology, canary fact mechanism, benchmark harness, ...
|
|
52
54
|
- [1.27.0] Domain-adaptive testing diamond, 3 domain fixtures, 25 quality tests, ...
|
|
53
55
|
- [1.26.0] Codex SDLC Adapter plan, claw-code/OmO/OmX research, CC feature discovery verified, ...
|
|
54
56
|
- [1.25.0] Plugin format, 6 distribution channels (curl, Homebrew, gh, GitHub Releases), ...
|