fix(cli): open deployed apps in Testing Playground (SERV-2080) - #1167
fix(cli): open deployed apps in Testing Playground (SERV-2080)#1167burak-fal wants to merge 3 commits into
Conversation
Browser handoff evidenceDesktop, 1440px viewport. Followed the
Companions: web Requests freshness and deployed-app documentation. The app route itself already shipped; these PRs are independently deployable. |
|
CI caught a serialization regression in the initial commit: binding No suppression or new test was needed. The existing serialization guard plus the deploy suite now pass together: 147 passed on Python 3.11. Ruff format/lint also pass. The CI matrix is rerunning on the corrected head. Separately investigating integration/E2E runner timeout failures against the existing main baseline; those suites also fail on main at b507051. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit b7bd538. Configure here.
CI result on 877f0c1The full unit matrix and full integration matrix pass. Pre-commit, container, docs, CodeQL, Socket checks, and the latest Cursor review pass. Both AI findings about reserved app names were answered and resolved. E2E remains red after rerun. The Python 3.14 job has one failure: This exact runner-exec error also occurs on untouched main at the same base commit, b507051, in today's scheduled run. Main additionally has rollout/time-out failures. No E2E assertions were suppressed and no runner-exec/backend behavior was changed to turn this navigation PR green. Local deploy plus serialization coverage passes all 148 tests. The remaining CI blocker is the existing E2E runner path, not the deploy-link fixes. |
|
I'm thinking now that health / cancel/ object_info may still be useful in playground as users set up their apps. we can sort those until the end because after the app works, they may not come back to them |


Part of SERV-2080.
Problem
After deploying an app, CLI Playground links still leave the app dashboard and include utility routes such as
/health, even though the app's Testing tab excludes them.Change
Change only the pretty
fal deploypresentation. Derive the owning app and web origin from each authoritative server-provided model URL and print/dashboard/apps/<owner>/<app>/testing/playground?endpoint=<encoded endpoint>.Compatibility
No changes to
DeploymentResult.urls, JSON deploy output, sync/async API URLs, log URLs, auth, billing, team/environment selection, orfal run/ephemeral result handlers. Existing standalone URLs remain usable.Verification
projects/fal/.venv/bin/python -m pytest projects/fal/tests/unit/cli/test_deploy.py projects/fal/tests/unit/test_serialization.py -qfrom the repository root: 148 passed./divide, and/streamprinted in-app URLs; no health Playground URL was printed. API URLs were preserved.prompt/word_delay_msform.The app-side route is already live from web-app#6961. This PR does not depend on a new backend deployment.
Note
Low Risk
Presentation-only change to pretty deploy Playground links; deployment APIs and URL payloads are untouched.
Overview
Pretty
fal deployoutput now prints in-app Testing Playground links instead of raw/models/...playground URLs.For each server-provided playground URL,
_deployed_app_playground_urlbuilds/dashboard/apps/<owner>/<app>/testing/playground?endpoint=<encoded path>, keeping the same host and encoding nested routes (including env aliases likeimage-app--staging). Health, cancel, and object_info routes are omitted from the printed list so they match what the Testing tab supports.Sync/async API URLs, JSON deploy output, and
DeploymentResult.urlsare unchanged—only the human-readable Playground section is transformed. A parametrized unit test locks in the expected URLs for testable vs utility routes.Reviewed by Cursor Bugbot for commit 877f0c1. Bugbot is set up for automated code reviews on this repo. Configure here.
CI caveat
Unit and integration matrices pass. E2E runner-exec failures persist after rerun and reproduce on untouched main. Exact failure and baseline evidence.