Skip to content

Commit 3970865

Browse files
chore: bump to v0.9.6
VERSION 0.9.5 -> 0.9.6; .add/config.json; README badge; migrations.json plugin_version + a 0.9.5->0.9.6 hop (recording the hop so the migration chain stays intact — skipping it has silently broken the chain before). CHANGELOG [0.9.6] section authored from the Wave 0-2 work. Recompiled: plugin.json and all [ADD vX.Y.Z] / skill-heading substitutions now read v0.9.6. compile --check clean; validators pass; all 15 suites green.
1 parent e8fbb78 commit 3970865

68 files changed

Lines changed: 162 additions & 120 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.add/agents-md.stale

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"timestamp":"2026-06-14T19:41:44Z","changed":["core/rules/model-roles.md"]}

.add/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://github.com/MountainUnicorn/add/config.schema.json",
3-
"version": "0.9.5",
3+
"version": "0.9.6",
44
"project": {
55
"name": "ADD",
66
"description": "Agent Driven Development \u2014 Claude Code plugin implementing an AI-native SDLC methodology",

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,29 @@ All notable changes to ADD are documented here. Format loosely follows [Keep a C
44

55
For commit-level detail see `git log`.
66

7+
## [0.9.6] — 2026-06-14
8+
9+
CI/release hardening + truth-pass, opening the v1.0 credibility cycle. Turns a red `main` green, makes the release tool trustworthy, and fixes a real injection-defense bug surfaced during the pass.
10+
11+
### Fixed
12+
13+
- **CI unblocked (C1).** `core/rules/` holds 20 rules but the tree diagram hardcoded 19, failing the `rule-parity` guardrail on `main`. The count is now **compile-derived**`runtimes/claude/CLAUDE.md` carries a `{{RULE_COUNT}}` placeholder that `scripts/compile.py` fills from the live autoload-rule set, so it can't drift by hand again. `rule-parity` was strengthened to read the compiled artifact and to assert the count in every prose surface (CLAUDE.md, README.md, CONTRIBUTING.md).
14+
- **`release.sh` could publish nothing and still exit 0 (C2, closes #18).** The signed tag pushed but `gh release create` could be skipped silently. The script now builds its flags as an array and **verifies the release page exists** via `gh release view` after creating it, failing loudly with a recovery command. Same failure class as F-001 — a command that "succeeds" without doing the thing.
15+
- **Injection-defense false positives (D3).** The `unicode-tag-block` pattern was a malformed byte character-class whose range matched almost any multibyte UTF-8 — em-dashes, arrows, box-drawing characters all tripped a `critical` event (~100% false-positive rate; 0 real attacks in the audit trail). Replaced with a precise pattern matching exactly U+E0000–U+E007F; verified the real tag-channel attack fixture still fires. The JSONL audit writer now emits compact single-line records (`jq -cn`) so concurrent hook runs can't corrupt the file.
16+
17+
### Changed
18+
19+
- **CI actions bumped to Node-24 runtimes (C3)** across all four workflows: `actions/checkout` v4→v5, `actions/setup-python` v5→v6, `actions/github-script` v7→v8.
20+
- **`model-roles` rule (D1)** gained a capability-tier table mapping role shapes to the current lineup — Architect: Opus 4.8 / gpt-5.5; Editor: Sonnet 4.6 / gpt-5.x-codex; Fast: Haiku 4.5 / gpt-5.x-codex-mini — while keeping the guidance-not-enforcement framing.
21+
- **CONTRIBUTING (C5)** now lists all four CI workflows (was "three checks") and documents the community-PR strategy (merge-as-is + co-authored refactor follow-up).
22+
- **Audit-trail hygiene (D3).** `.add/security/` is now gitignored and untracked; the local-only injection audit trail is documented in SECURITY.md's threat model.
23+
24+
### Added
25+
26+
- **Codex `verify` sub-agent (B3).** ADD's 4th role was missing from the Codex adapter — added `runtimes/codex/agents/verify.toml` (workspace-write, high reasoning) and the two `compile.py` enumerations that omitted it. The Codex adapter now emits five sub-agents.
27+
- **`tests/release-tooling/test-release-verify.sh`** — behavioral regression guard for #18 (mocks git/gh/python3, asserts the script exits non-zero when no release page exists), registered in the guardrail matrix.
28+
- **`tests/security/fixtures/benign-multibyte.json`** — regression guard for the unicode-tag-block false-positive bug; asserts dense benign multibyte content does not fire (mutation-verified to go red against the old regex).
29+
730
## [0.8.1] — 2026-04-23
831

932
Hotfix. Fixes three findings from the plugin-family release-hardening review before v0.9.0 ships. The M3 feature set (agents-md, cache-discipline, secrets-handling, telemetry-jsonl, prompt-injection-defense, test-deletion-guardrail, codex-native-skills) has already merged to main; this release makes that merge actually installable and makes the test-deletion guardrail actually enforce.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<br>
1111
<br>
1212
<a href="https://github.com/MountainUnicorn/add/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License: MIT"></a>
13-
<a href="#"><img src="https://img.shields.io/badge/version-0.9.5-brightgreen.svg" alt="Version"></a>
13+
<a href="#"><img src="https://img.shields.io/badge/version-0.9.6-brightgreen.svg" alt="Version"></a>
1414
<a href="#"><img src="https://img.shields.io/badge/Claude_Code-plugin-blueviolet.svg" alt="Claude Code Plugin"></a>
1515
</p>
1616

core/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.9.5
1+
0.9.6

core/templates/migrations.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"schema_version": "1.0.0",
3-
"plugin_version": "0.9.5",
3+
"plugin_version": "0.9.6",
44
"migrations": [
55
{
66
"from": "0.1.0",
@@ -248,6 +248,12 @@
248248
"to": "0.9.5",
249249
"steps": [],
250250
"description": "v0.9.5 hygiene \u2014 doc-only truth pass before the v1.0 credibility cycle. Spec/plan frontmatter flipped from Draft/Implementing to Complete for already-shipped work; PRD reframed to reference docs/milestones/v1.0-ga.md and docs/v1.0-roadmap.md as canonical v1.0 sources; maturity-loader cascade matrix completed for the four v0.9.0 rules (cache-discipline, injection-defense, secrets-handling, telemetry); plugin-family-release-hardening F-006/F-007 retargeted to v1.1.0 (architectural, post-GA). New core/rules/model-roles.md adds Architect/Editor guidance. No consumer config changes."
251+
},
252+
{
253+
"from": "0.9.5",
254+
"to": "0.9.6",
255+
"steps": [],
256+
"description": "v0.9.6 \u2014 CI/release hardening + truth-pass. Rule count made compile-derived ({{RULE_COUNT}}); CI actions bumped to Node-24 (checkout v5/setup-python v6/github-script v8); release.sh now verifies the published release page (closes #18); CONTRIBUTING CI-count + community-PR strategy; model-roles capability-tier table (Opus 4.8/Sonnet 4.6/Haiku 4.5, gpt-5.5/gpt-5.x-codex); added Codex 'verify' sub-agent; injection-defense unicode-tag-block regex corrected (was ~100% false-positive), JSONL audit writer made atomic, .add/security/ gitignored. No consumer config changes."
251257
}
252258
]
253259
}

dist/codex/.agents/skills/add-agents-md/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
22
name: add-agents-md
3-
description: "[ADD v0.9.5] Generate or sync a portable AGENTS.md from ADD project state — writes, checks drift, or merges with hand-curated content"
3+
description: "[ADD v0.9.6] Generate or sync a portable AGENTS.md from ADD project state — writes, checks drift, or merges with hand-curated content"
44
argument-hint: "[--write|--check|--merge|--import] [--dry-run]"
55
---
66

7-
# ADD AGENTS.md Skill v0.9.5
7+
# ADD AGENTS.md Skill v0.9.6
88

99
Generate a portable [`AGENTS.md`](https://agents.md) at project root from the project's `.add/` state. `AGENTS.md` is the cross-tool open standard for project-level agent instructions — any agent (Claude Code, Cursor, Codex CLI, Windsurf, Amp, Devin, Copilot) will read it on session start. Publishing one lets mixed-toolchain teams respect the same invariants without installing ADD.
1010

dist/codex/.agents/skills/add-away/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: add-away
3-
description: "[ADD v0.9.5] Declare absence — get autonomous work plan for the duration"
3+
description: "[ADD v0.9.6] Declare absence — get autonomous work plan for the duration"
44
argument-hint: "[duration, e.g. '4 hours', '30 minutes', 'end of day']"
55
---
66

@@ -26,7 +26,7 @@ argument-hint: "[duration, e.g. '4 hours', '30 minutes', 'end of day']"
2626
2727
---
2828

29-
# ADD Away Command v0.9.5
29+
# ADD Away Command v0.9.6
3030

3131
The human is stepping away. Establish what work can proceed autonomously and what must wait.
3232

dist/codex/.agents/skills/add-back/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
---
22
name: add-back
3-
description: "[ADD v0.9.5] Return from absence — get briefing on autonomous work"
3+
description: "[ADD v0.9.6] Return from absence — get briefing on autonomous work"
44
---
55

6-
# ADD Back Command v0.9.5
6+
# ADD Back Command v0.9.6
77

88
The human has returned. Provide a concise briefing on what happened during their absence.
99

dist/codex/.agents/skills/add-brand-update/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: add-brand-update
3-
description: "[ADD v0.9.5] Update project branding — new colors, fonts, tone, audit artifacts"
3+
description: "[ADD v0.9.6] Update project branding — new colors, fonts, tone, audit artifacts"
44
---
55

66
<!-- ADD AskUserQuestion shim (Codex) -->
@@ -25,7 +25,7 @@ description: "[ADD v0.9.5] Update project branding — new colors, fonts, tone,
2525
2626
---
2727

28-
# ADD Brand Update Command v0.9.5
28+
# ADD Brand Update Command v0.9.6
2929

3030
Update the project's branding configuration with new materials and audit existing generated artifacts for brand consistency. Optionally apply fixes to bring artifacts in line with the new brand.
3131

0 commit comments

Comments
 (0)