Rename Installation to Instance

Follows the portal: the noun is "instance" everywhere the app says it —
UI strings, CLI output, error details, docs and comments. The wire keys
(`instance_id`, `instance_token`) and the hub route this calls move with it.

An existing cloud.json is adopted rather than refused: without the key
alias the dataclass fails to parse, which the caller swallows and reads as
"never enrolled" instead of "reconnect".

`instance_key` on a node type becomes `target_key`. It means the outside
thing a node points at, which is a different sense of the word, and keeping
both would put two meanings of "instance" in one codebase.
This commit is contained in:
2026-08-31 10:12:01 +02:00
parent 271d4513eb
commit 6c8a101d24
101 changed files with 374 additions and 375 deletions
+1 -1
View File
@@ -97,7 +97,7 @@ function showSetting(value: unknown): string {
/**
* The one channel whose setting is on the device rather than in the config:
* a browser has to ask its own permission, and what it hands back is stored
* against this installation.
* against this instance.
*/
function ThisBrowser() {
const { showSuccessToast, showErrorToast } = useCustomToast()
+1 -1
View File
@@ -33,7 +33,7 @@ const HEADER =
* it has been doing. The brain and the health screens compose in here rather
* than living at routes of their own.
*
* Top to bottom it is a widening lens: the whole installation as a graph, what
* Top to bottom it is a widening lens: the whole instance as a graph, what
* has been built on it, whether it is well, then flow by flow and finally
* moment by moment.
*/
+1 -1
View File
@@ -50,7 +50,7 @@ function UserSettings() {
<motion.div variants={slideUp}>
<Appearance />
</motion.div>
{/* Whether this whole installation can be reached from outside is not
{/* Whether this whole instance can be reached from outside is not
a personal preference, so it only exists for an operator. */}
{currentUser.is_superuser && (
<motion.div variants={slideUp}>