Skip to content

AitherADK v2.44.0

Choose a tag to compare

@wizzense wizzense released this 27 Jul 15:58

Fixed — adk enroll silently registered devices into the WRONG TENANT

adk enroll succeeded without an identity and bound the device to the tenant "personal" instead of the caller's workspace.

_extract_tenant_slug() falls back to "personal" when ~/.aither/auth.json is absent, so enrolling a fresh machine reported success while registering it somewhere the owner cannot see. Nothing failed, nothing warned — the endpoint simply never appeared in their workspace.

It bites hardest on unattended installs — phones, headless VMs, cloud images — exactly the machines nobody watches closely enough to notice.

The fix

cmd_enroll now refuses when no identity is present, and names both ways to supply one:

adk login                     # browser flow
adk login --api-key <key>     # headless / phone / VM

AITHER_NODE_TOKEN still counts as an identity, so token-based fleet enrolment is unaffected.

Verified

  • Run with an empty HOME: refuses, exit 1
  • 381 tests pass, 5 skipped; ruff clean
  • Published sdist checked by hand: adk/cli.py:3665 contains the guard

Found while building a one-command self-host installer for Android's Linux terminal — by running the installer rather than reasoning about it.