fix(ui): unblock .pptx upload in Agent UI#1366
Conversation
PowerPoint RAG shipped end-to-end in #1224 — the RAG backend and the FastAPI ALLOWED_EXTENSIONS already accept .pptx — but the Agent UI's UnsupportedFeature gate still classified .pptx as an unsupported "Microsoft Office" type and rejected it before upload, leaving a headline feature unreachable. Drop .pptx from the blocked set, add it to SUPPORTED_EXTENSIONS (now matching the server allowlist), and fix the stale rejection copy. .doc/.docx/.ppt/.xls stay blocked. Refs #1363
SummaryCorrect targeted fix: Issues Found🟢 Minor —
|
- featureTitle now lists all blocked Office formats (doc, docx, ppt, xls) so the auto-filed feature-request title matches the blocklist - drop the #1224 reference from a test name so the assertion stands alone
|
Addressed in c955d17:
Deferring the third nit (per-extension Vitest remains 18/18; neither change touches asserted behavior. |
|
A focused, correct fix — removes a frontend gate that was silently blocking a feature the backend already supported. Code is clean and all affected paths are consistently updated. Summary
Issues FoundNone. No blocking issues identified. Strengths
VerdictApprove — ready to merge. The fix is correct, fully tested, and the PR description is a model of how to explain user-observable impact concisely. |
19 PRs merged to main after the v0.20.0 notes were drafted; merge main into the release branch and update the notes to match. - Multi-Device: note #1338 wired the selector end-to-end (it was a no-op after #1252 alone) and added loud runtime validation for unavailable devices. - PowerPoint RAG: note #1366 unblocked .pptx in the Agent UI file picker (backend already accepted it; the frontend rejected it pre-upload). - Activations: note #1310 widened the "Active for" panel to MCP-consuming agents (e.g. the chat agent), not just static REQUIRED_CONNECTORS. - New bug fixes: RAG embedding reuse (#1306), overlapping-chat-turn 409 (#1304), Memory/Settings mutual exclusivity (#1368). - Tooling/CI: doc-vs-code realignment (#1298/#1337/#1340), gaia-testing skill (#1372), Claude CI + Codecov hardening. - Full Changelog regenerated: 44 -> 63 commits.
The Agent UI hard-blocked PowerPoint uploads even though
.pptxRAG shipped end-to-end in #1224 — the RAG backend and the FastAPIALLOWED_EXTENSIONSalready accept.pptx, but the ReactUnsupportedFeaturegate still classified it as an unsupported "Microsoft Office" type and rejected it before upload. A headline feature was unreachable in the UI, and users were filing feature requests (#1072, #1291) for something that already worked. This drops.pptxfrom the frontend blocklist, adds it to the supported set (now matching the server allowlist exactly), and fixes the now-false rejection copy..doc/.docx/.ppt/.xlsstay blocked. No server change — the backend already accepts.pptx.Closes #1363
Test plan
cd src/gaia/apps/webui && npm test— Vitest 18/18 pass locally (new assertions verify.pptxis accepted and.doc/.ppt/.xlsstay blocked). Note: thetest-webui-vitestCI job doesn't currently trigger on diffs confined tosrc/gaia/apps/webui(pre-existing path-filter gap intest_electron.yml), so this was verified locally, not in CI.cd src/gaia/apps/webui && npm run build—tsc && vite buildcleancode-reviewerpass — no Critical/Advisory findings; independently confirmed the frontendSUPPORTED_EXTENSIONSnow matches the server-sideALLOWED_EXTENSIONSand no consumer (DocumentLibrary,FileBrowser) breaks.pptxthrough the Document Library → accepted (no "Microsoft Office not supported" toast) → indexed (1 chunk via nomic-embed) → Doc Agent answered questions grounded in slide body text (92.7% success rate), a table cell (14.5 Nm torque), and speaker notes (Bluejay-44 codename)