Commit Graph

1 Commits

Author SHA1 Message Date
Lukas Moschitz 49d18e7353 fix(showcase): ship the query_data dataset inside tools/ and fail loud when it is missing
showcase/shared/python/tools/query_data.py resolved db.csv at ../data/db.csv, i.e. showcase/shared/python/data/. Every integration Dockerfile copies the tools/ symlink but none copied that sibling directory, so the CSV was absent at runtime and the except-branch silently served a 3-row _MOCK_DATA.

Visible effect in the beautiful-chat demos of the 8 integrations that use the shared tool and have no local copy (ag2, agno, claude-sdk-python, crewai-crews, google-adk, langroid, llamaindex, strands): the pie chart rendered 2 slices (the two income mock rows) and the bar chart a single bar (the one expense mock row), while looking healthy. Confirmed in a running container: /app/tools/query_data.py present, db.csv nowhere in the image.

Move the dataset into the tools/ package (which every Dockerfile already copies) and resolve it relative to the module. Replace the silent degrade with a RuntimeError; the mock stays available behind SHOWCASE_ALLOW_MOCK_DATASET=1 for tests. A warning was not enough here: these integrations run the agent as a child process whose stdout is not captured, so nobody ever saw it.

Verified: 40 rows load after the move (mock would be 3); missing file now raises; opt-in env var still yields the mock.
2026-07-31 10:03:27 +02:00