Skip to content

docs: full documentation audit (accuracy, dark-mode diagrams, persona review)#1982

Merged
kovtcharov-amd merged 7 commits into
mainfrom
docs/documentation-audit
Jul 10, 2026
Merged

docs: full documentation audit (accuracy, dark-mode diagrams, persona review)#1982
kovtcharov-amd merged 7 commits into
mainfrom
docs/documentation-audit

Conversation

@kovtcharov-amd

@kovtcharov-amd kovtcharov-amd commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Why this matters

A full audit of the published documentation against main. It fixes reader-facing breakage across the whole docs surface: mermaid diagrams that were unreadable in dark mode (sequence-message and flowchart edge-label text rendered dark-on-dark — e.g. the flagged Wi-Fi agent diagram); CLI/feature reference pages that documented removed commands; a connectors page that described a fictional catalog; a Browser Agent guide too thin to use; SDK examples that would crash on copy-paste; and the C++ framework defaulting to a Lemonade port (8000) that the server doesn't use (13305). After: diagrams are legible in both themes, documented commands/APIs match the code, and examples run.

Every change was verified against the latest main: CLI reconciled via actual -h output, Python/C++ examples checked against src/gaia/ + hub/agents/python/ + cpp/ (with import smoke tests), links checked against docs/docs.json, and each page reviewed through developer / end-user / enterprise / ISV personas. The dark-mode mermaid fix was validated by rendering both themes.

Scope (7 commits)

  • guides + C++ + reference + connectors/security + integrations/deployment — accuracy, dark-mode diagrams, persona gaps; Browser Agent guide expanded.
  • SDK reference — runtime-correct examples (fixed indexed_files set/dict bug, async audio callback, agent-ui system_prompt TypeError, removed gaia mcp add).
  • Python Specifications — class/method/signature drift, stale module paths (agents now in hub/agents/python/<id>/), tool-mixins aligned to registry.KNOWN_TOOLS.
  • Playbooks — step-by-step tutorials verified runnable in order.
  • Roadmap plans + release notes — link + dark-mode-diagram fixes only; historical release content left intact; roadmap design docs not rewritten (shipped/stale items flagged, not edited).
  • fix(cpp) — default Lemonade URL 800013305 in the C++ source, tests, examples, and README (this is what the C++ integration CI already uses). Python-CLI CI keeps 8000 because it uses lemonade-server-dev, which binds there.

Notable correctness fixes

  • Reference/feature docs referenced ~5 removed eval commands (gaia generate, groundtruth, batch-experiment, eval -d, visualize) → current commands.
  • cli.mdx: added mcp serve, eval flags (--agent-type/--iterations/--keep-sessions/--device); connectors doc reflects gaia mcp add/remove removal.
  • Invalid FontAwesome icon stars (rendered blank) → wand-magic-sparkles.
  • email-integration contract version 2.12.2.

Test plan

  • Preview docs and confirm mermaid diagrams are readable in dark mode (spot-check cpp/wifi-agent, guides/sd, guides/routing, sdk/sdks/rag).
  • PYTHONPATH=src python -m gaia.cli -h and spot-check reference/cli.mdx matches (incl. schedule, config, uninstall, knowledge, mcp serve).
  • C++ build/tests green with the 13305 default (build_cpp.yml integration job already targets 13305).
  • No broken internal links (all targets in docs/docs.json).
  • docs/browse reads completely; its flag table matches gaia browse -h.

Follow-ups flagged (not changed here)

  • Stale "supported LLMs" model tables in faq.mdx/features.mdx (Phi-3.5, Llama-2 …).
  • Roadmap docs describing already-shipped work (e.g. agent-hub-ui Phase 0, image-agent/vision-sdk supersets) — maintainer call.
  • plans/docker-containers Dockerfile EXPOSE list includes 8000, inconsistent with its own port table.

…ona review

Sweep of the published docs against main (guides, C++, reference,
connectors/security, integrations/deployment). Fixes reader-facing breakage:
mermaid diagrams were unreadable in dark mode (sequence-message and flowchart
edge-label text rendered dark-on-dark); the CLI/feature reference listed removed
commands; the connectors page described a fictional catalog; the Browser Agent
guide was too thin; and an invalid FontAwesome icon rendered blank.

SDK, specifications, playbooks, and roadmap/releases sections land in follow-up
commits on this branch.
@github-actions github-actions Bot added documentation Documentation changes agent::emr Medical-intake (EMR) agent changes agent::browser Browser agent changes agent::code Code agent changes agent::blender Blender agent changes agent::docker Docker agent changes agent::routing Routing agent changes agent::jira Jira agent changes labels Jul 9, 2026
Ovtcharov added 2 commits July 9, 2026 13:19
…amples

