Infrastructure: Add the generalized desktop-mcp management facet

Offen
#4,450 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
24/100
Issue-Typ
Feature
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
react-native, typescript
Bereich
api, tooling

Rechercherichtung

Start with the “Workload/test orchestration tools” section in packages/agentic/desktop-driver-mcp/references/current-status.md and the linked plan’s sections 5 and 8. The work depends on #4439, #4448, #4440, and a reviewed transport and scope decision; decide the management transport and check npm publication history before settling package migration compatibility. Done means the acceptance criteria pass, status guidance is updated, and required package validation and changesets are complete.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Status: Blocked

Current status - 2026-11-07

Blocked by generic F11 #4448 and the reviewed management transport/scope decision. F8 persisted queries and F12 attenuated grants are merged, but neither supplies a workload-management transport.

The current MCP adapter remains a driver-only verified client: it does not start/stop/recover workloads, build helpers, evaluate config, or run suites. Keep that boundary and the current package name until actual bounded harness-owned management tools and a compatible migration land. Cross-connection session resume and replay remain unsupported.

Remaining work: finite declared catalog and opaque run handles; bounded status/results/artifacts; truthful cancel/reconnect semantics; verified transport/scopes; publication-history-based naming/deprecation decision; and measured discovery cost. Historical six-tool discovery was about 20.3 KB, not the earlier proposed 8 KiB target; present-day and Windows/Paper measurements remain unrecorded in #4441/#4451.

F4 #4437, F5 #4443 and F9 #4449 gate only the later Storybook facet, not the generic management implementation.

Goal

Let agents check workload status, run approved suites, cancel their runs, and read bounded results through MCP, not only drive UI. When these management tools land, rename the adapter to @fluentui-react-native/desktop-mcp, keeping a driver-only mode and compatibility for existing users. The adapter stays a client: it never becomes the resource owner.

Part of #4435 (plan item F13).

Scope

  • Owner: harness control client and MCP mapping.
  • Paths (under packages/agentic/): a real desktop-test/control implementation and subpath; desktop-driver-mcp server, controller, and package migration; transport extension or descriptor changes only as the chosen design requires.
  • Expose a finite, supervisor-declared catalog: workload status, run an approved suite, cancel an owned run, and bounded result and artifact queries. Review start, stop, and recover permissions separately; operator recovery is not an ordinary agent tool.
  • Return an opaque run handle rather than keeping a model call open for the whole suite.
  • Decide the management transport: a startup-registered authenticated extension on the driver listener, or a separate verified supervisor endpoint in a versioned descriptor. Sharing a socket must not move lifecycle semantics into the driver.
  • Check the npm publication history of desktop-driver-mcp before choosing a deprecation period, and migrate the package and binary names compatibly.

Dependencies

  • Blocked by: the generic path of F11 #4448 and a reviewed management transport and scope decision. F8 #4439 and F12 #4440 are already merged.
  • Storybook facet: additionally requires F9 #4449, F4 #4437, and F5 #4443. Generic management can land without Storybook or native retained-app options.

Acceptance

  • The model cannot select config, modules, commands, paths, environment values, or URLs.
  • Each management schema has one source, owned by the harness.
  • Discovery and results are bounded, and measured discovery cost is recorded in the MCP status ledger.
  • Reconnecting does not replay a run, and cancellation produces truthful incomplete or settled status.
  • Existing driver-only descriptors still work.

Validation

  • Iterate with focused yarn test <name> in each changed package, then run its yarn format, yarn lint, yarn build, and yarn test. Finish with yarn clean-lage-cache then yarn lage buildci; run yarn lage test-links --verbose --grouped after markdown changes.
  • Add a patch changeset for each changed published package. Update the owning references/current-status.md rows (done, work in progress, unsupported) and affected README/AGENTS guidance in the same change.
  • Native, provider, or process-topology changes need matching-OS native contracts and the affected consumer lane. JavaScript tests and bundles do not qualify native behavior; hosted capability skips are not passes. Report each check as passed, failed, skipped, not run, or unsupported.

Evidence

  • Current state: "Workload/test orchestration tools" in packages/agentic/desktop-driver-mcp/references/current-status.md.
  • Retired plan: driver-next.md at 0569e1b86, sections 5 (generalized MCP) and 8 (F13).
Vorherrschende Sprache
TypeScript
Sterne
1.4k
Forks
179
Ø Merge
1 T. 8 Std.
Gemergte PRs (30 T.)
60

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus microsoft/fluentui-react-native

Alle Issues in microsoft/fluentui-react-native

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

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