# Changelog

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

The format is based on Keep a Changelog.
This project aims to follow Semantic Versioning for tagged releases.


## [1.0.9] - 2026-05-15

### Added
- `memory-node` Milestone 2: nuovi tool MCP `memory_list_scopes`, `memory_list_topics`, `memory_list_tags` e `memory_invalidate_entry` per tassonomia project-scoped e invalidazione soft delle memorie obsolete.
- `memory-node`: filtri per stato/scope/topic nelle liste tassonomiche, esclusione predefinita delle entry invalidate dalla ricerca e copertura per guard cross-project.
- Ranking ricerca `memory-node` piu' deterministico: FTS mantiene `bm25` come ordinamento primario e aggiunge tie-breaker su `importance`, `confidence` e `updated_at`; il fallback `LIKE` usa gli stessi tie-breaker dopo `like_score`.
- Hook sperimentali Codex per session start, prompt-submit e pretool routing (`scripts/hooks/sophia-*.mjs`) con fixture dedicate e smoke `scripts/smoke-codex-hooks.js`.
- Generatore `scripts/generate-codex-hooks.js` e preview locale `codex-hooks.generated.json` per configurazioni hook Codex.
- Catalogo routing generato da skill locali (`scripts/build-routing-catalog.mjs`) per alimentare gli hook euristici.
- Nuovi profili agent portabili `code_reviewer` e `test_writer` per Codex (`.codex/agents/*.toml`) e GitHub Copilot (`.copilot/agents/*.agent.md`).
- Documentazione tecnica per hook/routing e agenti portabili:
  - `docs/codex-user-hooks.md`;
  - `docs/micro-milestone-codex-hooks-routing.md`;
  - `docs/analisi-tecnica-agenti-code-reviewer-test-writer.md`;
  - `docs/mcp-runtime-upgrade-governance.md`.

### Changed
- `memory-node` passa a milestone M2 nella documentazione, con README aggiornato per tool lifecycle/tassonomia, esempi e nota sul default `MEMORY_ALLOWED_ROOTS=`.
- Il default generato per `MEMORY_ALLOWED_ROOTS` e' vuoto in `genera_mcp_json.*`, cosi' le root di dominio devono arrivare dal progetto target o da input espliciti invece che dal repo MCP corrente.
- `memory_status` include il conteggio `superseded` e le letture project-scoped non materializzano piu' righe progetto in modo implicito.
- `setup.ps1` e `setup.sh` rigenerano in modo non bloccante il routing catalog e la preview degli hook Codex durante il setup.
- Metadati runtime degli agenti separati tra Codex e Copilot nella matrice canonica, con aggiornamento dei modelli Copilot generati.
- Governance minima aggiornata in `AGENTS.md`, `README.md`, checklist PR e guida sviluppo per upgrade runtime, migrazioni persistenti, setup post-update e riavvio server.
- Skill `mcp-memory-operator` e `mcp-code-reviewer` aggiornate per riflettere tassonomia memoria, hygiene e nuovi ruoli agent.

### Fixed
- Hook prompt-submit: rimosso l'invito automatico a generare `project_taxonomy.md`, mantenendo il routing su tassonomia disponibile senza produrre file non richiesti.
- Hook review/routing: corretta l'attivazione euristica della review e aggiunta copertura fixture per prompt docs, memory, SQL, ColdFusion, browser, Git/Mantis, Office, project filesystem, token e Yii.
- `setup.ps1`: evitato shadowing del parametro automatico PowerShell `$Error` nel messaggio friendly per errori di installazione SVG.

## [1.0.8] - 2026-05-08

