-
Notifications
You must be signed in to change notification settings - Fork 301
Open
Description
Categorize revdep issues by rewriting revdepcheck::cloud_report_checklist() into something like tidyverse/dplyr#7763
---
name: categorize-revdep-issues
description: Rewrite revdep/issue.md to group packages by common error categories
---
# Categorize Reverse Dependency Issues
Rewrite `revdep/issue.md` to group packages by common error categories based on the error output in `revdep/problems.md` and `revdep/failures.md`.
## What This Skill Does
This skill analyzes reverse dependency check results and reorganizes the issue tracking file to group packages by their error types, making it easier to:
- Identify common problems across packages
- Understand which issues are dplyr-related vs external dependencies
- Prioritize fixes based on error patterns
- Provide clear guidance to package maintainers
## Files Involved
**Input files:**
- `revdep/problems.md` - Detailed error output for packages with test/check issues
- `revdep/failures.md` - Installation failures and error messages
- `revdep/issue.md` - Current list of packages (to be rewritten)
**Output file:**
- `revdep/issue.md` - Rewritten with packages grouped by error category
## Process
### Step 1: Read All Input Files
Read all three files in parallel to understand the complete error landscape.
### Step 2: Analyze and Categorize Errors
Group packages by their primary error cause. Common categories include:
**dplyr-specific issues:**
- Missing exports
- Defunct functions
- Defunct function arguments
- Missing Rd cross-references to removed functions
**Non-dplyr issues:**
- Missing exports from other packages (e.g., `purrr::at_depth`)
- Dependency issues
- Compilation failures (C++, Rust)
- Other packages that passed or have unclear status
### Step 3: Create Category Structure
For each category:
1. Create an H2 header with a descriptive category name
2. Write a brief description explaining:
- What the issue is
- Why it's happening
- Suggested solution or migration path
3. List all affected packages in checkbox format
### Step 4: Write the New File
Format requirements:
```markdown
## Category Name
Brief description of the issue and solution approach.
* [ ] [package1](url1)
* [ ] [package2](url2)
...
```
**Critical constraints:**
- MUST preserve ALL packages from the original `issue.md`
- Each package appears in exactly ONE category
- Maintain checkbox format: `* [ ] [package](url)`
- Order categories by relevance (common dplyr issues first, non-dplyr last)
- Use "Other issues requiring investigation" for unclear cases
- Use "Passed checks or unclear status" for packages that passed
## Quality Checks
After completing the rewrite, verify:
- [ ] Total package count in new file matches original file
- [ ] Each package from original appears exactly once in new file
- [ ] Each category has a clear H2 header and description
- [ ] Packages are in checkbox format with correct URLs
- [ ] Categories are logically ordered
- [ ] Common patterns are grouped together
## Example Category
```markdown
## Missing export: `dplyr::id`
Packages using `dplyr::id` which is not exported. These packages get "no visible binding for global variable 'id'" errors.
* [ ] [packageA](https://github.com/userA/packageA)
* [ ] [packageB](https://github.com/userB/packageB)
```
Metadata
Metadata
Assignees
Labels
No labels