feat: Phases 9/11/12/13 — diff / lessons / inconsistencies / digest #3
Reference in New Issue
Block a user
Delete Branch "feature/phases-9-thru-13"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Eight new MCP tools. Tool count 3 → 11. submit_doc_bug stays env-gated off until HPE feedback endpoint is sniffed.
Eight new MCP tools on top of the Phase 3 baseline. Each one uses TimedCall so calls show up in usage.jsonl alongside search/get/list. Phase 9 — multi-version diff: * list_cluster(bundle_id, page_id) — cross-version peers from the synthesized topic_cluster (same GUID across 8.1.x versions). * diff_versions(bundle_id, page_id, against_bundle_id) — unified diff between two bundles; uses topic_cluster first, falls back to same page_id (which works because HVM GUIDs are stable cross-version). * bundle_changelog(new, old) — page-level adds/removes/churn summary, sorted by lines moved; uses _diff_churn helper. Phase 11 — curated knowledge: * hvm_api_lessons(topic?) — surfaces docs_mcp/api_lessons.md (manager sizing, upgrade ordering, plugin/worker version compat, backups setup, console keyboard, elevation, ops gotchas). topic= filters to matching H2 sections. Marked "call proactively for HVM scripting / integration / upgrade questions" in the docstring so the LLM uses it. Phase 12 — doc-bug workflow: * find_doc_inconsistencies(scope_query, ...) — read-only scan with two checks: cross_version_drift (line-diff vs cluster peers, in-band 10-60% of file = high confidence) and redirect_chain (short body that's mostly a "see [other page]" pointer). * submit_doc_bug(page_url, content, ...) — env-gated OFF (DOC_BUG_SUBMIT_ENABLED) AND requires DOC_BUG_API_URL. Refuses cleanly with a manual-fallback message when either is unset. Allowlist: support.hpe.com only. Mandatory operator-confirmation pattern in the docstring; loud "do not loop" warning. The actual HPE feedback endpoint hasn't been sniffed yet — when it is, set both env vars and verify the payload shape against the schema. Phase 13 — weekly digest: * _digest_history() reads corpus/.digest/history.jsonl (built by scrape.changelog --history-out in the CI refresh workflow). * weekly_digest(days, version?, platform?, ...) aggregates corpus- touching commits in the window. Post-filter totals so version / platform filters give honest "X page changes" numbers, not the pre-filter commit count. * corpus_status() reports image build time, latest upstream Published date, total bundles/pages/chunks, and the 5 most-recently-edited bundles. Tool count now: 11 registered (search_docs, get_page, list_versions, list_cluster, diff_versions, bundle_changelog, weekly_digest, corpus_status, hvm_api_lessons, find_doc_inconsistencies, submit_doc_bug). Verified end-to-end via MCP stdio tools/list. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>