### Added
- Nuovo server `memory-node` (v1) per memoria operativa locale cross-project con storage SQLite e indicizzazione FTS5.
- `memory-node` M1a: tool MCP core `memory_status`, `memory_add_entry`, `memory_search`, `memory_read_entry` con isolamento project-scoped, risoluzione `project_id` (input esplicito > `.env` progetto target > Git > fallback hash path) e dedupe opzionale su `memory_add_entry`.
- `memory-node` M1b: hardening safety/audit con enforcement `allowedRoots` su `project_path`/`source_path`, audit log con redazione campi sensibili, shape errori stabile e guard cross-project in `mode="project"`.
- `memory-node` M1c: quality della ricerca con ranking FTS prevedibile (`bm25` + tie-break), snippet con highlight `>>>...<<<`, `verification_hint` stabile e fallback token-based `LIKE` con warning quando FTS non e' disponibile.
- Nuova skill specialistica `mcp-memory-operator` per uso disciplinato di `memory-node` (decisioni validate, handoff sintetici, hygiene anti-rumore e anti-segreti).
- Smoke test dedicato `tests/smoke/memory-node.smoke.mjs` e integrazione nel runner smoke complessivo.
- `office-node` / `document_convert`: politica PDF engine con ordine di preferenza configurabile (`xelatex > typst > lualatex > pdflatex > weasyprint > wkhtmltopdf`).
- `document_convert` action `status`: campi aggiuntivi `recommended_engine`, `preferred_order`, `engine_details` (path + disponibilità per engine), `install_hint` per guidare l'agente alla configurazione PDF in un solo passaggio.
- `document_convert` action `setup_pandoc`: nuova modalità `pdf_engine_hint` con istruzioni dedicate all'installazione degli engine PDF (LaTeX, Typst, weasyprint, wkhtmltopdf) per piattaforma.
- `document_convert` action `convert` con `to=pdf`: selezione automatica del primo engine disponibile in ordine preferito; `pdf_engine` esplicito resta supportato e prende precedenza.
- Output strutturato `buildPdfEngineMissingPayload()` con `setup_mode="pdf_engine_hint"` quando non è disponibile alcun engine PDF: risposta machine-readable pronta per un agente di setup.
- Nuovi helper locali per la skill `mcp-office-expert`:
  - `skills/mcp-office-expert/tools/pandoc-status.js` — verifica Pandoc + engine disponibili nel PATH con exit code strutturati;
  - `skills/mcp-office-expert/tools/pandoc-convert-smoke.js` — smoke locale md→html, md→docx, html→gfm, md→pdf con selezione engine.
- `tests/smoke/office-node-pandoc.smoke.mjs`: casi aggiuntivi per `pdf_engine_hint`, `preferred_order`, `engine_details`, `recommended_engine`, `install_hint`, e test engine mancante esplicito.
- `setup.ps1 -CheckPandoc`: helper `Get-MiKTeXConfigValue` e `Get-MiKTeXReportText`; blocco bootstrap MiKTeX che abilita `initexmf --enable-installer` (AutoInstall=1) e segnala se il database pacchetti non è mai stato aggiornato (`LastUpdate: not yet`).

### Changed
- Integrazione runtime/tooling aggiornata per includere `memory-node` nel setup e nella generazione configurazioni MCP (`setup.*`, `genera_mcp_json.*`, `scripts/inject-user-mcp-settings.js`) con allineamento al pattern `project_path`/`allowedRoots`.
- Documentazione allineata per `memory-node` v1 (`memory-node/README.md`, analisi tecnica in `docs/memory-node/`, capability matrix e guida sviluppo MCP/skills).
- `README.md`: aggiunta nota su MiKTeX bootstrap post-installazione (`miktex packages check-update` + `miktex packages update`) e sul ruolo di `initexmf --enable-installer` per ridurre i popup interattivi durante le conversioni PDF.

## [1.0.7] - 2026-04-29

### Added
- New specialist skill `mcp-sophia-yii-developer` for Sophia Framework 2 / Yii 1.1 development and debugging.
- Local progressive-disclosure references for Sophia/Yii workflows:
  - `architecture-layers.md`,
  - `configuration-environments.md`,
  - `render-settings-forms-grids.md`,
  - `export-management.md`,
  - `cruge-permissions-menu.md`,
  - `gii-code-generation.md`,
  - `db-scripts-and-migrations.md`,
  - `post-fix-checklist.md`,
  - `pr-review-checklist.md`,
  - `routing-matrix.md`.
