Android leases over HTTP give no adb serial: udid is the AVD name
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 78/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- android, typescript
Direzione di ricerca
Leggi src/http/tracker.ts intorno alla riga 71 e lo schema del dispositivo in src/contract/schemas.ts intorno alle righe 211 e 272; confronta la risposta del lease con l’output device.address della CLI. Controlla i campi del driver Android intorno alle righe 918 e 948 per confermare l’origine del numero seriale. Il lavoro è terminato quando l’oggetto lease HTTP espone l’indirizzo del dispositivo, incluso il numero seriale adb su Android, e il contratto della risposta lo riporta.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What happened
A lease granted over the HTTP API gives no way to reach an Android emulator with adb. The lease object's udid is the device's driver id (device.driverDeviceId, src/http/tracker.ts:71). For an Android emulator that is the AVD name (simlock_<uuid>), not the adb serial (emulator-5554) that adb -s needs. No HTTP response carries the serial: the lease object has no address field, although the contract's device record has one (src/contract/schemas.ts:211,272) and the CLI's lease line includes device.address.
So a remote agent that leases an Android device over HTTP cannot run adb -s <serial> … through POST /v1/leases/{id}/exec without first running adb devices and then adb -s <serial> emu avd name on each serial to find its own. iOS is not affected, because a simulator's driver id and its address are both the UDID.
What you expected
The HTTP lease object names the address to point tools at (the adb serial on Android, the UDID on iOS), the same value the CLI prints as device.address.
How to reproduce
- On a worker with Android set up and HTTP on, create an agent token:
simlock token create --role agent. curl -X POST http://127.0.0.1:4701/v1/lease-requests -H "Authorization: Bearer <secret>" -H 'Content-Type: application/json' -d '{"platform":"android","model":"Pixel 8"}', then wait until the request isgranted.- Look at the lease object:
udidissimlock_…, and no field holdsemulator-5554. - Compare
simlock lease --platform android --device "Pixel 8" --detach, whosedevice.addressis the serial.
Environment
main at 4cc44f82. Found while writing the website's "Remote agents over HTTP" page (PR #816), which documents the adb devices workaround.
Logs and evidence
src/http/tracker.ts:71:udid: device.driverDeviceIdsrc/drivers/android/index.ts:948: a running emulator'saddressisrunning.serial;:918: itsdeviceIdis the AVD name.
Written by an agent.
- Lingua principale
- TypeScript
- Stelle
- 20
- Fork
- 2
- Merge medio
- 8h
- PR unite (30g)
- 316
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di callstackincubator/simlock
-
bug:triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
callstackincubator/simlock#778 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
callstackincubator/simlock#639 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
task:draft
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
callstackincubator/simlock#839 ·
I maintainer di solito rispondono entro 1 giorno
-
A gateway updates a chosen worker, incompatible ones included, and routes around it meanwhileApertatask:ready
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
callstackincubator/simlock#838 ·
I maintainer di solito rispondono entro 1 giorno
-
Every daemon knows the latest Simlock version, and simlock status says when a newer one existsApertatask:ready
Difficoltà 4/5 3-5 giorni Idoneità per principianti 57/100
callstackincubator/simlock#837 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di callstackincubator/simlock
Issue simili
-
agent/scanner help wanted hive/claimed-by-scanner kind/bug stage/020-claimed
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
hivecommons/rationguard#315 ·
I maintainer di solito rispondono entro 1 giorno
-
agent-ready area: ui-sdk priority: p3 type: chore
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
schlessera/brain-kit#2534 ·
I maintainer di solito rispondono entro 1 giorno
-
bug lane:gh-5
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
LLM-4-People/bridlewise-testing#122 ·
I maintainer di solito rispondono entro 1 giorno
-
bug priority: P2
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement priority:low ready-for-dev
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
I maintainer di solito rispondono entro 1 giorno