Skip to content

Hosted sharing still fails: default signaling server wss://y-webrtc-eu.fly.dev is offline #7

Description

@lsegal

Sharing on https://write.subscript.to still can't connect peers after #3, because the signaling server it uses is offline.

Details

  • app/src/lib/config.ts defaults signalingUrl to wss://y-webrtc-eu.fly.dev, and the hosted page's <subscript-write> element sets no signaling-url, so production uses that default.
  • wss://y-webrtc-eu.fly.dev no longer responds. The hostname resolves, but HTTPS and WebSocket connections time out (checked 2026-10-03), so browsers opening a Share Draft link never find each other.
  • app/.env.example and signaling/README.md ("Write works out of the box without deploying anything") still describe that relay as a working default.
  • With a reachable signaling server (this repo's signaling/ worker under wrangler dev), two browsers connect and sync edits both ways, as verified in Fix typed text never reaching shared drafts #3.

Acceptance criteria

  • Write's default signaling URL, or the hosted embed's signaling-url, points at a reachable signaling server, for example a deployed signaling/ worker (pnpm deploy:signaling).
  • config.ts, app/.env.example, signaling/README.md, and the root README no longer reference wss://y-webrtc-eu.fly.dev as a working default.
  • Two browsers opening the same Share Draft link on write.subscript.to show "2 in room" and sync edits both ways.

Addresses #1 and #3

Activity

  1. self-assigned this
    on Oct 3, 2026
  2. lsegal commented on Oct 3, 2026

    @lsegal
    ContributorAuthor

    Starting work on this issue /glorp:45E62B60

  3. lsegal commented on Oct 3, 2026

    @lsegal
    ContributorAuthor

    No fix implemented yet: this issue needs a production signaling server deployed first, and that's an infrastructure choice an agent shouldn't make on its own.

    What I checked (2026-10-03)

    • wss://y-webrtc-eu.fly.dev still doesn't respond. The hosted bundle (/assets/subscript-write-15323ff1.js) still has it baked in as the only signaling URL, so the hosted page doesn't override it.
    • None of the other public y-webrtc relays work either: signaling.yjs.dev doesn't resolve, and the two y-webrtc-signaling-{eu,us}.herokuapp.com relays return 404. Switching to another third-party relay isn't an option.
    • subscript-write-signaling isn't deployed on the Cloudflare account this agent can reach (Loren's personal account, 1815342e…). The subscript-write app worker isn't there either, so write.subscript.to is served from somewhere else.

    Why I stopped
    To meet the acceptance criteria, the default signalingUrl has to point at a real deployed endpoint. Deploying signaling/ to an account that doesn't host write.subscript.to, then hard-coding that *.workers.dev URL as every user's default, would be a long-lived production decision. A person needs to make that call. I opened no PR and changed nothing in the repo.

    Manual verification
    CI can't cover these steps:

    • Deploy the signaling worker to the Cloudflare account that serves write.subscript.to: pnpm deploy:signaling, optionally adding a custom domain such as signal.subscript.to.
    • Check that https://<deployed-host>/ returns "Subscript Write signaling worker is running".
    • Comment the final wss:// URL here (@/glorp:45E62B60 works).

    Once that URL is posted, a rerun can make it the default in config.ts, app/.env.example, signaling/README.md and the root README, and remove every reference to wss://y-webrtc-eu.fly.dev. Someone then still needs to confirm that two browsers on the same Share Draft link on write.subscript.to show "2 in room" and sync edits both ways.

  4. lsegal commented on Oct 3, 2026

    @lsegal
    ContributorAuthor

    @/glorp:45E62B60 find another public signaling server

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions