Repository navigation
feat(trellis): choose where previews listen in Settings → Trellis - #23
Conversation
Trellis reports preview_host in /v1/status and changes it without a restart (PUT /v1/settings/previews); Settings shows it and offers this machine, the local network, the tailnet or an address, through a new trellis.setPreviewHost RPC (operate scope). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…a refused address; say what LAN exposure means Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… field never saves Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 29a99f961f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| the workspace is stopped), the preview shows an error rather than loading the host's port. | ||
| **Settings** > **Trellis** > **Previews** sets where those published ports listen: this machine | ||
| only (the default), the local network, the tailnet, or a given address, so other devices can open | ||
| them. Open previews move to the new address at once, under the same ports. |
There was a problem hiding this comment.
Correct the documented behavior of open previews
This tells users that open previews move to the new address automatically, but the implemented flow explicitly leaves an open browser panel on its old URL and instructs the user to reopen it (TrellisSettings.tsx:494-497). After changing the bind address, that old URL can stop responding, so the guide should state that only newly opened or reopened previews use the new address.
AGENTS.md reference: AGENTS.md:L75-L75
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Valid: the guide now says Trellis moves its published ports at once while a preview already open keeps its old address until opened again, matching the toast. Fixed in 8db84c5.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Trellis v1 Stage C, Lane T3 step 3 part 2 (previews): choose where previews listen.
Change
trellis.getDetailsdecodespreview_host{setting, bind, url_host}from/v1/status(Trellis Refresh upstream state after branch checkout and invalidate git queries pingdotgg/t3code#46). It defaults to null from an older Trellis, and then the section is hidden.trellis.setPreviewHost {previewHost}(operate scope) callsPUT /v1/settings/previewswithlan,tailscaleor an IP address. It returns the new host and any previews that could not be bound again.docs/user/trellis.md: one paragraph.Limit
Previews already open in a browser panel keep the URL they resolved to; reopening them uses the new address. Re-resolving open tabs would need preview-panel work beyond this slice.
Checks
/trellis/dev-t3(Trellis 479b13f):peter-the-great.tail583f31.ts.net.lanmade outside T3 showed after a refresh.not-an-ipwas refused, and the row went back to Local network.127.0.0.1was saved and shows as This machine./tmp/stagec-ph/.Trellis.test.tscovers decoding a status withpreview_host, a set with rebind errors, and a refusal.TrellisSettings.logic.test.tscovers mapping between settings and choices.knip:check,vp check,vpr typecheckandrelease-smokepass.t3tests fail only on the knownCodexInstallationandAcpSessionRuntime.processTreefailures. Package tests fail only on the known desktop libsecret and snapshot file-mode failures; client-runtime, relay and mobile pass when run separately.build:desktopfails on the known libsecret helper.🤖 Generated with Claude Code