carlos / platform Public

Restore tells a member to run `carlos add`, a box-local verb they cannot run Issue open

Migrated from github.com/carlosframework/platform issue #327, opened 2026-08-28. GitHub issues are closed for this repo; see AGENTS.md, "Work is tracked on amadan, not GitHub".

Still outstanding: Restore tells a member to run carlos add, a box-local verb they cannot run.

---

POST /apps/<app>/restore replies with:

> <app> is restored with its releases and channels intact, and with NO routes: run carlos add <host> to serve it again.

internal/console/apicli.go:1233.

A member cannot run carlos add. It is a box-local operator verb: cli.go:69 builds its flag set around -registry, defaulting to defaultRegistry() — filepath.Join(dataDir(), "registry.db") at cli.go:54 — alongside -socket, -addr, -backing and -unit. A hosted customer has no box and no registry.db, so following this instruction fails with no obvious next step.

The member-facing verb is carlos instances create, which the CLI already recommends in the equivalent situation — deploy.go:262:

> no instance follows <channel> — promoted, nothing to watch (carlos instances create to add one)

So the platform gives two different answers to the same question depending on which door you came through, and the console's is the one a customer cannot act on.

Found while writing carloku.com/docs: the docs page reproduced the API's own wording faithfully, which is how a wrong instruction propagates from a reply string into customer documentation. The docs sentence is being corrected separately; this issue is the source.

Suggested fix: have restore say carlos instances create, matching deploy.go:262. Worth a sweep for other member-facing strings naming box-local verbs.

🤖 Generated with Claude Code