One-click install
npx skills add https://github.com/khoi/dotfiles --skill pfw-issue-reporting
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pfw-issue-reporting
Source: https://github.com/khoi/dotfiles/tree/main/chezmoi/dot_pfw/skills/issue-reporting
Command: npx skills add https://github.com/khoi/dotfiles --skill pfw-issue-reporting

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Enable developers to surface runtime issues in Swift apps in a visible yet unobtrusive way, reducing debugging time without crashing the app.

Core Features & Use Cases

  • Unobtrusive runtime issue reporting using the IssueReporting library with reportIssue and withErrorReporting.
  • Cross-cutting coverage for synchronous and asynchronous code paths to catch programmer errors gracefully.
  • Use Case: When a user action encounters a recoverable error, report it and continue without showing a disruptive alert to the user.

Quick Start

Add IssueReporting to your project and wrap risky calls with withErrorReporting to automatically surface issues during development and production.

Frequently Asked Questions about pfw-issue-reporting

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I report runtime issues in Swift without crashing the app?

Report runtime issues in Swift without crashing the app by using the IssueReporting library to surface non-fatal programmer errors unobtrusively, allowing the app to continue running smoothly during development and production.

What is the difference between programmer errors and user errors in iOS issue reporting?

In iOS issue reporting, programmer errors are non-fatal logic flaws you should surface using reportIssue, whereas user errors are expected actions that should be handled gracefully without triggering issue reporting.

How do I handle asynchronous error reporting in Swift apps?

Handle asynchronous error reporting in Swift apps by wrapping risky network calls with the withErrorReporting function, automatically catching and surfacing issues across synchronous and asynchronous code paths without disrupting execution.

Does IssueReporting work with both synchronous and asynchronous code paths in iOS?

Yes, IssueReporting works with both synchronous and asynchronous code paths in iOS, providing cross-cutting coverage to catch and surface non-fatal runtime issues across UI interactions and network calls gracefully.

When should I not use runtime issue reporting for recoverable errors?

You should not use runtime issue reporting for recoverable user errors, as the IssueReporting library enforces reporting programmer errors rather than user errors to avoid alerting users with disruptive messages.

What's the best way to surface non-fatal issues during iOS UI interactions?

The best way to surface non-fatal issues during iOS UI interactions is integrating the IssueReporting library's reportIssue and withErrorReporting functions to unobtrusively report runtime problems without showing disruptive alerts.