Skip to content

Runtime & Version Resolution

EmbrAIon separates the global launcher version from the framework version pinned by each project.

One launcher, multiple project pins

A project records its exact framework release in:

.embraion/project.yaml
framework:
  repository: GORYNED/EmbrAIon
  version: <published-version>

Ordinary commands locate the nearest project and resolve its pin:

Runtime and version resolution

If the pin differs from the launcher version, EmbrAIon can install the exact published distribution into an isolated cache:

~/.embraion/versions/<version>/

Different repositories can therefore remain on different EmbrAIon releases on the same machine.

Inspect resolution

embraion status
embraion status --json

The status report shows the launcher, project pin, resolved runtime, cache state, and detected host projections.

Cache management

embraion cache list

Dry-run pruning:

embraion cache prune --older-than 90

Apply intentionally:

embraion cache prune --older-than 90 --apply

The active launcher and current project's resolved runtime are protected from age-based pruning.

Updating a project

The safe sequence is:

pipx upgrade embraion
cd MyProject
embraion update
embraion doctor

embraion update is launcher-owned. Safe configuration normalization targets the installed launcher version only so the current runtime does not guess the schema/defaults of another release.

It may add compatible missing defaults and update the project pin while preserving project-owned values. It validates all candidate canonical .embraion/ files before writing any of them.

It does not silently refresh host projections.

Moving to a different specific release

Install that launcher version first, then run embraion update from the project. This keeps configuration normalization owned by the same release contract that will be written.

Development override

EMBRAION_HOME selects an explicit framework checkout for framework development. Automatic version resolution can also be disabled intentionally with EMBRAION_DISABLE_VERSION_RESOLUTION=1.