Infrastructure: Qualify desktop lifecycle failure paths and maintain a support matrix

Aberta
#4,451 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
12/100
Tipo de issue
Funcionalidade
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
macos, react-native, typescript
Domínio
mobile-dev, testing

Direção de pesquisa

Start with the three references/current-status.md ledgers and the F14 section of the retired driver-next.md at the cited revision; first confirm that the F15 baseline in #4441 is complete. Then trace the driver fixtures, harness and Storybook tests, and owning app CI listed in the scope. Done means an exact-revision matrix covers every endpoint and feature, records required measurements and skips accurately, and is validated in the affected packages and native lanes.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Platform: MacOS Platform: Win32 Platform: Windows Status: Blocked

Current status - 2026-11-07

Blocked for the qualified support baseline by F15 #4441. Evidence collection can continue; an open baseline gate is not a prohibition on parallel endpoint work.

The current ledger includes Windows Fabric 21 Pass/2 Partial/1 Fail and Win32 Paper 21 Pass/3 Partial, with historical macOS partial/not-run results at their exact source revisions. No all-pass or merged-head native qualification claim is justified.

Remaining consolidation includes the per-endpoint failures/gaps enumerated in #4441/#4437, native ownership/containment from #4446/#4447, a real non-React integrated application and AppKit fixture, independent supervisor/helper/app/Metro/bridge/runner/MCP faults, and a repeated-run reliability window. Coordinate release/CI windows with #4345/#4349 rather than claiming duplicate independent evidence.

Discovery/operation bytes and tokens, tool counts, cold/warm startup and latency, retries/recovery cost, retained resources and cleanup need exact revision/client/tokenizer/sample-count/artifact methods. Windows/Paper measurements remain Not run. Historical macOS numbers and green hosted jobs cannot fill those cells. Preserve every failed attempt and explicit Unsupported/Skipped outcome.

Goal

Maintain a revision- and endpoint-specific support matrix for the desktop automation packages, covering injected lifecycle failures and agent-efficiency measurements. Each feature item produces its own native and consumer evidence when it lands; this item consolidates that evidence and fills the gaps that only show up across components.

Part of #4435 (plan item F14).

Scope

  • Owner: cross-platform qualification; each feature owner remains responsible for its own evidence.
  • Paths (under packages/agentic/): driver native fixtures and contracts, harness and Storybook consumer tests, owning app CI and scripts, and the references/current-status.md ledgers.
  • Inject supervisor, helper, app, Metro, bridge, runner, and MCP failures independently. Cover same-port replacement, surviving children, stale descriptors, late renders, grant revocation, and uncertain cleanup.
  • Include a non-React application, and add the AppKit fixture rather than assuming it exists.
  • Report macOS Fabric, macOS Paper, Windows Fabric, and Win32 Paper separately.
  • Measure identical tasks for schema overhead, tool calls and response bytes, cold and warm startup, retries, recovery cost, retained resources, and cleanup correctness, and record them in the ledgers with their method.

Dependencies

  • Blocked by: F15 #4441, which establishes the baseline for the delivered foundation.
  • Consolidates: each advertised feature only after its implementation and endpoint evidence land.
  • Related: #4345 (driver production release qualification) and #4349 (required native CI).

Acceptance

  • The matrix lists each endpoint and feature with passed, failed, skipped, not-run, or unsupported status at an exact revision.
  • Hosted physical-input or capture skips are recorded as skipped, not passed; a successful semantic activate is not evidence that a physical click works.
  • Measurements record revision, client, platform, renderer, tokenizer, sample count, and artifact locator.
  • Historical results are never reported as qualification of a later revision.

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 ledgers: packages/agentic/desktop-driver/references/current-status.md, packages/agentic/desktop-test/references/current-status.md, and packages/agentic/desktop-driver-mcp/references/current-status.md.
  • Retired plan: driver-next.md at 0569e1b86, sections 8 (F14) and 11.
Linguagem predominante
TypeScript
Estrelas
1.4k
Forks
179
Merge médio
1d 8h
PRs com merge (30d)
60

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/fluentui-react-native

Todas as issues de microsoft/fluentui-react-native

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.