callstack / callstack/agent-device

Add remote proxy lease backend for HarmonyOS (harmonyos-instance)

Offen
#2,265 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement
Vorherrschende Sprache
TypeScript
Sterne
4.6k
Forks
299
Ø Merge
10 Std. 42 Min.
Gemergte PRs (30 T.)
493

Beschreibung

## 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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne beim LeaseBackend-Vertrag und verfolge die bestehenden Pfade von ios-instance und android-instance durch Plattformzuordnung, Proxy-Zuweisung, Heartbeat, Schließen und Hinweise zur Sitzungs-Laufzeit. Ergänze Tests für die Auswahl von HarmonyOS-Emulatoren und den vollständigen remote inventory-to-open-to-snapshot/input/logs-to-close-Ablauf, einschließlich Lease-Identität und Artefaktprovenienz.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
backend-api-design, mobile
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
52/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.