> ## Documentation Index
> Fetch the complete documentation index at: https://oxy.tech/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Testing UI, Looker Explore, and CLI Improvements

> Testing UI for agent runs, Looker Explore in the Dev Portal, and database-free CLI execution

<Icon icon="calendar" iconType="regular" size={16} /> **March 19, 2026**

### New Features

#### Agent Testing UI

A new UI layer for managing and tracking test executions within projects:

* **Test File Browser** — List and retrieve test files directly from the project view
* **Test Case Execution** — Run individual test cases from the UI with per-case result tracking
* **Test Run Management** — Create, list, and delete test runs organized by project and run
* **Human Verdicts** — Reviewers can submit verdicts on test case results, supporting human-in-the-loop evaluation workflows

<img src="https://mintcdn.com/oxy-internal/R-APzOaK3dw7Xh7q/changelog/images/2026-03-19/agent-testing-dashboard.png?fit=max&auto=format&n=R-APzOaK3dw7Xh7q&q=85&s=0731b3e942d6363b9858e75dd06bfee1" alt="Agent Testing dashboard showing pass rate history and test case results" width="2942" height="1670" data-path="changelog/images/2026-03-19/agent-testing-dashboard.png" />

<img src="https://mintcdn.com/oxy-internal/R-APzOaK3dw7Xh7q/changelog/images/2026-03-19/agent-testing-runs.png?fit=max&auto=format&n=R-APzOaK3dw7Xh7q&q=85&s=16dfdabe35f804cc5480a81bdf07dd4e" alt="Test runs list with consistency and score metrics per run" width="2944" height="1554" data-path="changelog/images/2026-03-19/agent-testing-runs.png" />

<img src="https://mintcdn.com/oxy-internal/R-APzOaK3dw7Xh7q/changelog/images/2026-03-19/agent-testing-human-verdict.png?fit=max&auto=format&n=R-APzOaK3dw7Xh7q&q=85&s=a372160d30d962f15556855f2a7635f2" alt="Test case detail with prompt, actual output, and human review Pass/Fail controls" width="2938" height="1488" data-path="changelog/images/2026-03-19/agent-testing-human-verdict.png" />

<img src="https://mintcdn.com/oxy-internal/R-APzOaK3dw7Xh7q/changelog/images/2026-03-19/agent-testing-file-browser.png?fit=max&auto=format&n=R-APzOaK3dw7Xh7q&q=85&s=06ebaf95d08b4a737596a1d1ab6dcbba" alt="Test file browser showing objects, procedures, and test cases" width="2936" height="1814" data-path="changelog/images/2026-03-19/agent-testing-file-browser.png" />

New REST and SSE endpoints:

| Method   | Endpoint                                                            | Description                                                |
| -------- | ------------------------------------------------------------------- | ---------------------------------------------------------- |
| `GET`    | `/api/projects/:id/tests`                                           | List all test files with case counts                       |
| `GET`    | `/api/projects/:id/tests/:pathb64`                                  | Resolve a specific test file config                        |
| `POST`   | `/api/projects/:id/tests/:pathb64/run`                              | Run a test file, stream events via SSE, persist results    |
| `GET`    | `/api/projects/:id/test-runs`                                       | List test runs for a file                                  |
| `GET`    | `/api/projects/:id/test-runs/:runId`                                | Detailed case results for a run                            |
| `POST`   | `/api/projects/:id/test-runs/:runId/cases/:caseIndex/human-verdict` | Set or update a human verdict                              |
| `GET`    | `/api/projects/:id/test-project-runs`                               | List project-level runs                                    |
| `POST`   | `/api/projects/:id/test-project-runs`                               | Run all test files as a project run, stream events via SSE |
| `DELETE` | `/api/projects/:id/test-project-runs/:runId`                        | Delete a project run                                       |

#### Looker Explore in Dev Portal

Looker Explore is now accessible directly from the Dev Portal semantic layer:

* **Explorer Page** — Browse Looker data models from a dedicated UI page
* **Structured Metadata** — Explore info now returns `dimensions` and `measures` as separate lists for clearer model structure
* **Query Compilation** — Compile Looker queries to SQL without executing them
* **Sort Expression Alignment** — Sort syntax updated to match Looker's native format (e.g., `"view.field asc"`)

<img src="https://mintcdn.com/oxy-internal/R-APzOaK3dw7Xh7q/changelog/images/2026-03-19/looker-explore.png?fit=max&auto=format&n=R-APzOaK3dw7Xh7q&q=85&s=572c7186416166a609faa464545ac386" alt="Looker Explore in the Dev Portal showing dimensions browser and SQL compilation" width="3004" height="2236" data-path="changelog/images/2026-03-19/looker-explore.png" />

#### `oxy run` Without a Database

The `oxy run` CLI command no longer requires a database connection:

* **No-op Storage Mode** — Run history and checkpoints fall back to a no-op implementation when no database is configured, allowing workflows, agents, and SQL files to execute locally without setup

***

### Platform Improvements

#### Database & Run Index

* **Atomic Run Index Assignment** — Replaced the previous lock-and-retry logic with a single atomic database operation, eliminating application-level locking
* **Batch Checkpoint Insertion** — Checkpoints are now created in a single batch operation, reducing the number of queries per run
