11 synthetic input rows in agent_tool_authorization_decisions. Timestamps shift into the current query window when the fixture loads.
Results are capped at 500 rows. The included fixtures are synthetic and intentionally small.
No fixture or query is sent to Telemetry.
Published expected result
Query output and visualization
Query result
Agent tool denial rate
Synthetic decisions keep denial rate beside approval and total volume for each tool.
| tool_name | risk_level | decisions | denied | approval_required | allowed | denial_rate_pct |
|---|---|---|---|---|---|---|
| database_write | high | 4 | 2 | 1 | 1 | 50 |
| filesystem_write | high | 4 | 1 | 2 | 1 | 25 |
| web_search | medium | 3 | 0 | 0 | 3 | 0 |
Synthetic example output. Run the query against your own event schema and thresholds before using it for operational decisions.
Need joins and a learning path?
Move from isolated fixtures to one connected SaaS dataset
The SQL Lab connects accounts, product events, API requests, LLM requests, jobs, and billing events across five guided analyses.
What this playground proves—and what it does not
The browser runner proves that the selected read-only query executes against its included rows and produces the displayed result. The browser downloads the versioned DuckDB runtime from jsDelivr only after you run a query; the SQL and fixture are not sent with that request. Telemetry recipes are separately planned with Apache DataFusion, the engine used by Telemetry. DuckDB and DataFusion are distinct SQL engines, so validate any edited syntax with the DataFusion SQL reference before using it in production.