Infrastructure: Convert Storybook lifecycle takeover into desktop-test resource contributions

Aberta
#4,449 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
25/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
react-native, storybook, typescript
Domínio
testing, tooling

Direção de pesquisa

Start with “Storybook resource contributions” in packages/agentic/desktop-test/references/current-status.md and the transitional annotations in packages/agentic/desktop-test/src/integration.ts; review the listed dependencies before changing the Storybook integration paths. The acceptance checklist defines done: shared resource and workload ownership, compatible CLI behavior, and the stated Metro-port policy. This is a coordinated, dependency-blocked migration requiring focused package checks and broader validation.

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

Descrição

Status: Blocked

Current status - 2026-11-07

Blocked by F2 #4442, F3 #4444 and F6 #4445. F1 composition and F7 boundary guards are already merged; F2/F3 implementation is in #4463.

Storybook still replaces the neutral CLI lifecycle through its transitional integration. The shared driver-service factory, typed resources and passing smoke do not mean this takeover has been removed. Migrate Metro/channel/context and workload runners to the same real neutral resource owner, preserve CLI compatibility and Windows port 8081, and never adopt unknown occupants or start a redundant driver.

Existing attach-only behavior is sufficient; native supervisor launch and transparent bridge reconnect are not global prerequisites. F4 #4437/F5 #4443 gate exclusive controlled-context claims, not the base contribution migration.

Goal

storybook-desktop replaces the whole desktop-test CLI lifecycle through integration.run; #4434 marks that takeover, supportsAgent, and adapter-written readiness as transitional. Make Storybook contribute Metro, channel, context, and workload runners to the shared host instead, so storybook driver and neutral serve use one resource-ownership implementation.

Part of #4435 (plan item F9).

Scope

  • Owner: Storybook and harness integration.
  • Paths (under packages/agentic/): storybook-desktop/src/{config/integration.ts,cli/*,driver/driverManifest.ts}, storybook-desktop/config/server.cjs, and harness integration call sites.
  • Contribute Metro, channel, and context resources and workload runners rather than replacing the parent CLI lifecycle.
  • Preserve current process placement and CLI compatibility; retire the transitional takeover surfaces compatibly.
  • Full bridge reconnect and new native launch ownership are not prerequisites; existing attach-only behavior is sufficient.
  • Exclusive controlled-context claims additionally require F4 #4437 and F5 #4443. Do not conflate this migration with those guarantees.

Dependencies

  • Blocked by: F2 #4442, F3 #4444, and F6 #4445. F1 #4436 and F7 #4438 implementation is already merged.
  • Unblocks: the Storybook phase of F11 #4448 and the Storybook facet of F13 #4450.
  • Coordination: one owner for supervisor and Storybook CLI integration; no parallel wholesale CLI rewrites. This is the last server.cjs integration in the sequence F1, F3, F5, F6, F9.

Acceptance

  • Generic and Storybook fixtures exercise the same real seam.
  • There is one workload and resource owner and one readiness and result presentation.
  • No unnecessary second driver is started.
  • The fixed Windows Metro-port policy is preserved (8081 for the Windows Debug host).
  • Unknown port occupants are never adopted.
  • Existing CLI commands remain compatible.

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: "Storybook resource contributions" in packages/agentic/desktop-test/references/current-status.md; transitional annotations in packages/agentic/desktop-test/src/integration.ts.
  • Retired plan: driver-next.md at 0569e1b86, sections 6 and 8 (F9).
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.