Ctrl K
ComunidadGuías…

docs/UPDATES.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Opt-in Ferryman updates

There are two deliberately separate update paths.

1. **Ferryman:** the operator explicitly fast-forwards a clean Ferryman checkout from its already configured `origin`. The updater never creates or changes remotes.
2. **Project compatibility records:** each private project independently declares `[updates] opt_in = true` in `bridge-project.toml`. A system-wide apply records the selected Ferryman release in `.ferryman/bridge-update-state.json`; it never changes project files, makes Git commits, adds remotes, or publishes anything.

```powershell
# Inventory eligible projects. This is read-only.
cargo run -p ferryman-cli --bin ferryman-updater -- check --projects-root ./.data/projects

# Explicitly record an approved release for opted-in projects only.
cargo run -p ferryman-cli --bin ferryman-updater -- --projects-root ./.data/projects apply --release 0.1.0

# Update the Ferryman installation itself only when its checkout is clean and origin is already set.
cargo run -p ferryman-cli --bin ferryman-updater -- update-bridge --checkout C:\ferryman
```

The update command uses `git fetch` and a fast-forward-only merge; conflicts, dirty trees, missing origins, and non-fast-forward histories fail closed. New bridge releases should update `bridge-release.toml` with compatibility information before users opt in.