- Eval coverage for Sophia/Yii direct routing, analyst/orchestrator boundaries, Gii/Sophia patterns, and post-fix validation expectations.
- Technical analysis documents for the Sophia/Yii skill and PHP runtime lint integration under `docs/mcp-sophia-yii-developer/`.
- `linter-node`: PHP syntax lint support for `.php` files via `php -l`, with UTF-8 without BOM policy and actionable runtime errors.
- `linter-node`: PHP runtime discovery from tool args, target project `.env`, launcher environment, `PATH`, and known OS-specific locations.
- `linter-node`: `get_lint_config` support for `php`, plus structured configuration output for `cfml`, `js`, and `sql`.
- Setup bootstrap options for PHP runtime discovery:
  - Windows: `setup.ps1 -DiscoverPhp`,
  - Linux/macOS: `setup.sh --discover-php`,
  - Linux/macOS PHP tooling install helper: `setup.sh --install-php-tooling`.
- Smoke coverage for PHP linting in `tests/smoke/linter-node-php.smoke.mjs`, included in the smoke runner.

### Changed
- `mcp-master-orchestrator` and `mcp-technical-analyst` routing now mention `mcp-sophia-yii-developer` as the specialist sidecar for Sophia/Yii work.
- Setup scripts now generate non-legacy MCP config files automatically at the end of setup.
- MCP config generation now forwards linter environment variables for ColdFusion and PHP runtimes.
- `README.md` documents PHP lint runtime variables, discovery commands, optional runtime behavior, and generated config output.
- Skill governance matrix includes `mcp-sophia-yii-developer` and its eval/routing maturity.


## [1.0.6] - 2026-04-27

### Added
- `git-node`: nuova azione read-only `git_diff.action="export_zip"` per esportare un archivio `.zip` del delta Git usando `save_path`, compatibile con delta tra ref, `commit_hash` singolo o `commit_range` (`..` / `...`).
- `git-node`: lo ZIP esportato include `manifest.json`, `delta.patch` e i file presenti sul lato destro del delta in `files/`, con metadata strutturati coerenti con il pattern MCP del repository.
- New specialist skill `ai-documents-validation-document-type` for the `ai-documents-validation` / `docvalidator` repository.
- Skill workflow for adding, extending, planning, reviewing, and integrating supported document types across classification, parser diagnostics, rules, reliability, API catalog, CLI, tests, and documentation.
- Progressive-disclosure references for the new skill:
  - `new-document-type-checklist.md`,
  - `docs-first-policy.md`,
  - `diagnostic-contract.md`,
  - `api-integration.md`,
  - `test-and-validation.md`.
- Eval coverage for repo-specific document-type routing, anti-pattern detection, field diagnostic enforcement, API consumer integration, and routing boundaries with analyst/docs/reviewer skills.
- Technical analysis document under `docs/ai-documents-validation/` describing the skill design, API integration scenario, risks, and validation strategy.

### Changed
- Aggiornati smoke test e capability matrix per coprire il nuovo percorso di export ZIP in `git-node`.
- Skill validation guidance for this addition uses a Node-based smoke check for frontmatter and eval JSON, avoiding reliance on a Python environment with `PyYAML`.


## [1.0.5] - 2026-04-27

### Added
- SVG Framework Phase 4 release (pilot): local asset libraries and deterministic indexing workflow.
- Local SVG assets baseline under `skills/svg/assets/` with pilot libraries:
  - `lucide` as Git submodule (`skills/svg/assets/libraries/lucide`),
  - `open-peeps` as vendored library (`skills/svg/assets/libraries/open-peeps`).
- Machine-readable local asset index (`skills/svg/assets/index.json`) for discovery-oriented routing.
- New Phase 4 scripts:
  - `scripts/build-svg-asset-index.js` (index generation),
  - `scripts/check-svg-asset-index.js` (index/path integrity checks),
  - `scripts/smoke-svg-phase4.js` (phase smoke profiles for library presence/license/search checks).
