# Changelog

All notable changes to this project will be documented in this file.

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).

## [1.9.0] - 2026-05-03

### Added — Playground v3 (full architecture rewrite)

The playground at `playground/ms-ai-architect-playground.html` was rebuilt from scratch as a multi-surface decision-builder + report viewer (3867 lines, single-file). It replaces the v2 5-step pipeline with a project-aware app that persists state across sessions and visualizes parsed reports inline.

- **4 surfaces:**
  - Onboarding — 5 grouped expansion sections (organization, technology, security, architecture, business) with 18 fields covering organization profile, tech stack, compliance, architecture preferences, and business references. Drives prefill across all 24 commands.
  - Home — 3 entry tracks (Onboard / New project / Catalog) plus project list with completion-meter per project.
  - Catalog — 24 commands grouped in 5 expansion categories (regulatory, security, economy, documentation, tool) with full-text search, filtered counts, and direct form-launch.
  - Project — per-project tabs (one per command category), command form prefilled from shared onboarding state, paste-back markdown import that parses and visualizes reports inline.
- **Persistent state:** IndexedDB primary store with localStorage fallback. Schema-versioned (`STATE_KEY = 'ms-ai-architect-state-v1'`) with eager `MIGRATIONS` pipeline that runs at cold-load and import time. Throttled writer prevents excessive disk traffic.
- **17 inline report renderers** routed via canonical archetype-routing table:
  - Regulatory (6): classify pyramid, requirements list, transparency text, FRIA, conformity checklist, DPIA matrix-risk-6×5
  - Security (3): security 5×5 matrix, ROS 5×5 matrix with 7-dimension threat library, review findings
  - Economy (2): cost distribution P10/P50/P90, license capability matrix
  - Documentation (6): migrate phased plan, ADR, summary markdown, POC verdict, utredning, compare
- **14 markdown parsers** with the same archetype keys, exposed as `window.__PARSERS`. All parsers return `{ok, data}` or `{ok, errors[]}` — never throw.
- **Light/dark theme toggle** in the topbar, persisted in `localStorage('ms-ai-architect-theme')`. FOUC-safe: a small bootstrap script in `<head>` reads the saved value before stylesheets parse.
- **Export/import** as JSON Decision Record envelope (Blob + FileReader). Schema-version-aware on import; downgrades trigger MIGRATIONS automatically.
- **Vendored design-system** at `playground/vendor/playground-design-system/`, kept in sync via `scripts/sync-design-system.mjs ms-ai-architect` from the marketplace root. SHA-256 MANIFEST detects local drift.
- **24 ACTIONS** registered through a single delegated click handler on `document` — keeps event-handler footprint minimal.

### Added — Playground validation

