Push, versions and deliveries
Messages below show representative example values (paths, targets, names); the real message carries yours.
ATC-E0411
invalid version label "bad label": leading dot
- exit code:
3 - fix:
atc ota push --version <label> # A-Z a-z 0-9 . _ -, 1-64 chars, no leading dot
ATC-E0418
--capture-hooks is not supported with --json (the single-document JSON surface streams no per-hook events); use --progress=json for a streamed JSON surface with hook capture, or drop --json
- exit code:
3 - fix:
atc ota push --progress=json
ATC-E0422
device busy: another push session holds the artifact lock (finalizing or awaiting reap); retry shortly. locked by push-1
- exit code:
2
ATC-E0425
no committed delivery matches delivery ID prefix "01J3ABCDEF45"
- exit code:
3 - fix:
atc ota ls <target>
ATC-E0426
delivery ID prefix "01J3ABCDEF45" is ambiguous; candidates: ["01J3ABCDEF45A", "01J3ABCDEF45B"]
- exit code:
3 - fix:
atc ota rm <target> --sha <longer-delivery-id-prefix>
ATC-E0427
atcd is incompatible with delivery-ID removal: requested "01J3ABCDEF45", echoed ""; upgrade atcd or use channel + version-label removal
- exit code:
4 - fix:
upgrade atcd, or run: atc ota rm <target> <channel> <version-label>
ATC-E0441
multi-artifact attestation: positional <artifact> required
livox-fw
- exit code:
2 - fix:
atc ota attest <target> <peripheral> <artifact>
ATC-E0451
the delivery switch is still in progress on the device; the client stopped waiting. Verify the result with `atc ota ls`.
- exit code:
2 - fix:
atc ota ls <target>
ATC-E0452
delivery removal refused: it is the channel's active delivery; pass --force to roll back first
- exit code:
3
ATC-E0454
switch refused: daemon rejected activate delivery: version "v1" matches 2 deliveries
- exit code:
3 - fix:
atc ota ls <target>
ATC-E0455
atcd is too old for the whole-delivery switch (it did not recognize the request); `atc bootstrap atcd upgrade <target>` upgrades it
- exit code:
4 - fix:
atc bootstrap atcd upgrade <target>
ATC-E0460
atc and atcd are incompatible: controller v0.9.0 cannot talk to daemon v1.2.0: unsupported proto_version 1 (supported 2..=2); upgrade the controller (atc) to match this daemon. Fix with `atc upgrade`
- exit code:
3 - fix:
atc upgrade
ATC-E0463
local test mode: no atcd binary found. `--local` runs a real atcd against a local store root, so it needs one. Run `atc bootstrap atcd fetch` to download the atcd for this machine. Or put atcd next to this atc binary, put it on PATH, or name it with ATC_LOCAL_ATCD
- exit code:
3
ATC-E0465
boot recovery holds this artifact and nothing running on the device will release it, so the push cannot start. If the reject says pending peripheral recovery, run `atc ota recover <target>`: it reports what each push owes and settles what it can. Add `--accept-unknown-state` to clear a hold no payer will settle. If the reject says owed reactivation, restart atcd to run recovery again. dependency rootfs is held by push p-boot pending peripheral recovery; peripherals: arm-a
- exit code:
3 - fix:
atc ota recover <target>
ATC-E0466
downloaded the atcd for 'linux-x86_64-musl' but could not write it anywhere
- exit code:
3 - fix:
export ATC_LOCAL_ATCD=<path/to/atcd> # or re-run the fetch on another channel: atc bootstrap atcd fetch --track <track>
ATC-E0467
--summary-lines conflicts with --progress=json (both write to stdout, and the summary surface carries no event dispatcher); keep --progress=json for the streamed events, or drop it for the one-line-per-artifact summary
- exit code:
3
ATC-E0469
push refused: bundle tools: bin/jq needs glibc 2.39, and the robot runs 2.31.
It cannot start there: the loader has no GLIBC_2.39 to bind.
Build it against the robot's glibc, build it static, or pass --allow-glibc-skew.
- exit code:
3
ATC-E0476
the daemon refused the rm request: control_mode server_only: this device accepts changes only from its server. To allow direct control, run `atcd settings set server.control_mode=direct_allowed` on the device as the atcd user. Then restart atcd.
- exit code:
3 - fix:
follow the daemon's reason in the error message