v1.6.0
✨ Features
- Migrate to pi-sidecar-client — Replace CLI subprocess-based AI calls with HTTP sidecar service for all providers (#83)
- Graphify code knowledge graphs — Pre-build code knowledge graph before AI planner runs for structured architecture context (#84)
- Documentation completeness check — AI audits generated docs against codebase and auto-generates pages for undocumented features (#84)
🐛 Bug Fixes
- Sidecar readiness check — Add health wait loop before starting FastAPI to prevent race conditions (#83)
- EXIT trap bypass — Don't exec when sidecar is running so cleanup trap fires (#83)
- Node.js version parity — Copy node from sidecar-builder instead of apt install (#83)
- npx symlink — Add npx symlink in Dockerfile runtime stage (#83)
- Conditional graph prompts — Only include graph instructions when GRAPH_REPORT.md exists (#84)
- Semantic JSON validation — Add type guards for non-dict JSON and list shape validation (#84)
- Golden rule compliance — Write data to temp files instead of bloating prompts (#84)
- Empty-text handling — Handle empty sidecar responses in code graph extraction (#84)
- Model discovery optimization — Single sidecar call instead of 3 for model listing (#84)
- Gap page validation — Validate completeness-check gap pages for stale references (#84)
- Async event loop — Wrap all blocking graphify calls in asyncio.to_thread (#84)
- Plan persistence — Persist updated plan_json after completeness check adds gap pages (#84)
🏗️ Architecture
- Sidecar helper — New TypeScript wrapper for @myk-org/pi-sidecar with lifecycle coupling
- Code graph module —
src/docsfy/code_graph.py— full Graphify pipeline (AST + semantic + clustering + labeling) - New pipeline stages —
analyzingandcompleteness_checkstages with frontend activity log entries
🔧 Maintenance
- PR Agent configuration — Added
.pr-agent.tomlfor automated PR review
Full Changelog: v1.5.0...v1.6.0