# Changelog

All notable changes to `ultra-cc-architect` are documented here.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.1.0] — 2026-04-30

### Initial release — extracted from `ultraplan-local` v2.4.0

`ultra-cc-architect` is the CC-specific architecture phase pulled out of the `ultraplan-local` plugin. The split decouples the universal planning pipeline (brief → research → plan → execute) from the Claude-Code-specific feature-matching logic, so users can adopt the planning pipeline without inheriting an unfinished CC-feature catalog and skill-factory.

**Why pre-release (0.1.0):**
- Catalog is thin: 11 seed skills across 8 features, decision-layer intentionally empty.
- Skill-factory has only Fase 1 (one source → one draft, manual promotion). Fase 2 (CC-changelog watcher) and Fase 3 (cross-feature decision skills) are unbuilt.
- `feature-matcher` falls back to a hardcoded list when the catalog is sparse — this fallback should disappear before v1.0.
- Slug convention is stable but catalog-growth tooling (batch authoring, automated taxonomy updates) is not.

### Inherited from ultraplan-local v2.4.0

**Commands (2):**
- `/ultra-cc-architect-local` — feature matching with brief-anchored rationale and explicit coverage gaps. Modes: `--project` (required), `--quick` (skip critic), `--no-gaps`, `--fg` (no-op alias).
- `/ultra-skill-author-local` — skill-factory Fase 1 manual authoring. Modes: default, `--quick` (skip IP-hygiene), `--fg` (no-op alias).

**Agents (8):**
- `architect-orchestrator` (opus) — inline reference for the architect workflow
- `feature-matcher` (sonnet) — match brief+research to CC features with brief-anchored rationale
- `gap-identifier` (sonnet) — surface catalog/pattern/decision/outside-CC-scope gaps
- `architecture-critic` (sonnet) — adversarial review with hallucination gate (BLOCKER)
- `skill-author-orchestrator` (opus) — inline reference for the 3-stage authoring pipeline
- `concept-extractor` (sonnet) — read source, output concept JSON with cc_feature/layer/slug
- `skill-drafter` (sonnet) — write `.drafts/<slug>.md` with 9-field frontmatter
- `ip-hygiene-checker` (sonnet) — run `ngram-overlap.mjs`, stamp verdict or delete

**Skill catalog:** `skills/cc-architect-catalog/` (13 files: SKILL.md manifest + 11 seeds + `.drafts/.gitkeep`)

**Scripts:** `scripts/ngram-overlap.mjs` + `scripts/ngram-overlap.test.mjs` (zero-dependency Node)

**Test fixtures:** `tests/fixtures/skill-factory/` (calibration prose for verdict bands) + `tests/fixtures/skill-drafter/slug-collision-expected.md`

### Slug-convention version

Inherits the v2.3.1 slug convention from ultraplan-local: `<cc_feature>[-<qualifier>]-<layer>.md`. Unqualified slug = canonical baseline per (feature, layer); qualified slugs cover specific sub-patterns. Slug-collision hint in `skill-drafter` (v2.3.2) preserved.

### Breaking changes

None at the command level — `/ultra-cc-architect-local` and `/ultra-skill-author-local` keep their names and flag surfaces. Users who installed `ultraplan-local` v2.4.0 must additionally install `ultra-cc-architect` v0.1.0+ to keep using these commands. See `ultraplan-local` v3.0.0 CHANGELOG for migration steps.

### Filesystem contract

Both plugins write into `.claude/projects/{YYYY-MM-DD}-{slug}/`. The directory contract is owned by `ultraplan-local`; this plugin opt-in writes to the `architecture/` subdirectory. No code-level dependency between plugins — the contract is filesystem-level documentation only.