- Agent-facing local asset search helper: `skills/svg/tools/search-assets.js`.
- License metadata baseline for pilot libraries in `skills/svg/assets/licenses/`.
- Setup bootstrap improvement for SVG workflows:
  - when SVG tooling mode is enabled and `.gitmodules` is present, setup now runs `git submodule update --init --recursive`.

### Changed
- SVG skill scope/docs aligned to include Phase 4 local indexed-asset discovery, while keeping advanced illustration composition outside this phase boundary.
- Project documentation aligned with the Phase 4 pilot decision (`lucide` + `open-peeps`) and acceptance gates.


## [1.0.4] - 2026-04-23

### Added
- First release of skill `svg` (Fase 1-3 MVP), focused on incremental work on existing SVG assets.
- Core workflows introduced for existing SVG:
  - `optimize` (safe/non-destructive cleanup),
  - `validate` (structured syntax/compatibility checks with `valid|warnings|invalid` outcome).
- Phase 2 workflows introduced:
  - `color-palette`,
  - `brand-kit`,
  - `to-component` (simple React component conversion).
- Phase 3 workflows introduced:
  - `from-raster` with explicit toolchain/fallback policy,
  - `export/to-png-batch`,
  - `export/to-pdf`.
- Visual-first QA policy for SVG-changing tasks, with mandatory visual evidence before closure and explicit fallback when browser visual check is unavailable.
- Playwright local-file policy hardening for SVG visual validation:
  - `file://` defaults include project roots by default,
  - `browser_session.navigate` supports `project_path` to extend allowed roots at runtime,
  - new capability action `browser_session` `action=get_capabilities` for runtime discoverability.
- Smoke/eval coverage for svg release scope:
  - `scripts/check-svg-skill-smoke.js` (phase1/phase2/phase3),
  - `scripts/check-svg-tooling.js`,
  - `scripts/smoke-svg-phase3.js` profiles (`no-tools`, `tools-present`, `windows-inkscape-first`, `linux-rsvg-first`),
  - extended `skills/svg/evals/evals.json` for visual QA and host-policy cases.

### Changed
- Windows export policy consolidated for MVP: `inkscape` only (`rsvg-convert` treated as unsupported on Windows).
- `playwright-node` file navigation policy aligned with project-centric usage, including compatibility hints when `project_path` is omitted.

## [1.0.3] - 2026-04-15

### Added
- Milestone 11 - Skill `mcp-mantis-ticket-writer` (drafting/refinement MantisBT con contratto output first-response).
- `mcp-mantis-ticket-writer`: aggiunti esempi canonici aggiornati al template aziendale definitivo, con caso `Additional Information` presente e caso assente.
- `mcp-mantis-ticket-writer`: formalizzato gating binario `1-3 domande bloccanti` vs `output finale immediato` con snippet sezione-per-sezione.
- `mcp-mantis-ticket-writer`: `bug-standard` aggiornato a formato aziendale definitivo con titolo obbligatorio `**ARGOMENTO** - ***ARGOMENTO2*** - Descrizione`.
- `mcp-mantis-ticket-writer`: `Additional Information` resa sezione condizionale (solo test richiesti o deducibili).
- `mcp-mantis-ticket-writer`: declassate varianti built-in `bug-compact` e `analysis-ready` in `references/templates/legacy/`.

## [1.0.2] - 2026-04-13

### Added
- Milestone 12 - Estensione skill `mcp-coldfusion-developer`
- Skill `mcp-coldfusion-developer` updated with scenario-based routing for page bootstrap, `mvc3 -> mvc4`, xgrid variants, client boundaries, configuration workflows, and security remediation.
- Local-first skill bundle now includes compact references and the essential `D:\cfprojects\vcs\platform\template-cf` template subset for new page creation.

### Changed
- Archived M12 in the milestone history and reduced the future backlog entry to a short boundary note.
- Aligned the skill governance matrix and milestone documentation with the new runtime boundary: `docs-node` is optional, not a runtime dependency.

## [1.0.1] - 2026-04-08

### Added
- Milestone 10 - Skill `mcp-code-reviewer`

## [1.0.0] - 2026-04-08

### Added
- Initial public changelog.
- GitHub release notes configuration via `.github/release.yml`.


