Files
marki-docx/CHANGELOG.md
Bernd Worsch 6cf973b017 feat: WP-0006 — packaging & distribution infrastructure
CI matrix (Python 3.11/3.12) with pip cache and coverage job. PyPI publish
workflow (OIDC trusted publishing, triggered on v*.*.* tags). Docker image
for REST service with non-root user + ghcr.io push workflow. markidocx
--version flag. Diagram optional extras (diagram-mermaid/graphviz/plantuml)
and readme/urls in pyproject.toml. CHANGELOG.md (Keep a Changelog format)
with retrospective v0.1.0 entry. docs/release-process.md with executable
checklist. All 272 tests pass; ruff and mypy clean; twine check PASSED.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 14:30:08 +00:00

2.8 KiB
Raw Blame History

Changelog

All notable changes to markidocx are documented in this file.

Format follows Keep a Changelog. Versioning follows Semantic Versioning.


Unreleased


0.1.0 — 2026-03-17

Added

Core pipeline (WP-0001)

  • manifest.py — project manifest parsing and validation (FR-100)
  • builder.py — Markdown → DOCX conversion, LEVEL1 feature set: headings, lists, tables, footnotes, images, hyperlinks (FR-200)
  • importer.py — DOCX → Markdown round-trip import (FR-300, FR-400)
  • differ.py — structural drift detection between original Markdown and re-imported result (FR-700)
  • templates.py — document family management: article, book, website (FR-600)
  • evidence.py — evidence and report assembly (FR-1400)

Service interfaces (WP-0002)

  • cli.py — Typer CLI: build, import, compare, validate, serve, workflow, mcp, template commands
  • rest.py — FastAPI REST service with structured WarningRecord / FailureRecord output (FR-900, FR-1208)
  • mcp_server.py — FastMCP server exposing same functional surface as CLI/REST (FR-1000)
  • errors.pyWarningRecord, FailureRecord, OutputState error framework (FR-12011210)

LEVEL3 advanced features (WP-0003)

  • level3.py — LEVEL3 support detection and capability disclosure (FR-537539)
  • xref.py — cross-reference round-trip helpers (FR-531, FR-540)
  • figures.py — numbered figure round-trip helpers (FR-532, FR-541)
  • diagrams.py — auto-diagram source-only preservation (FR-533, FR-534)
  • bibliography.py — citation and references section round-trip (FR-535, FR-536, FR-542)
  • workflows.py — composite workflow orchestration: single-file-roundtrip, multi-file-roundtrip, release-regression, family-switch-build (FR-1300)

Diagram renderer integration (WP-0005)

  • Pluggable DiagramRenderer protocol and RendererResult type
  • MermaidRenderer — shells out to mmdc when available (FR-533)
  • GraphvizRenderer — shells out to dot when available (FR-533)
  • PlantUMLRenderer — shells out to plantuml when available (FR-533)
  • Graceful source-only fallback with WarningRecord(reason="renderer-unavailable") when tool is absent (FR-538)
  • Alt-text source markers enable diagram round-trip after rendering (FR-534)
  • Optional extras: diagram-mermaid, diagram-graphviz, diagram-plantuml

Packaging & distribution (WP-0006)

  • GitHub Actions CI: matrix test on Python 3.11 + 3.12, ruff, mypy, coverage
  • PyPI publish workflow triggered on v*.*.* tags via OIDC trusted publishing
  • Docker image for REST service (ghcr.io)
  • markidocx --version command