diff --git a/packages/host/directory-picker-native/tests/client-flow.spec.tsx b/packages/host/directory-picker-native/tests/client-flow.spec.tsx
index cf2cb96679..fe4c30fc5d 100644
--- a/packages/host/directory-picker-native/tests/client-flow.spec.tsx
+++ b/packages/host/directory-picker-native/tests/client-flow.spec.tsx
@@ -83,6 +83,11 @@ describe('directory-picker-native client half', () => {
const second = owner()
view.rerender()
expect(pick).toHaveBeenCalledOnce()
+ // Even a fresh injected face (re-registration re-runs the inject factory)
+ // must not relaunch while the same request is still open.
+ const replacedPick = vi.fn(() => new Promise(() => {}))
+ view.rerender()
+ expect(replacedPick).not.toHaveBeenCalled()
await act(async () => { resolve('/tmp/project') })
expect(second.onPicked).toHaveBeenCalledWith('/tmp/project')
expect(first.onPicked).not.toHaveBeenCalled()