Fix #124: clone menu protocol honesty + artifact removal #131

Merged
crueber merged 1 commit from fix/issue-124 into main 2026-09-05 08:17:03 +00:00
Owner

Pill and command text disagreed (hardcoded HTTPS pill vs verbatim http clone_url) plus a leftover pre-#37 git block duplicated the command.

Decision (docs/go/12_web_ui.md): honest rule (a) — show the server-advertised URL verbatim and derive the pill label from its scheme (new lib/clone.js httpProtoLabel). Upgrading http->https for display was rejected: the client cannot tell TLS-proxy http from plain-http, and the upgrade breaks the latter. Verified live against hub.packden.us (advertises http, http clone works) and a scratch server (real git clone of the displayed command succeeds).

Browser (CDP Chromium, real server): HTTP pill + http text, SSH toggle -> ssh:// URL, toggle back restores, no dead block, dark + light screenshots, zero console errors. node --test: 295/295 green. No new deps. Follow-up noted in doc: baseURL could honor X-Forwarded-Proto so proxied servers advertise https.

Pill and command text disagreed (hardcoded HTTPS pill vs verbatim http clone_url) plus a leftover pre-#37 git block duplicated the command. Decision (docs/go/12_web_ui.md): honest rule (a) — show the server-advertised URL verbatim and derive the pill label from its scheme (new lib/clone.js httpProtoLabel). Upgrading http->https for display was rejected: the client cannot tell TLS-proxy http from plain-http, and the upgrade breaks the latter. Verified live against hub.packden.us (advertises http, http clone works) and a scratch server (real git clone of the displayed command succeeds). Browser (CDP Chromium, real server): HTTP pill + http text, SSH toggle -> ssh:// URL, toggle back restores, no dead block, dark + light screenshots, zero console errors. node --test: 295/295 green. No new deps. Follow-up noted in doc: baseURL could honor X-Forwarded-Proto so proxied servers advertise https.
- Pill label derives from the advertised clone_url scheme (HTTP vs HTTPS)
  so pill and text always agree; URL shown verbatim so it always works.
  http->https upgrade rejected: plain-http servers have no TLS.
- Delete leftover pre-#37 'git' recipe block duplicating the textbox.
- Headless cover: httpProtoLabel scheme-agreement cases in clone.test.js.
Sign in to join this conversation.
No description provided.