fix(175): NLI-Mobile-Startup — userAgent-Polyfill + onnxruntime-Plugin #244

Merged
admin-mrrm merged 1 commit from fix-175-native-startup into main 2026-05-13 21:20:01 +02:00
Owner

Summary

Die App startete nach #241 nur in grau, weil zwei Imports von nli-classifier.ts zur Modul-Init-Zeit crashten:

  1. @huggingface/transformers ruft navigator.userAgent.match(...) in isSafari() -> RN liefert navigator, aber kein userAgent. Polyfill setzt jetzt einen Placeholder.
  2. onnxruntime-react-native ist autolink-unfreundlich; sein Expo-Config-Plugin (app.plugin.js) trug die gradle-Abhaengigkeit nicht ein, weil das Plugin nicht in der plugins-Liste registriert war. Folge: NativeModules.Onnxruntime ist null, require crasht.

Verifikation

  • pnpm --filter @mrrmlab/mobile typecheck gruen.
  • Wichtig: Erfordert anschliessend einen neuen EAS-Dev-Client-Build, damit der gradle-Eintrag wirksam wird. JS-Reload reicht nicht.
## Summary Die App startete nach #241 nur in grau, weil zwei Imports von `nli-classifier.ts` zur Modul-Init-Zeit crashten: 1. `@huggingface/transformers` ruft `navigator.userAgent.match(...)` in `isSafari()` -> RN liefert `navigator`, aber kein `userAgent`. Polyfill setzt jetzt einen Placeholder. 2. `onnxruntime-react-native` ist autolink-unfreundlich; sein Expo-Config-Plugin (`app.plugin.js`) trug die gradle-Abhaengigkeit nicht ein, weil das Plugin nicht in der `plugins`-Liste registriert war. Folge: `NativeModules.Onnxruntime` ist `null`, `require` crasht. ## Verifikation - `pnpm --filter @mrrmlab/mobile typecheck` gruen. - **Wichtig:** Erfordert anschliessend einen neuen EAS-Dev-Client-Build, damit der gradle-Eintrag wirksam wird. JS-Reload reicht nicht.
fix(175): NLI-Mobile-Startup — userAgent-Polyfill + onnxruntime-Plugin
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
0a6ba1fd07
Zwei Crashes beim App-Start nach Einbau des NLI-Classifiers:

1. @huggingface/transformers checkt isSafari() bei Modul-Init:
   navigator.userAgent.match(...). RN hat navigator, aber kein userAgent
   -> TypeError. Mini-Polyfill setzt einen Placeholder, wenn fehlt; der
   Regex matcht dann nichts und transformers laeuft mit Non-Safari-
   Defaults weiter.

2. onnxruntime-react-native hat einen Expo-Config-Plugin, der die
   gradle-Dependency ':onnxruntime-react-native' eintraegt. Ohne
   Registrierung in der plugins-Liste fehlt das native Modul, am
   require() crasht "Cannot read property 'install' of null".

Beide zusammen behoben; erfordert anschliessend einen neuen EAS-Dev-
Client-Build, damit das Plugin in den Gradle-Build eingewoben wird.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
admin-mrrm/mrrmlabapp!244
No description provided.