Repository navigation
v3.3.0 - Markdown Frontmatter Fix + Post-Upgrade Task Convention
Release v3.3.0 - Markdown Frontmatter Fix + Post-Upgrade Task Convention
Release Date: 2026-04-14
Type: Minor Release
Summary
Version 3.3.0 fixes a silent file-corruption bug in the markdown_table_formatter PostToolUse handler and the format-markdown CLI subcommand, and introduces a generic post-upgrade-tasks/ convention that gives the release pipeline a formal mechanism for shipping post-upgrade instructions (audits, config migrations, workflow changes, notifications) to upgrading LLMs and humans.
The markdown fix is important on its own — any .md file whose first line was --- (notably Claude Code SKILL.md files, but also any Jekyll/Hugo/MkDocs content) was being silently rewritten so the opening --- became a 70-underscore thematic break and the YAML body was collapsed into a ## heading. The bug is now fixed, but files already damaged on disk remain damaged — the shipped post-upgrade task 01-audit-markdown-frontmatter.md walks an upgrading agent through detection and remediation.
Added
post-upgrade-tasks/convention: Tasks are drafted inCLAUDE/UPGRADES/UNRELEASED/post-upgrade-tasks/during the release cycle and moved into the versioned upgrade guide at release time. Each task is a self-contained.mdfile with a mandatory header (Type/Severity/Applies to/Idempotent) and sectionsWhy/How to detect/How to handle/How to confirm/Rollback. Advisory only — nothing runs them automatically.- Release pipeline BLOCKING gate (Step 6):
RELEASING.mdand the/releaseskill now require moving every UNRELEASED task into the versioned upgrade guide before the Opus documentation review. Release ABORTS if any task file remains inUNRELEASED/after Step 6. The Opus review checklist verifies the versioned guide's task index is populated and that release notes reference post-upgrade tasks when any arecriticalorrecommended. - Per-release task index README:
CLAUDE/UPGRADES/upgrade-template/post-upgrade-tasks/README.mdtemplate with the task-index table schema.
Fixed
markdown_table_formatterYAML frontmatter mangling: The handler and theformat-markdownCLI now strip frontmatter before formatting and re-attach it byte-for-byte afterwards. Previously,mdformat(which does not understand frontmatter) rewrote the opening---as a 70-underscore thematic break, collapsed the YAML body onto a##heading, and lost the closing---.
Post-Upgrade Tasks
After upgrading, review CLAUDE/UPGRADES/v3/v3.2-to-v3.3/post-upgrade-tasks/ — it contains 1 recommended task that may require action in your project: 01-audit-markdown-frontmatter.md walks through detecting and restoring any .md files damaged by the frontmatter bug during v3.0.0–v3.2.1. If the project has never been on v3.0.0–v3.2.1, skip this task.
Install / Upgrade
# New installation
git clone -b v3.3.0 https://github.com/Edmonds-Commerce-Limited/claude-code-hooks-daemon.git .claude/hooks-daemon
cd .claude/hooks-daemon && ./install.sh
# Upgrade from v3.2.x
cd .claude/hooks-daemon && ./upgrade.shTest Stats
- Tests: 7,621+ passing
- Coverage: 95%+
- QA checks: 10/10 passing
Comparison
Full diff: v3.2.1...v3.3.0