Skip to content

Ship a built-in default remote for the central server (LLP 0062)#233

Open
platypii wants to merge 1 commit into
masterfrom
builtin-default-remote
Open

Ship a built-in default remote for the central server (LLP 0062)#233
platypii wants to merge 1 commit into
masterfrom
builtin-default-remote

Conversation

@platypii

@platypii platypii commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary

Reaching the Hyparam-hosted central server took a hyp remote add <url> on every machine, and query.default_remote was validated but never consumed. This ships the central server as a built-in target and wires the default so users never type the URL or a target name.

  • Built-in target: the client ships hyparam → https://hypaware.hyperparam.app, layered under the user's query.remotes so a same-named entry repoints or shadows it. The URL is non-secret and committable, exactly as a hyp remote add URL (LLP 0033 §targets).
  • Bare --remote: --remote is now optionally-valued. Bare --remote resolves the default target (explicit query.default_remote, else the built-in); named --remote <name> is unchanged. Local-first stays intact: plain hyp <verb> still runs locally.
  • Bare hyp remote login: with no positional target, resolves the same default (companion of bare --remote).
  • Validation: query.default_remote may name a built-in, so a config can default to the central server without restating its URL.

New user flow: hyp remote login, then hyp <verb> --remote.

Design

Recorded as LLP 0062 (Decision), extending LLP 0033 §targets (which already anticipated bare --remote in its schema comment). LLP 0033 gets an Extended-by forward-ref.

Tests

  • New: bare --remote parses to the default sentinel (verb-codec); bare --remote routes to the built-in central URL (verb-remote); bare remote login resolves the default target (remote-login-command).
  • Full suite green (1805 passing, 1 skipped); npm run typecheck clean.

Note

End users get this once it ships in a released hypaware package; the deployed server is unaffected.

Reaching the Hyparam-hosted central server took a `hyp remote add <url>` on
every machine, and `query.default_remote` was validated but never consumed.

- Ship a built-in `hyparam` target (https://hypaware.hyperparam.app), layered
  under the user's `query.remotes` so a same-named entry overrides it.
- Make `--remote` optionally-valued: bare `--remote` resolves the default
  target (explicit `default_remote`, else the built-in); named `--remote <n>`
  is unchanged. Local-first stays: plain `hyp <verb>` still runs locally.
- `hyp remote login` with no target resolves the same default.
- Accept a built-in name for `query.default_remote` validation.
- Record the design as LLP 0062, extending LLP 0033.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant