v1.1.0
What's New
Post-Generation Quality Pipeline (#41, #42)
A new pipeline runs after page generation and before rendering, enriching docs with:
- Content Validation — Checks generated pages against the current codebase for stale references (removed features, nonexistent files). Automatically regenerates affected pages with exclusion hints.
- Mermaid Diagrams — AI generates architecture/data flow diagrams in Mermaid syntax. Pre-rendered to SVG via mermaid-cli (mmdc) at build time — no client-side JavaScript needed.
- Cross-Page "Related Pages" Links — AI analyzes all pages and suggests 2-5 related pages per page, appended as a "Related Pages" section.
- Project Version Display — Auto-detects version from
pyproject.toml,package.json,Cargo.toml,setup.cfg, or git tags. Shown in the doc site footer as "Generated from version X.Y.Z".
docsfy models CLI Command (#43, #44)
New command to discover available AI providers and models:
docsfy models # List all providers and known models
docsfy models --provider claude # Filter by provider
docsfy models --json # Machine-readable JSON outputBacked by a public GET /api/models endpoint (no auth required).
Frontend Improvements (#33-36)
- Resizable sidebar with drag handle (width persisted to localStorage)
- Expand all / collapse all buttons for project groups
- Layout state persistence across page refresh
- WebSocket progress fix for continuous activity log updates
- New "Validating" and "Cross-linking" stages in the dashboard activity log
Security Hardening
- Path confinement (
_confined_path) prevents path traversal in slug-derived filenames - Control character rejection in slugs
- Markdown title escaping in cross-link sections
- Raw AI output removed from warning-level logs
Docker
- Chromium +
@mermaid-js/mermaid-cli@11added to runtime image - Puppeteer configured with
--no-sandboxfor Docker containers - Build-time verification of mmdc functionality
Bug Fixes
- Fix WebSocket progress handler overwriting project fields with undefined
- Fix test isolation — all mermaid tests mock external dependencies
- Guard against empty exclusions triggering unnecessary page regeneration
- Graceful fallback when
get_known_models()DB query fails - Separate parse failures from empty results in validation
Maintenance
- Pre-commit hooks updated (ruff, gitleaks)
docs/excluded from trailing-whitespace, end-of-file-fixer, detect-secrets, and gitleaks pre-commit hooksMAX_CONCURRENT_PAGESmoved tomodels.pyper reusability rules- E2E test plans added for post-generation pipeline and models command