callstack / callstack/agent-device
Add remote proxy lease backend for HarmonyOS (harmonyos-instance)
- Lingua principale
- TypeScript
- Stelle
- 4.6k
- Fork
- 299
- Merge medio
- 10h 23m
- PR unite (30g)
- 535
Descrizione
## Problem
The 0.20.10 proxy inventory lists booted HarmonyOS devices, and the local host provider supports `open --platform harmonyos`, but remote proxy lease admission rejects HarmonyOS because `LeaseBackend` only contains `ios-simulator`, `ios-instance`, and `android-instance`.
Observed from a Linux client connected to a Mac proxy:
- `devices --platform harmonyos` lists a booted `emulator`.
- `open ... --platform harmonyos --device emulator` fails before allocation with `open requires --platform ios|android or --lease-backend`.
- The local Mac (non-proxy) can open the same Harmony emulator and exposes snapshot/click/type/logs/screenshot.
## Proposal
Add a first-class `harmonyos-instance` lease backend end-to-end: contracts/type, platform-to-backend mapping, proxy lease allocate/heartbeat/close, session runtime hints, and tests proving device selection and lease lifecycle. Preserve fail-closed behavior for unsupported providers; do not merely widen a client enum.
Acceptance should include remote proxy inventory -> open -> snapshot/input/logs -> close, with lease identity and artifact provenance. Physical OHOS remains out of scope; emulator/proxy only.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia dal contratto LeaseBackend e traccia i percorsi esistenti di ios-instance e android-instance attraverso la mappatura della piattaforma, l’allocazione del proxy, l’heartbeat, la chiusura e gli hint di runtime della sessione. Aggiungi la copertura per la selezione degli emulatori HarmonyOS e per l’intero flusso remoto inventory-to-open-to-snapshot/input/logs-to-close, includendo l’identità del lease e la provenienza degli artefatti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- backend-api-design, mobile
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 52/100