Reference
Arcane.installation.status()
Gets installation state.
This focused page is derived from the mechanically checked full member inventory.
Syntax
Arcane.installation.status()
Parameters
None
Return value
Promise<status>
Description
Gets installation state.
Overview
Arcane.installation.status() reads the relationship between the active
Provisioner package and the installed Arcane OS state. It requires
installation.read on Core, makes no change, and emits no event. Status is
evidence for deciding what to present; it does not authorize a later mutation.
Result
The exact fields are present, installedVersion, packageVersion, blocked,
blockedReason, repairRequired, repairReason, disposition, action,
installRoot, stateRoot, manifest, installedPayloadMode,
installedIntegrity, installedIdentity, identityRepairRequired,
payloadRepairRequired, developmentTrustRepairRequired,
developmentMachineTrust, candidatePayloadDiffers, and payload.
disposition is "missing", "downgrade-blocked", "repair-required",
"update-available", or "current"; action is "install", "blocked",
"repair", "update", or "current". payload is exactly {mode, releaseReady, installable, description, missingRelease}. The manifest and
integrity/identity evidence are structured host records and may contain local
paths; keep them inside the Provisioner boundary.
Errors and recovery
METHOD_NOT_ALLOWED means the caller lacks installation.read. A blocked,
repair, or invalid-identity state is normally returned as data so the UI can
present the exact next action. If the read itself rejects, preserve its
diagnostic and repair guidance rather than using version comparison alone.
Example
const installation = await Arcane.installation.status();
console.log(installation.disposition, installation.action);
if (installation.blocked || installation.repairRequired) {
console.warn(installation.blockedReason || installation.repairReason);
}