gateway: fix global Control UI 404s for symlinked wrappers and bundled package roots#40385
Merged
velvet-shark merged 2 commits intomainfrom Mar 9, 2026
Merged
gateway: fix global Control UI 404s for symlinked wrappers and bundled package roots#40385velvet-shark merged 2 commits intomainfrom
velvet-shark merged 2 commits intomainfrom
Conversation
Contributor
Greptile SummaryThis PR fixes Control UI Key changes:
Confidence Score: 5/5
Last reviewed commit: d025bea |
d025bea to
567b3ed
Compare
This was referenced Mar 9, 2026
Member
Author
|
Merged via squash.
Thanks @velvet-shark! |
This was referenced Mar 9, 2026
Closed
GordonSH-oss
pushed a commit
to GordonSH-oss/openclaw
that referenced
this pull request
Mar 9, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
vincentkoc
pushed a commit
that referenced
this pull request
Mar 9, 2026
…d package roots (#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
jenawant
pushed a commit
to jenawant/openclaw
that referenced
this pull request
Mar 10, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
sauerdaniel
pushed a commit
to sauerdaniel/openclaw
that referenced
this pull request
Mar 11, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
Moshiii
pushed a commit
to Moshiii/openclaw
that referenced
this pull request
Mar 11, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
Moshiii
pushed a commit
to Moshiii/openclaw
that referenced
this pull request
Mar 11, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
dhoman
pushed a commit
to dhoman/chrono-claw
that referenced
this pull request
Mar 11, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
Taskle
pushed a commit
to Taskle/openclaw
that referenced
this pull request
Mar 14, 2026
…d package roots (openclaw#40385) Merged via squash. Prepared head SHA: 567b3ed Co-authored-by: velvet-shark <[email protected]> Co-authored-by: velvet-shark <[email protected]> Reviewed-by: @velvet-shark
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
404 Not Foundfor global installs whenargv1points at a symlinked wrapper or when auto-detected package-store layouts expose bundled files through hardlinks.GET /, while the previous package-root heuristic also widened the file-read boundary for configured roots.bundled, and allow hardlinks only for those bundled roots.gateway.controlUi.rootoverrides still stay on the strict hardlink boundary and continue to reject hardlinked assets.Change Type (select all)
Scope (select all touched areas)
Linked Issue/PR
User-visible / Behavior Changes
gateway.controlUi.rootoverrides remain strict and still reject hardlinked assets.Security Impact (required)
No)No)No)No)No)Yes, explain risk + mitigation:Repro + Verification
Environment
gateway.controlUi.rootfixturesSteps
GET /or a bundled asset.gateway.controlUi.rootfixture that points at a hardlinked package-store Control UI root.Expected
Actual
Evidence
Attach at least one:
Human Verification (required)
What you personally verified (not just CI), and how:
index.html, hardlinked bundled assets, non-package fallback roots, SPA fallback under bundled roots.Review Conversations
Compatibility / Migration
Yes)No)No)Failure Recovery (if this breaks)
src/infra/control-ui-assets.ts,src/gateway/server.impl.ts,src/gateway/control-ui.ts404, or configured custom roots unexpectedly serving hardlinked files.Risks and Mitigations