Skip to content

fix(explorer): ship the built UI in the release wheel - #371

Open
polakamtejas wants to merge 2 commits into
mainfrom
fix/explorer-ui-in-wheel
Open

polakamtejas wants to merge 2 commits into
mainfrom
fix/explorer-ui-in-wheel

Conversation

@polakamtejas

@polakamtejas polakamtejas commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

agent-env up from a PyPI install serves only the API: the wheel has no explorer/static/ (0 files in 0.9.1374), though pyproject.toml says the built UI ships there. Nothing in the release builds it.

Change

  • publish-pypi.yml: a new explorer-ui job runs npm ci && npm run build:static and uploads out/. The framework job downloads it into src/agent_env/explorer/static/ before uv build, and fails if the wheel has no index.html. The UI builds in its own job, so the job that publishes to PyPI still runs no npm.
  • pyproject.toml and .gitignore: explorer/static is a git-ignored hatch build artifact, like published_images.json.
  • Explorer README: a release ships the UI; a source checkout still uses [explorer] static_dir.

Testing

  • The release's own uv build --no-sources --out-dir dist, with a placeholder explorer/static/, ships it in both the source archive and the wheel, leaves explorer/ui/ out, and git status stays clean.
  • The workflow runs only on a release tag, so this PR's CI doesn't exercise it.

🤖 Generated with Claude Code

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge; the latest change addresses the missing UI in the source archive.

Summary

The release workflow builds the explorer UI separately and includes it in the Python package.

  • Release installs can serve the Explorer web page with agent-env up.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  A[Build explorer UI] --> B[Upload built files]
  B --> C[Download into explorer/static]
  C --> D[Build source archive]
  D --> E[Build wheel]
  E --> F[Check index.html]
  F --> G[Publish to PyPI]
Loading

Reviews (2) · Last reviewed commit: "fix(explorer): keep the built UI in the ..." · Reviewed by Greptile

The published wheel has no explorer/static/, so `agent-env up` from a PyPI install serves only the API.
The release now builds the UI in a job of its own and the framework job puts it in the wheel, failing
if index.html is missing. explorer/static is a git-ignored hatch build artifact, like
published_images.json.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@polakamtejas
polakamtejas requested a review from a team as a code owner October 28, 2026 20:50
Comment thread pyproject.toml
…uilt from

`uv build` builds the wheel from the source archive, which dropped the git-ignored explorer/static.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@earakely-scale

Copy link
Copy Markdown
Collaborator

🤖 Automated Claude routine — Env Pod PR Context Review. This is a bot, not Edgar Arakelyan; not a human review.

Context from outside this diff — the release path, not the change itself.

The new explorer-ui job and the wheel assertion it adds in .github/workflows/publish-pypi.yml (needs: main-ci, and framework now also gated on needs.explorer-ui.result == 'success') only run once a release tag's main-ci passes. That gate is red on main right now, so nothing has published since before this PR opened:

Net: nothing to change here — just that the built UI first reaches a wheel on the earliest release tag whose commit has a green Local backends, i.e. after #381 (or an equivalent) lands, not on the next version bump by itself.


Generated by Claude Code

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants