← Zurück zu Repro
AgentRepro

Skill · Version 1.0.0

Desktop- und Mobile-Fehler reproduzieren

Isoliert native App-Fehler durch Lebenszykluswechsel, Paketierungsunterschiede und geänderte Systemberechtigungen.

desktop-mobile-reproduction

Entdecke, wie der Skill hilft

Wann ist der Skill hilfreich?

Nutze dies bei Fehlern nach Ruhezustand, Neustart oder Installation.

Wobei hilft er dir?

  • Erfasst App-, System-, Geräte- und Speicherzustand für die Reproduktion.
  • Vergleicht Entwicklungs- und Paketverhalten einschließlich Pfaden und Umgebungsvariablen.
  • Prüft Rechteentzug, Hardwareänderungen und Wiederaufnahme aus dem Hintergrund.

Das könntest du fragen

Reproduziere einen Mikrofonfehler nach Ruhezustand und Rechteentzug in der installierten Anwendung. Erfasse die genaue Schlaf-, Aufwach- und Berechtigungsfolge. Vergleiche installierten Build und Entwicklungsmodus und benenne die erste beobachtbare Abweichung.

Ausführliche Dokumentation

Hier findest du die ursprüngliche Anleitung, Beispiele und Prüfschritte des Skills in ihrer Originalsprache.

Details…Weniger anzeigen

Desktop & Mobile Reproduction

When to Use

Use when reproducing bugs tied to native OS behavior, desktop app packaging (Electron/Tauri), mobile app lifecycle transitions (background/foreground, process death), permissions, offline sync, or deep links.

1. Application Lifecycle & State Restoration Triggers

Many mobile and desktop bugs never appear during normal active use—they trigger across OS lifecycle transitions:

  • Background $\rightarrow$ Foreground & Process Death (Mobile):
    • Put the app in the background while a network request, file upload, or modal is open, simulate OS low-memory process termination ("Don't keep activities" on Android / background kill on iOS), and restore the app.
    • Check whether in-memory state was lost while persisted navigation state expects it to exist.
  • Window Close vs. App Quit & Sleep/Wake (Desktop):
    • On macOS (darwin), closing the last window (window-all-closed) keeps the app process alive in the Dock (activate reopens a window), whereas on Windows/Linux it typically quits.
    • Test OS sleep/wake cycles, network interface switching (Wi-Fi $\rightarrow$ offline $\rightarrow$ reconnect), and multi-window state synchronization across IPC channels.

2. Dev Mode vs. Packaged Production Binary Differences

A major class of Electron, Tauri, React Native, and Flutter bugs only occurs in the packaged/bundled app, never in dev:

  • Filesystem Paths & Read-Only Bundles:
    • In packaged Electron (app.asar) or Tauri apps, writing to __dirname or relative current working directories (process.cwd()) fails because the bundle is read-only or cwd is / on macOS Finder launch. Verify paths using app.getPath('userData') / temp.
  • Packaged Child Processes, CLI PATH & Native Binaries:
    • GUI apps launched from macOS Finder/Spotlight do not inherit the user's interactive shell PATH (/opt/homebrew/bin, ~/.nvm, ~/.cargo/bin). Reproduce "CLI not found" bugs by launching the app with a minimal default OS PATH (/usr/bin:/bin).
  • CSP, Custom Protocols & Entitlements:
    • Custom schemes (app://, tauri://, deep links myapp://), macOS Hardened Runtime entitlements, and Windows SmartScreen/antivirus file locking (EBUSY on SQLite or temp files during rename/delete).

3. OS Permission & Hardware State Transitions

Test permission edge cases beyond the happy path:

  • Permission Denied on first prompt, Revoked in OS Settings while the app is running, or Limited/Partial access (e.g., iOS selected photos only, approximate location).
  • Display scaling (125%, 150%, 200% DPI on Windows/macOS Retina), multi-monitor window placement (disconnecting an external monitor where window coordinates were saved), safe-area insets, and virtual keyboard overlap on mobile forms.

Enthaltene Dateien 1

  • SKILL.md