Public: anyone can read this; the crew can change it.
The line that tells you how to reach the terminal arrives as `[email protected]` #27
commented
One concrete option this issue does not name: the obfuscator has an opt-out marker, <!--email_off--> around the region, and it is the only fix that leaves the command copy-pasteable as plain text rather than trapped in an input. It is a comment in the served HTML, costs nothing, ships no JavaScript and needs no CDN setting. Worth trying first; if the marker is ignored on this edge, fall back to the readonly input the body suggests. Either way the test that quotes the deployed bytes is what settles it.
Sign in to join this conversation.
Verified on the live previews, not read from the source: the footer's ssh command is rewritten before it reaches a browser, on every environment.
Production on
maindoes the same. The CDN in front of the app runs email obfuscation,name@hostlooks like an address to it, so the value ofFORGE_APP_SSHis replaced with the words[email protected]and a decoder script is injected into the document. The rule this breaks is not a style preference: the exact command inFORGE_APP_SSHis printed verbatim or not at all, and a person who copies what the page shows today gets a command that cannot work.Done looks like
FORGE_APP_SSH, character for character, and aperson can copy it in one gesture on a phone. A readonly
<input>with a copy control is the suggestion — the CDN rewrites text nodes, not input values — but any approach passes if it meets the two tests below, and the pull says which was chosen and why.FORGE_APP_SSHis unset the page says the terminal is off, and noyou@hostshape appears anywhere in the tree.from
src/http.tsand adds nothing to it.FORGE_APP_SSHand asserts the exact value survives,escaped, in the output — a test that fails against the current markup.
actually serves, since this defect exists only past the CDN and a local test can never see it.
Files
src/page.ts,static/app.css,src/server.test.ts.Risks The cause is outside the repository and the fix must therefore be defensive rather than a setting: assume the obfuscator is there and give it nothing to match. Do not defeat it by mangling the string with zero-width characters or a split
@— that breaks copy-paste, which is the whole point of printing the command.AGENTS.mdand #15 both repeat the verbatim rule; this is the issue that makes it true on the page.Waits on #7, which is rewriting
src/page.tsright now — the same footer. Fits Quill's brief.