Repository navigation
Closed
Description
Goal
desktop-driver, desktop-test, and desktop-driver-mcp must stay usable without Storybook, React, or React Native, but that boundary is enforced only by convention. Native helper resolution (resolveNativeDesktopDriver) is available only from the driver's root entry, so the MCP adapter loads the root entry and its WDIO imports. Add tests that enforce the dependency boundary and a narrow native entry point.
Part of #4435 (plan item F7).
Scope
- Owner: package-boundary tests.
- Paths (under
packages/agentic/): focused tests indesktop-driver,desktop-test, anddesktop-driver-mcp; thedesktop-driver/package.jsonexport map. - Add a
@fluentui-react-native/desktop-driver/nativesubpath that points at the helper resolution and verification implementation, not a re-export layer, and move the MCP adapter to it. - Add negative fixtures that detect React, React Native, or Storybook imports or dependencies in the neutral packages.
- Add a standalone application consumer fixture that needs no Storybook package.
Dependencies
- Blocked by: nothing.
- Unblocks: F9 Infrastructure: Convert Storybook lifecycle takeover into desktop-test resource contributions #4449.
- Parallel with: F1 Infrastructure: Unify desktop driver-service composition and wire durable recovery #4436, F4 Infrastructure: Settle Storybook story-provider cancellation and reconnect epochs #4437, F8 Infrastructure: Expose bounded persisted desktop test-run and artifact queries #4439, F12 Infrastructure: Attenuate desktop driver grants and isolate MCP connections #4440, and F15 Infrastructure: Live-qualify the desktop driver and MCP foundation on macOS, Windows, and Win32 #4441.
- Coordination: export maps, root TypeScript references, the lockfile, and changesets use coordinated commits.
Acceptance
- Negative fixtures fail when a neutral package gains a React, React Native, or Storybook import or dependency.
- A standalone application consumer builds and runs without Storybook packages.
- The MCP adapter no longer imports the driver root entry; it uses only the declared client, operations, authority, and native surfaces.
- Checks cover a real dependency boundary, not constants or file-name spelling.
Validation
- Iterate with focused
yarn test <name>in each changed package, then run itsyarn format,yarn lint,yarn build, andyarn test. Finish withyarn clean-lage-cachethenyarn lage buildci; runyarn lage test-links --verbose --groupedafter markdown changes. - Add a patch changeset for each changed published package. Update the owning
references/current-status.mdrows (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 imports:
packages/agentic/desktop-driver-mcp/src/connection.tsimportsresolveNativeDesktopDriverfrom the driver root entry. - Retired plan:
driver-next.mdat0569e1b86, sections 5 and 8 (F7).
Metadata
Metadata
Assignees
Labels
No labels
Activity