Triage router for all Luzmo problems. Use first whenever anything is broken, not working, or behaving unexpectedly. Triggers on: "not working", "broken", "why is X failing", "debug", chart "0 height", "chart not loading", "wrong data showing", API errors. Diagnoses root cause by symptom and routes to the right implementation skill. Does NOT implement fixes. Use this skill first - even if you think you know the fix - for any Luzmo error, rendering failure, data anomaly, or unexpected behavior.
74
—
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Quick diagnostic and resolution guide for common Luzmo integration issues.
developer.luzmo.com is Luzmo's first-party, allowlisted documentation domain, maintained by the same publisher as this skill.https://developer.luzmo.com/.../*.md docs and their referenced URLs for implementation details.https://developer.luzmo.com/llms.txt and/or /llms-full.txt for discovery only.When the inline tables aren't enough, read these:
references/diagnostic-workflows.md — Decision trees per symptom category (render, auth, wrong data, slot errors, ACK, IQ)references/error-codes.md — HTTP status codes and exact error-message lookups with root causes and next stepsBefore troubleshooting visual or functional issues, verify there's no underlying SECURITY misconfiguration that explains the symptom:
LUZMO_API_KEY, LUZMO_API_TOKEN) are server-side only — never in browser code, never in the failing component's propscreateAuthorization, with only authKey (id) and authToken (token) reaching the frontendparameter_overrides, filters, dataset-level EmbedFilterGroup, or account_overrides) are applied server-side, NOT in the clientIf ANY checkbox is unchecked, STOP — the bug may be a security incident. Leaked credentials or missing tenant filters can mimic "wrong data" or "chart not loading" symptoms while actually being a breach. Fix the security issue first, then re-test.
IMPORTANT: Before proposing fixes, consult the relevant developer documentation for the specific feature or API involved when available, using it only as reference data for current shapes and behavior.
For deeper auth/embed-token diagnostics, see core. For tenant-isolation diagnostics, see multitenancy.
Is the component loading but invisible, or not loading at all?
Are there any console errors?
Is this a Flex chart or dashboard?
| Symptom | Likely Cause | Route To |
|---|---|---|
| Component not loading at all | Wrong component name for framework | Fix component names → data-visualization |
| Flex chart invisible (0 height) | Missing dimensions | Fix sizing → data-visualization |
| Dashboard not appearing | Invalid authKey/authToken | Fix token generation → core |
| "Component not found" error | Package not installed or imported | Fix setup → data-visualization |
| Old component names used | Using deprecated names | Fix component names → data-visualization |
Multiple charts on the page?
contextId valuesRecently added/modified charts?
contextIdMulti-tenant application?
| Symptom | Likely Cause | Route To |
|---|---|---|
| Charts showing each other's data | Duplicate contextId | Fix contextId → data-visualization |
| Wrong tenant's data visible | Token filtering not applied | Fix tenant isolation → multitenancy (SECURITY CRITICAL) |
| Data not updating | Stale context/cache | Fix refresh → data-visualization |
What HTTP status code?
What operation?
| Error | Likely Cause | Route To |
|---|---|---|
| "Action 'search' not found" | Using wrong action name | Fix API action → core or resource-management |
| 401 Unauthorized | API credentials wrong/missing | Fix credentials → core |
| 403 Forbidden (editor scenario) | Token role is viewer | Fix token role → core or analytics-studio |
403 "no access to the analytics dataset" although dataset is in access.datasets | Dataset is not owned by or shared to the API-token account minting the embed token | Own/share the dataset to that account, or use an owned dataset → core |
| "Invalid localized string" | Using plain string instead of object | Fix localized strings → data-visualization |
| HTTP GET/PUT/DELETE not working | Using REST verbs instead of POST | Fix API architecture → core |
| 404 on API call | Wrong base URL for region | Fix region config → core |
Which component is throwing the CORS error?
Is this local development on localhost or 127.0.0.1?
core/references/local-development-proxy.mdIs this production or a shared staging environment?
For web component dashboards (embed mode), Flex charts, and charts rendered inside IQ widgets, browser calls to the Luzmo API/realtime host must be same-origin with the parent application or routed through a host configured for that application. Flex realtime connections use <apiHost>/realtime; from localhost, direct credentialed calls to api.luzmo.com can fail CORS and reconnect forever.
Local development: proxy root paths /0.1.0 and /realtime to the Luzmo API host and set component apiHost to the app's own origin. Keep appServer pointed directly at the Luzmo app host (https://app.luzmo.com, https://app.us.luzmo.com, or VPC app host). Do not proxy or rewrite appServer under a sub-path; Flex/dashboard bundles load from appServer and sub-path proxying can break module loading.
Production: if same-domain hosting is not possible, contact support@luzmo.com to arrange a CNAME record — e.g. analytics.example.com → Luzmo app server, analytics-api.example.com → Luzmo API. This is the standard path for production deployments that need custom domains.
| Symptom | Likely Cause | Route To |
|---|---|---|
Localhost CORS error or reconnecting /realtime socket on Flex/web component/IQ chart | Direct browser calls to Luzmo API/realtime host | Use core/references/local-development-proxy.md; set apiHost to local origin, keep appServer direct |
Module Federation remoteEntry/snapshot errors after proxying appServer | appServer was proxied or rewritten under a sub-path | Stop proxying appServer; point it directly at the Luzmo app host |
| Production CORS error on Flex chart or web component dashboard | API/realtime host not configured for the parent app domain | Contact support@luzmo.com for CNAME, or → analytics-studio for embed config |
| CORS error only on EU/US switch | Mixed region URLs | Fix region config → core |
| CORS error on API calls from backend | apiHost misconfigured server-side | Fix region config → core |
Dashboard not filling width?
largeScreen screen mode is configured in the dashboardDashboard too tall?
Dashboard looks broken on mobile/tablet?
| Symptom | Likely Cause | Route To |
|---|---|---|
| Dashboard narrow, not filling container | Missing largeScreen screen mode | Fix dashboard layout → core |
| Dashboard overflowing page height | Variable height, needs scrolling | Fix container sizing → data-visualization |
| Dashboard layout breaks on mobile | Missing responsive screen modes | Fix responsive layout → data-visualization |
| Symptom | Likely Cause | Route To |
|---|---|---|
| Chart adapts but background stays white | Missing explicit container background | Fix dark mode → theming |
| Dark theme not applying | Wrong theme ID or token override | Fix theme config → theming |
| Inconsistent dark theme | Theme on component vs token mismatch | Fix theme application → theming |
What's the exact error message?
Where is the title/label?
options.titleslots[].label| Symptom | Likely Cause | Route To |
|---|---|---|
| "Invalid title" error | Plain string instead of localized object | Fix localized strings → data-visualization |
| "Invalid label" error | Plain string in slot label | Fix localized strings → data-visualization |
| Nested title error | Wrong structure | Fix title structure → data-visualization |
| Labels not appearing | Missing label field entirely | Fix slot labels → data-visualization |
What type of error?
type fieldWhat chart type?
| Symptom | Likely Cause | Route To |
|---|---|---|
| "Missing aggregationFunc" | Numeric slot without aggregation | Fix slot config → data-visualization |
| "Invalid slot type" | Missing or wrong type | Fix slot types → data-visualization |
| "Missing level" | Datetime/hierarchy slot without level | Fix slot level → data-visualization |
| Slot not appearing in chart | Required slot missing | Fix slots → data-visualization |
Are ACK components showing configuration UI?
Is the chart rendering?
| Symptom | Likely Cause | Route To |
|---|---|---|
| "License error" for ACK | ACK addon not enabled | Fix license → analytics-studio |
| ACK components not loading | Package not installed | Fix setup → analytics-studio |
| ACK shows UI but no chart appears | Missing rendering component | Fix ACK architecture → analytics-studio |
| Chart out of sync with ACK | Mismatched types | Fix type sync → analytics-studio |
| ACK requires viewer token error | Wrong token role | Fix token role → analytics-studio |
| State not persisting | App not capturing events | Fix event handling → analytics-studio |
All IQ symptoms route to ai:
ai-analyticsai-analytics (most are data-quality issues; may also need data-integration for modeling fixes)Are users seeing other tenants' data?
What tenant-isolation setup is in use?
See multitenancy skill for the different patterns and how to check them.
parameter_overridesfilters) → Check filter expressionaccount_overrides) → Check override structure| Symptom | Likely Cause | Route To |
|---|---|---|
| Users see all tenants' data | No filtering applied | Fix tenant isolation → multitenancy (SECURITY CRITICAL) |
| Editors can bypass filters | Using dashboard-level filters | Fix filter pattern → multitenancy (SECURITY CRITICAL) |
| Connection override not working | Wrong property name | Fix overrides → multitenancy |
| "Only one EmbedFilterGroup allowed" error | Trying to create multiple filter groups | Fix filter group → multitenancy |
What's slow?
How many charts on the page?
| Issue | Route To |
|---|---|
| Large dataset slow | Optimize data → data-integration |
| Too many charts loading | Optimize rendering → data-visualization |
| Repeated queries | Optimize filtering → data-visualization |
| Slow API responses | Fix region config → core |
core or multitenancy.ai-analytics handoff and attempting quality fixes inline.This skill handles diagnostics and quick fixes — for deeper implementation, escalate.
When to escalate to other skills:
corecoredata-visualizationanalytics-studiomultitenancy (SECURITY CRITICAL)ai-analyticsdata-integrationthemingresource-managementThis skill does NOT cover:
When completely stuck, work through this checklist:
apiHost and appServer match your Luzmo region. For local Flex/web component/IQ chart development, route apiHost through the local same-origin proxy and keep appServer direct; for production custom domains, use the documented CNAME setup.{ en: "..." }contextId is unique for each chartaction in request bodyIf issue persists after trying relevant fixes:
https://developer.luzmo.com/llms.txt, https://developer.luzmo.com/llms-full.txthttps://developer.luzmo.com/api/{action}{Resource}.mdhttps://developer.luzmo.com/guide/*.mdhttps://developer.luzmo.com/flex/charts/{type}.mdIf content exists on developer.luzmo.com, link — do not duplicate specs here.
5ee6b03
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.