Skip to content

Commit 45367ca

Browse files
committed
refactor(provider-limrun): drop the Limrun iOS gesture denial the facts already make
The iOS direct session refused every gesture tier through `limrunGestureFacts` (`iosGestureUnavailable` on live sessions, the liveness cell otherwise), and `bindGestureOperations` binds a tier only when its cell is available — so the interactor's throwing `performGesture` could never run. The member is already optional on `Interactor`, and the binder already escalates an advertised tier with no executor to `invalidRuntimeContract` rather than a refusal (ADR 0019 §2), a path pinned by `gesture-runtime.test.ts`. What remained was unreachable code pretending to be an implementation; the fact cell is now the single source of the agent-facing wording.
1 parent d816a77 commit 45367ca

2 files changed

Lines changed: 3 additions & 10 deletions

File tree

‎packages/provider-limrun/src/interaction-operations.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@ import { setTimeout as sleep } from 'node:timers/promises';
4444

4545
const available = Object.freeze({ available: true } as const);
4646
/**
47-
* Limrun's iOS direct session drives text and touch but exposes no portable gesture execution —
48-
* its interactor's own `performGesture` refuses with this wording. Stating it as a fact refuses at
49-
* admission instead of mid-execution (ADR 0019 §6), keeping the agent-facing hint identical.
47+
* Limrun's iOS direct session drives text and touch but exposes no portable gesture execution.
48+
* Stating it as a fact refuses at admission instead of mid-execution (ADR 0019 §6), and it is
49+
* the only refusal the caller sees: the leg's interactor carries no gesture member at all.
5050
*/
5151
const iosGestureUnavailable = Object.freeze({
5252
available: false,

‎packages/provider-limrun/src/ios.ts‎

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -332,13 +332,6 @@ class LimrunIosInteractor implements Interactor {
332332
await this.session.client.setOrientation(orientation === 'portrait' ? 'Portrait' : 'Landscape');
333333
}
334334

335-
async performGesture(): Promise<never> {
336-
throw unsupported(
337-
'gesture',
338-
'Limrun iOS direct sessions do not expose portable gesture execution yet.',
339-
);
340-
}
341-
342335
async setSetting(): Promise<never> {
343336
throw unsupported('settings', 'Limrun iOS direct sessions do not expose settings changes yet.');
344337
}

0 commit comments

Comments
 (0)