Knowledge Assistant analysis — consumer boundary (LCDL)

Consumer mirror: forge-knowledge-assistant analysis-dual-architecture.md.

Updated

SharePoint Sync (separate concern): SHAREPOINT-CONSUMER-BOUNDARY.md ↔ KA sharepoint-lcdl-boundary.md.

Scope

forge-lcdl does not run KA Analyze workers (deck derived, slide previews, deck mindmap LLM, Fleet containers, or heatmap job phases). Those live entirely in forge-knowledge-assistant and Forge Fleet.

Deck mindmap: LLM enrichment (deck_mindmapcorpus/derived/<deck_id>/mindmap.json) is a KA Analyze worker. LCDL has no task for topic-tree inference. Consumer UI (News Map view) reads JSON via KA APIs only. See KA deck-mindmap-dual-architecture.md.

LCDL participates in the KA product in two read-only / transport roles:

Role LCDL surface KA consumer
SharePoint library I/O sharepoint_* tasks and connectors lcdl_sharepoint_bridge.py, Sync job
Local evidence Q&A transport LcdlClient, chat / completion tasks rag/ask.py (FTS corpus — not M365 Copilot UI)

What LCDL must not know

Out of scope for LCDL Belongs in KA / Fleet
Heatmap columns 1–4, decks_missing_previews KA deck_local_storage
analysis_status, deck_only, Analyze queue KA analysis_queue, analysis_background
corpus/derived/, previews/ layout KA docs: corpus-on-disk.md
mindmap.json, deck_mindmap worker KA deck-mindmap-dual-architecture.md
Fleet workspace tarball, job.json, merge KA workspace_pack / workspace_unpack; Fleet HTTP
M365 Copilot ⋮ menus (Summarize, Transcript, FAQ) KA sharepoint_copilot/
POST /api/analysis/run KA app.py

Atomic catalog (SharePoint — Sync only)

See SHAREPOINT-CONSUMER-BOUNDARY.md for the full table (normalize, probe, list, download, …).

Wire examples (LCDL-owned)

SharePoint list tasks emit ReadResult-compatible JSON (items[], source_kind, extra). Do not embed KA deck_id or corpus paths in LCDL wire types.

Format examples for Fleet / Analyze live in KA only: forge-knowledge-assistant/docs/assets/formats/.

Consumer responsibilities (KA)

  1. Session — Edge CDP, register_playwright_page.
  2. Sync composition — LCDL atoms → deck rows + corpus/decks/.
  3. Analyze — Local or Fleet pipelines in KA; no LCDL task for slide PNG export today.
  4. Copilot column — KA DOM automation during Sync until governed mutation pack exists in LCDL.