From an error message to the rule
01vibe's error messages name the rule they enforce. This page lists the messages you are likely to meet, what each means, and the shortest way out, in the order they tend to appear.
Installing
04
| Message |
What it means |
Way out |
Rule |
package … is already installed at version … — use vibe update instead |
the coordinate is already in the lock file with the same content |
vibe update <coordinate> to move it, vibe list to look |
PROP-011#UPDATE-MOVES-LOCK |
content drift on …: lockfile pins sha256:… but the source served sha256:… |
the bytes served differ from the bytes the lock file remembered: a re-tagged version, a broken mirror or an override |
find out which; re-pin by uninstall and install, drop the mirror, or record the override; never edit the lock file |
PROP-002#EFF-FORCE-PUSH-CAUGHT |
malformed <vibevm> block in … |
an instruction file has two markers of a kind, an opener without a closer, or a closer first |
repair the file so exactly one ordered pair remains; vibe check finds it before the next install |
PROP-012#CLASS-MALFORMED |
the materialised vibedeps/ tree is incomplete — … slot(s) missing |
a package the lock file pins has no folder on disk and the regeneration mode cannot conjure it |
vibe reinstall --force to fetch it again |
PROP-009#REINSTALL-FORCE |
package declares a [boot_snippet].source … that does not exist in the package |
the package's manifest points at a snippet file it does not ship |
report it to the package's author; pin an earlier version meanwhile |
PROP-009#SCHEMA-BOOT-SNIPPET |
user declined the install plan |
you answered no; nothing was written |
nothing to fix |
PROP-009#PLAN-UNIT |
package … is not installed |
vibe uninstall named a coordinate the lock file does not hold |
vibe list; check the spelling |
— |
Resolving
05
| Message |
What it means |
Way out |
Rule |
package … is not in the registry |
every configured registry answered that it has no such package |
check the coordinate and the registries; vibe search to find it |
PROP-002#REGISTRY-WALK-ORDER |
no version of … matches … |
the package exists but no published version satisfies the constraint |
widen the constraint or ask for a version that exists |
PROP-000#CF-RANGE |
package A needs C ^1 but B needs C ^2 … |
two constraints on one package cannot both hold |
the fix ladder on the questions page: widen, update, override, fork |
PROP-002#OVERRIDE-SHORT-CIRCUIT |
no registry configured … |
the manifest has no [[registry]] and no --registry was passed |
vibe registry add, or seed from ~/.vibe/registry.toml |
PROP-010#INIT-SEEDS |
| an offline error naming a missing coordinate |
--offline was set and the store does not hold the package |
go online once, or vibe cache add it from a machine that is |
PROP-010#OFFLINE-HARD-ERROR |
Fetching
06
| Message |
What it means |
Way out |
Rule |
the git executable is not available on PATH |
vibe shells out to the system git for every fetch and found none |
install git and open a new terminal |
PROP-001#root |
remote repository … not found (does it exist? is access granted?) |
the repository address is wrong or your credentials lack read access |
check the registry's address and its authentication regime |
PROP-002#AUTH-REGIMES |
ssh authentication failed for … |
the host answered but rejected your key |
load the key into your agent; check the registry's auth |
PROP-002#ROW-AUTH-SSH |
unable to reach … (network or DNS error) |
no route to the host |
check the network, or work from the store with --offline |
PROP-010#OFFLINE-FLAG |
branch / ref … not found on … |
the git source names a tag, branch or commit the repository does not have |
fix the reference in the manifest |
PROP-002#ROW-GS-TAG-MEANING |
| a mirror served different bytes |
the mirror is out of date or tampered with |
remove the mirror; the canonical registry is tried next |
PROP-002#MIRROR-INTEGRITY-MANDATORY |
Publishing
07
| Message |
What it means |
Way out |
Rule |
publish refused: no token available for host … |
no publish token in the environment or under ~/.vibe/ |
place the token where the settings page says; never in the repository |
PROP-000#token-secrecy |
publish refused: token lacks repo:create permission … |
the token cannot create repositories in the organisation |
a token with the right scope, or --repo-url to an existing repository |
PROP-002#SHAPE-OWN-REPO |
publish refused: tag … already exists on … |
the version was published before |
bump the version; published versions never move |
PROP-002#IDENTITY-CONSEQUENCE |
publish refused: source directory … does not look like a vibevm package |
the folder has no manifest with a [package] table |
publish the package's root, or add the table |
PROP-007#PACKAGE-XOR-PROJECT |
publish refused: organization … does not exist on … or no push access |
the registry's organisation or your rights on it |
check the registry address and the token's owner |
PROP-002#REG-FIELD-URL |
Running the lifecycle
08
| Message |
What it means |
Way out |
Rule |
a contribution reported fail and the chain stopped |
one step of a phase failed; the phases before it kept their results |
read the contribution's id and output in the run's narration; vibe extensions shows where it came from |
PROP-054#FAILURE-BY-PHASE |
| a parked agent task |
a step needs an agent and vibe runs under one; the task waits in the outbox |
the hosting agent performs it and re-runs the same command |
PROP-054#AGENT-HANDSHAKE |
undeploy refused a path |
a file a receipt owns changed after deployment |
decide by hand; vibe will not delete edited work |
PROP-054#R8-DEPLOY-RUNTIME |
clean refused to run |
no project at or above the current folder |
run it inside a project |
PROP-053#CLEAN-NEEDS-A-PROJECT |
When the message is not vibe's
09A message you do not find here is probably from a layer below: usually git. Run the command again with VIBE_LOG=vibe_registry=debug,vibe_publish=debug to see the underlying command line and its output. And when a message cites an address, the rule is one vibe explain away.
10
PROP-001: Git-backed registry for vibe-registry