Fix Lemonade v10 system-info device key compatibility#548
Merged
kovtcharov merged 3 commits intomainfrom Mar 16, 2026
Merged
Conversation
Lemonade Server v10 renamed device keys in the /api/v1/system-info response: npu → amd_npu, gpu → amd_igpu/amd_dgpu. This broke NPU detection in the Hardware Advisor agent and any other consumer using the legacy key names. Add _normalize_system_info() to LemonadeClient that creates bidirectional aliases so both old (npu, gpu) and new (amd_npu, amd_igpu) keys work transparently. Existing callers require no changes.
Remove _normalize_system_info() and update all code to use the Lemonade v10 key names (amd_npu, amd_igpu, amd_dgpu) directly.
itomek
approved these changes
Mar 16, 2026
kovtcharov-amd
approved these changes
Mar 16, 2026
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Mar 27, 2026
## Summary Release v0.17.0 — **GAIA Agent UI**, eval benchmark framework, tool execution guardrails, system prompt optimization, and security hardening. ### Files Changed - **`docs/releases/v0.17.0.mdx`** — Comprehensive release notes (new file) - **`docs/docs.json`** — Added `releases/v0.17.0` to Releases tab, updated navbar to `v0.17.0 · Lemonade 10.0.0` - **`src/gaia/version.py`** — Already at `0.17.0` on main (no change needed) ### Release Highlights **New Features:** - **GAIA Agent UI** — Full-stack privacy-first desktop chat with streaming responses, 53+ format document Q&A, ngrok tunnel for mobile, page-level citations, session management (PR #428) - **Agent UI Eval Framework** — `gaia eval agent` command with 7-dimension weighted scoring across 34 scenarios, redesigned Settings modal, `<think>` block display, performance stats (PR #607) - **Tool Execution Guardrails** — Blocking confirmation popup (Allow/Deny/Always Allow) before write/shell tools, 60s timeout (PR #565, #604) - **Device Support Detection** — AMD Ryzen AI Max + Radeon ≥24GB detection, `--base-url` remote bypass, `GAIA_SKIP_DEVICE_CHECK` override (PR #593) - **Terminal UI Design** — Typewriter welcome page, pixelated AMD cursor, glassmorphism, `prefers-reduced-motion` support (PR #568) **Performance:** - **78% System Prompt Reduction** — 17,600 → 3,853 tokens via two-tier RAG gating, 600s chat timeout, MCP runtime status display (PR #617) **Security:** - **TOCTOU Race Condition** — Atomic `O_NOFOLLOW` + `fstat` fix in document upload, per-file `asyncio.Lock` (PR #564) **Bug Fixes:** - LRU eviction silent failure + new `--max-indexed-files`/`--max-total-chunks` CLI flags (PR #567) - Lemonade v10 device key renames: `npu` → `amd_npu`, `gpu` → `amd_igpu`/`amd_dgpu` (PR #548) - Agent UI rendering, Windows paths, JSON safety regex, RAG indexing guards (PR #566, #604, #605) - Restored accidentally reverted changes from PRs #564, #565, #568 (PR #608) ### Post-Merge After merging, tag and push: ```bash git checkout main && git pull git tag v0.17.0 && git push origin v0.17.0 ``` CI runs `validate-release` → `publish-release`. PyPI gated on Kalin approval. ## Test plan - [ ] `docs.json` is valid JSON and renders on Mintlify - [ ] `validate_release_notes.py` passes for v0.17.0 - [ ] `version.py` reads `0.17.0` - [ ] Release notes content matches actual PR changes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/api/v1/system-info:npu→amd_npu,gpu→amd_igpu/amd_dgpuChanges
src/gaia/llm/lemonade_client.py— Updatedget_system_info()docstring and examples to use v10 device keys (amd_npu,amd_igpu,amd_dgpu)examples/hardware_advisor_agent.py— Changeddevices.get("npu")→devices.get("amd_npu")for Lemonade input; changed output keys fromgpu/npu→amd_igpu/amd_npufor consistencytests/test_hardware_advisor_agent.py— Updated mock data and assertions to useamd_npu/amd_igpukeys throughoutTest plan
curl http://localhost:8000/api/v1/system-info