Verified every SDK doc example against src/gaia/. Fixed examples that would
crash on copy-paste: RAGSDK.indexed_files treated as a dict (it's a set),
an async audio callback signature, an agent-ui system_prompt TypeError, and a
removed `gaia mcp add` / `timeout=` MCP usage. Aligned the tool-mixins list
with registry.KNOWN_TOOLS and corrected config env-var names that were no-ops.
The C++ docs audit changed the Lemonade base URL from 13305 to 8000 to match a
stale LEMONADE_DEFAULT_URL constant in the C++ source (cpp/include/gaia/
lemonade_client.h). But Lemonade Server actually listens on 13305, so 8000 does
not work for users. Restore 13305 across the C++ docs (also fixes a pre-existing
stale 8000 in bash-agent's env-var table).

Note: cpp/include/gaia/lemonade_client.h and cpp/include/gaia/types.h still
hardcode 8000 as the default — that is a separate source-level bug to fix.
@kovtcharov-amd kovtcharov-amd marked this pull request as ready for review July 9, 2026 20:31
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

🟡 The routing guide now points developers to the wrong file for CLI integration.

docs/guides/routing.mdx changed the "CLI integration" pointer from src/gaia/cli.py (the main GAIA CLI, where gaia browse, gaia analyze, and similar commands are registered) to hub/agents/python/code/gaia_agent_code/cli.py (the gaia-code binary entry point). RoutingAgent's CLI wiring won't be found there — a developer following that link to extend or debug routing CLI behaviour will land in the wrong package. The previous value was correct; please revert it.

🔍 Technical details

docs/guides/routing.mdx line ~1299, changed in this push:

-CLI integration: `src/gaia/cli.py` (search for "RoutingAgent")
+CLI integration: `hub/agents/python/code/gaia_agent_code/cli.py` (search for "RoutingAgent")

src/gaia/cli.py is the authoritative location for all gaia <subcommand> dispatch; CLAUDE.md confirms gaia browse and gaia analyze are there. hub/agents/python/code/gaia_agent_code/cli.py is the gaia-code standalone binary — not where RoutingAgent integration lives. The other two pointers in the same block (agent.py, system_prompt.py) correctly reference hub/agents/python/routing/gaia_agent_routing/, which makes the mismatched CLI line stand out more.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Verdict: ✅ Approve

This is a documentation-only audit (Pass 1) that reconciles the published docs against main — fixing dark-mode mermaid legibility, removed CLI commands/flags, a fictional connector catalog, a thin Browser guide, and an invalid FontAwesome icon. I spot-checked the highest-risk factual claims against the actual codebase and every one was accurate, so it's safe to merge. As noted in the description, this is an in-progress branch landing in waves — the SDK/spec/playbook passes are follow-ups.

No blocking issues, no security concerns. Docs-only, so no tests/eval are required.

🔍 Technical details

Claims verified accurate against the codebase:

  • gaia kill --lemonade — flag exists (src/gaia/cli.py:2200, handler :3857); kills port 13305. ✅
  • gaia download --clear-cache new help text ("Delete all downloaded GAIA models…") matches the argparse help and handler behavior exactly (src/gaia/cli.py:2099, :3908). ✅
  • Lemonade port 13305 everywhere (matches the recent docs(cpp) revert; AGENT_PROFILES includes bash). ✅
  • KokoroTTS default voice af_bellasrc/gaia/audio/kokoro_tts.py:194 (self.voice_name = "af_bella"). ✅
  • Agent-UI npm bin bin/gaia-ui.cjssrc/gaia/apps/webui/package.json:32. ✅
  • ChatAgentConfig uses prompt_profile (default "full"), no system_prompt field — hub/agents/python/chat/gaia_agent_chat/agent.py:138. ✅
  • Audio callback must be async — invoked via asyncio.run(message_processor_callback(...)) at src/gaia/audio/audio_client.py:466; the doc's async example is correct. ✅

Strengths:

  • The audio and ChatAgent examples were changed to match runtime contracts (async callback, prompt_profile vs. a non-existent system_prompt) — these are the kind of copy-paste-and-crash errors doc audits usually miss.
  • Dark-mode mermaid fix (lineColor/edgeLabelBackground) is applied consistently across ~20 diagrams with an identical theme block, and stale source-path references were moved to the new hub/agents/python/<id>/ layout uniformly.
  • CLI reference reconciled flag-by-flag against real -h output, and the removed gaia mcp add/remove commands are now correctly redirected to the connectors framework / direct mcp_servers.json editing.

Minor process note (non-blocking): the eval scenario/category counts (91 / 12) are stamped "at the time of writing" with a dynamic-discovery caveat — a sensible hedge, but they will drift as scenarios are added.

Ovtcharov added 2 commits July 9, 2026 13:51
The C++ framework hardcoded http://localhost:8000/api/v1 as the default Lemonade
endpoint, but the production Lemonade Server (what users install) listens on
13305 — so C++ agents failed to connect out-of-the-box unless the user set
LEMONADE_BASE_URL/GAIA_CPP_BASE_URL. This is also what the C++ integration CI
already uses (build_cpp.yml starts lemonade-server on 13305).

Updates LEMONADE_DEFAULT_URL and types.h defaultBaseUrl to 13305, the matching
unit-test assertions, the integration-test env fallbacks, examples, and README.
URL-normalization unit tests keep 8000 as arbitrary input (port-agnostic). The
Python CLI CI is unchanged: it uses lemonade-server-dev, which binds to 8000.
Reconciled the spec reference pages (core, SDKs, infrastructure, code
internals, tool mixins, agents/apps) against src/gaia and the hub agent
packages: corrected class/method/signature drift, fixed stale module paths for
agents that moved to hub/agents/python/<id>/, aligned the tool-mixin pages with
registry.KNOWN_TOOLS, and applied the dark-mode mermaid fix where diagrams exist.
@github-actions github-actions Bot added mcp MCP integration changes rag RAG system changes llm LLM backend changes cpp labels Jul 9, 2026
…, links)

Playbooks: verified the step-by-step tutorials (chat, code, emr, hardware-advisor,
sd, custom-installer) run in order against the current CLI/source — fixed stale
agent paths (hub/agents/python/<id>/), commands, and applied the dark-mode
mermaid fix. Roadmap/plans + release notes: link and dark-mode-diagram fixes only;
historical release content left intact, and roadmap design docs not rewritten
(shipped/stale items flagged for a maintainer, not edited).
@kovtcharov-amd kovtcharov-amd added this pull request to the merge queue Jul 10, 2026
Merged via the queue into main with commit c846dfd Jul 10, 2026
43 checks passed
@kovtcharov-amd kovtcharov-amd deleted the docs/documentation-audit branch July 10, 2026 17:55
pull Bot pushed a commit to bhardwajRahul/gaia that referenced this pull request Jul 11, 2026
…ports) (amd#1988)

## Why this matters

Follow-up to the documentation audit (amd#1982), fixing the three items
that were flagged for a maintainer decision. Before: the "Supported
LLMs" reference listed pre-Lemonade OGA/ONNX-hybrid models (Phi-3.5,
Llama-2, Mistral) and dead installer names — actively misleading for
anyone choosing a model today; several roadmap docs described
already-shipped features as "Planning"; and a container plan's `EXPOSE`
list contradicted its own port table. After: model docs match what GAIA
actually runs (Lemonade GGUF/FLM), shipped work is marked shipped, and
ports are consistent.

## What changed

- **`reference/features.mdx` + `reference/faq.mdx`** — replaced the
stale OGA hybrid model tables (and empty "generic installer" table) with
the current Lemonade model set, verified against source
(`lemonade_client.py`, `init_command.py` profiles):
`Gemma-4-E4B-it-GGUF` (default), `Qwen3.5-35B-A3B-GGUF` (agents),
`Qwen3-4B-Instruct-2507-GGUF` (summarize), `Qwen3-VL-4B-Instruct-GGUF`
(VLM), `embeddinggemma-300m-GGUF` (RAG), FLM NPU models, `SDXL-Turbo`.
Fixed the silent-install example from the dead `gaia-windows-setup.exe`
to the current NSIS artifact name.
- **Roadmap plans** — status corrected to reflect reality:
`agent-hub-ui` Phase 0 (agents already in `hub/agents/python/`),
`image-agent` (SD ships as `gaia sd`), `vision-sdk` (VLM SDK ships in
`src/gaia/vlm/`), and the email agent row in
`email-calendar-integration` (now `hub/agents/python/email/`). Designs
left intact — only status/paths corrected.
- **`plans/docker-containers.mdx`** — `EXPOSE` lines had a stale `8000`
and omitted `8080`; aligned to the doc's own port table → `3000 5174
8080 13305 9229 9222`.

## Test plan

- [ ] `reference/features` "Supported LLMs" matches
`src/gaia/llm/lemonade_client.py` + `src/gaia/installer/init_command.py`
profiles.
- [ ] No remaining `gaia-windows-setup.exe` / `GAIA_Installer.exe` /
`onnx-hybrid` references in reference docs.
- [ ] `docs/plans/docker-containers` EXPOSE list matches its port table.
- [ ] Roadmap status notes render and read correctly.

Co-authored-by: Ovtcharov <kovtchar@amd.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent::blender Blender agent changes agent::browser Browser agent changes agent::code Code agent changes agent::docker Docker agent changes agent::emr Medical-intake (EMR) agent changes agent::jira Jira agent changes agent::routing Routing agent changes cpp documentation Documentation changes llm LLM backend changes mcp MCP integration changes rag RAG system changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants