docs(web): from https the address must be wss://, and the server does not speak it

The page and the README told the reader that a ws:// address is blocked from
an https origin, and then gave them a ws:// address. improvise-ws-server has
no TLS at all -- no rustls, no native-tls, nothing -- so wss:// is not
obtainable from it and the documented pairing could not work from the
deployed site.

Both now say the address must be wss:// from the deployed page, that the
server speaks plain ws:// only so TLS has to be terminated in front of it,
and that the ws:// form works when the page is served over http://localhost.
The missing capability is filed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EoW5BB87ZZdm96SvBTWawH
This commit is contained in:
Edward Langley
2026-09-19 20:54:04 -07:00
parent b7dcde56d5
commit 4e1a79fe5f
3 changed files with 19 additions and 7 deletions
+9 -3
View File
@@ -29,7 +29,8 @@
?doc= and ?seed= name the document and the file it is first seeded from.
To talk to a separate `improvise-ws-server` process instead — which is
how a document open in the TUI is shared — pass ?ws=ws://host:port.
how a document open in the TUI is shared — pass ?ws=wss://host:port
(or ws:// when this page is served over http://localhost).
-->
<header>
<h1>improvise</h1>
@@ -59,8 +60,13 @@
<code>?seed=url</code>. To open a document hosted by a separate
process instead, run
<code>improvise-ws-server model.improv --port 8787</code> and reload
with <code>?ws=ws://127.0.0.1:8787</code> — note that from an https
origin a <code>ws://</code> address is blocked as mixed content.
with <code>?ws=wss://host:port</code>. From this https page the
address must be <code>wss://</code> — a <code>ws://</code> one is
blocked as mixed content — and
<code>improvise-ws-server</code> speaks plain <code>ws://</code> only,
so it needs TLS terminated in front of it. Served over
<code>http://localhost</code> the same page takes
<code>?ws=ws://127.0.0.1:8787</code> directly.
</p>
<main>