- `tests/test-playground-v3.sh` — bash 3.2-compatible static structure tests (170 PASS lines): vendored CSS link order, file://-safety, surfaces, 24 commands, 14 parsers, 17 renderers, design-system class usage, exposed globals, 23 ACTIONS handlers.
- `tests/test-playground-parsers.sh` — 70 PASS lines: validates 17 fixtures × parser routing keys + handlePasteImport wiring.
- `tests/run-e2e.sh --playground` — new flag dispatching both suites; included in `--all`.
- `playground/test-fixtures/` — 17 synthetic markdown fixtures (one per report-producing command) covering all canonical parser archetypes. Generic example data only.
- `playground/A11Y-RAPPORT.md` — accessibility report skeleton with WCAG 2.2 AA test grid for both themes.
- `playground/MANUAL-CHECKLIST.md` — 10-section manual QA checklist (round-trip, schema migration, project CRUD, command form prefill, paste-import per report type, parse errors, export/import cycle, theme toggle, file://-standalone, axe-core a11y per surface) with concrete DevTools-console assertions.

### Changed

- `playground/ms-ai-architect-playground.html` — replaced (v2 1990 lines → v3 3867 lines). Same canonical filename, so external links continue to resolve.
- Plugin README — new "## Playground (v3)" section documenting the 4-surface architecture and validation matrix.
- Plugin CLAUDE.md — replaced v2 5-step pipeline section with v3 architecture overview. `docs/playground-v2-spec.md` retained as historical reference but no longer the contract; v3 spec lives at `.claude/projects/2026-05-03-playground-v3-architecture/`.
- Marketplace root README — playground listing for ms-ai-architect updated to describe v3 architecture, persistence model, 17 renderers, theme toggle, and 240-test validation.

### Notes

- **Plugin API surface unchanged.** All 24 commands, 12 agents, 5 skills (387 reference docs), 2 hooks, and MCP server configuration remain identical to v1.8.0. Playground v3 is an additive, optional UI surface — users invoking `/architect:*` directly see no behavioral difference.
- v1.9.0 is a minor bump per SemVer because the plugin contract (commands/agents/skills/hooks/MCP) is backward-compatible. The playground's local IndexedDB state schema would only affect users who had the v2 playground running; existing state is auto-migrated by the eager MIGRATIONS pipeline.

---

## [1.8.0] - 2026-04-09

### Added
- Sitemap-based KB change detection system (`scripts/kb-update/`)
  - `build-registry.mjs` — extracts 1342 unique URLs from 387 reference files
  - `poll-sitemaps.mjs` — streams 18 Microsoft Learn sitemaps for `<lastmod>` changes
  - `report-changes.mjs` — prioritized change report (critical/high/medium/low)
  - `discover-new-urls.mjs` — finds relevant new MS Learn pages not yet covered
  - `run-weekly-update.mjs` — weekly orchestrator with `--force`, `--discover`, `--dry-run`
- Shared libraries: `url-normalize.mjs`, `sitemap-stream.mjs`, `registry-io.mjs` (zero npm deps)
- Background poll trigger in session-start hook (auto-runs if >7 days since last check)

### Changed
- Session-start hook reads sitemap-based change report instead of broken mtime staleness check
- `generate-skills --update` reads `change-report.json` for targeted MCP updates with `changed_urls`
- KB maintenance section in README updated with automated freshness and auto-update info

### Deprecated
- `scripts/kb-staleness-check.sh` (mtime-based, unreliable after git clone — kept for backwards compat)

---

## [1.7.0] - 2026-04-07

### Changed
- Open-source release in ktg-plugin-marketplace
- Moved skill-gen tooling from `orchestrator/` to `scripts/skill-gen/`
- Fixed broken DPIA knowledge base reference path (norwegian-public-sector-governance/ → responsible-ai/)
- Removed orphaned `pre-edit-secrets` hook (secrets scanning consolidated to llm-security plugin)
- Updated all badge counts (version 1.7.0, 387 ref docs, 12 agents)
- Fixed agent model column in CLAUDE.md (sonnet → opus, matching actual frontmatter)
- Added missing `ai-act-assessor` agent to README agent table
- Added Bash scope guardrail to `commands/export.md`
- Added supply chain warning for remote install scripts in knowledge base

### Removed
- Internal orchestrator tooling (Linear integration, hardcoded issue IDs)
- Client-specific utredning examples (`docs/utredning/`)
- Generated test report artifacts (`e2e-test-report.md`, `.pdf`)

---

## [1.6.0] - 2026-02-19

### Added
- ROS analysis command and agent (`/architect:ros`)
- 7-dimension risk assessment with NS 5814/ISO 31000 methodology
- AI threat library (49 threats across 7 categories)
- Sector-specific checklists (health, transport, finance, justice, education)
- MAESTRO multi-agent security model integration
- 7 new KB reference documents (3,131 lines)
- E2E test suite for ROS (24 checks)
- `summary-agent` integration for ROS output

---

## [1.5.0] - 2026-02-13

### Added
- E2E regression tests (43 checks across 3 suites: security, cost, summary)
- Auto onboarding detection at session start
- Systematic KB update process with staleness policy
- `kb-staleness-check.sh` with `--json` output mode

---

## [1.4.0] - 2026-02-13

### Added
- Onboarding agent (`/architect:onboard`) — 5-phase structured interview
- README rewrite to English

---

## [1.3.0] - 2026-02-13

### Changed
- 5-skill migration: 1 monolithic skill → 5 domain-specific skills (ms-ai-advisor, ms-ai-engineering, ms-ai-governance, ms-ai-security, ms-ai-infrastructure) with 364 reference documents
- Fixed 13 broken KB references
- Fixed UTF-8 encoding issues across reference files

---

## [1.2.0] - 2026-02-13

### Added
- Runtime hooks: secrets detection (`pre-edit-secrets.mjs`), session context, stop reminders
- Test infrastructure: hook tests, KB integrity tests, plugin discovery tests
- `/architect:export` command for PDF export

---

## [1.1.0] - 2026-02-13

### Added
- `summary-agent`: executive summary and decision memo synthesis
- `dpia-agent`: DPIA/PVK for AI systems
- Utredning orchestrator v2
- Production readiness (21 bug fixes)

---

## [1.0.0] - 2026-02-12

### Added
- Initial release: 20 knowledge bases, 8 agents, `architecture-review-agent`
- Cosmo Skyberg architect persona with 7-phase advisory methodology
- MCP integration with Microsoft Learn for live documentation verification
- Core commands: `/architect`, `/architect:research`, `/architect:security`, `/architect:cost`, `/architect:adr`, `/architect:diagram`, `/architect:review`, `/architect:compare`

---

## [0.4.0] - 2026-02-07

### Note
First formal version. Previously unversioned.

### What existed
- 145+ reference documents across 14 categories
- 6 specialized agents: research, security assessment, cost estimation, ADR writer, license mapper, diagram generation
- 13 commands: research, compare, cost, license, security, poc, adr, migrate, utredning, generate-skills, diagram, setup, help
- Cosmo Skyberg architect persona
- MCP integration with Microsoft Learn
- Session logging with ADR reminders
