apollo-check
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project…
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project (`xcodebuild -list -json` for the scheme, `git`/`gh` for repo & owner, the branch name for the Jira key, a codebase
> /plugin marketplace add carloshpdoc/ios-workflow-claudeHow it fires
How this command gets triggered: by you, by Claude, or both.
/apollo-reviewContext preview
What this command does when you run it.
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project (`xcodebuild -list -json` for the scheme, `git`/`gh` for repo & owner, the branch name for the Jira key, a codebase
> **Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project (`xcodebuild -list -json` for the scheme, `git`/`gh` for repo & owner, the branch name for the Jira key, a codebase search for flag/font files), or ask if they cannot be inferred. This plugin ships no per-project config.
Review the completed migration for **$ARGUMENTS** against the original investigation and produce a detailed report.
**This command can be used in two ways:** 1. **Automatic** — `/apollo-migrate` calls it at the end of every migration (Step 16) 2. **Manual** — Run `/apollo-review <RepoName>` independently to review a migration at any time
**Output:** This command creates a report file at `docs/apollo-removal/reports/$ARGUMENTS.md`. When called by `/apollo-migrate`, the report's PR description section is used as the body of the automatically opened PR.
Read the investigation file:
docs/apollo-removal/issues/$ARGUMENTS.md
If the investigation file does not exist, inform the user and stop.
Use `git diff` and `git status` to identify every file that was changed, created, or deleted as part of this migration.
For each file, read its current content to understand what was done.
Go through every item in the investigation and verify:
Verify:
If tests haven't been run since the last change:
xcodebuild test -workspace <scheme>.xcworkspace -scheme <scheme> -destination 'platform=iOS Simulator,name=iPhone 11,OS=latest' -only-testing:<scheme>Tests/<RelevantTestClasses> 2>&1 | tail -50
Create the file `docs/apollo-removal/reports/$ARGUMENTS.md` using the Write tool:
# Migration Report: $ARGUMENTS > Generated: <date> > Investigation: docs/apollo-removal/issues/$ARGUMENTS.md > Status: completed ## Summary | Item | Value | |------|-------| | Repository | <full class name> | | Tier | <1-5> | | Consumers updated | <count> | | Files created | <count> | | Files modified | <count> | | Files deleted | <count> | | Tests written | <count> | | Tests passing | <count>/<count> | | Build status | pass/fail | ## What Was Done ### Files Created | File | Purpose | |------|---------| | `<path>` | <brief description of what this file does> | ### Files Modified | File | What Changed | Why | |------|-------------|-----| | `<path>` | <description of changes> | <reason> | ### Files Deleted | File | Why | |------|-----| | `<path>` | <reason - e.g., "Old Apollo implementation, fully replaced"> | ### Consumer Updates | Consumer | Before | After | |----------|--------|-------| | `<path>` | `NetworkXxxRepository(provider: Network.shared.client)` | `XxxRepositoryFactory.makeRepository()` | ## Design Decisions <List any non-obvious decisions made during migration and why> - **Decision:** <what> - **Reason:** <why> - **Alternative considered:** <what else was considered> ## Deviations from Investigation <List any deviations from the original investigation in docs/apollo-removal/issues/$ARGUMENTS.md> | Planned | Actual | Reason | |---------|--------|--------| | <what the plan said> | <what was actually done> | <why> | (or "None — investigation was followed exactly") ## Issues Encountered <List any problems found during migration and how they were resolved> | Issue | Resolution | |-------|-----------| | <description> | <how it was fixed> | (or "None") ## Tests ### Test Files Created | File | Tests | Status | |------|-------|--------| | `<path>` | <count> | all passing | ### Test Coverage Summary - Repository impl: <what's covered> - ViewModel: <what's covered> - Mapper: <what's covered> ## Verification Checklist - [ ] No `import Apollo` in new files - [ ] No `Network.shared` references in new files - [ ] Old `.graphql` file handled (deleted or kept with reason) - [ ] Old `.graphql.swift` file deleted - [ ] Old Apollo implementation deleted - [ ] All consumers updated to use factory - [ ] **Threading**: All completion handlers dispatch to `DispatchQueue.main.async` - [ ] Build succeeds (exit code 0) - [ ] All unit tests written and passing - [ ] `docs/apollo-migration-status.md` updated - [ ] Investigation file status updated to completed ## PR Description (copy-paste ready) <A concise summary suitable for a PR description, including:> - What was migrated - Pattern applied - Key decisions - Files affected count - Test results
After writing the report, display:
If during review you discover any issue that should have been caught by the investigation or the migration process, **update the relevant instruction files** (`docs/apollo-migration-guide.md`, `.claude/commands/apollo-check.md`, `.claude/commands/apollo-migrate.md`, `.claude/CLAUDE.md`) so the same issue is prevented in future migrations.
Reusable Claude Code slash-commands, skills, and workflows extracted from real iOS / backend projects. Packaged as three installable plugins - register the marketplace and /plugin install what you need.
Repo: carloshpdoc/ios-workflow-claude
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project…
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project…
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project…
**Project context:** Values in angle brackets below (e.g. `<scheme>`, `<JIRA_KEY>`, `<flag-key-enum>`) are resolved at runtime — detect them from the project…
Bump the app version or build number across all targets in the current project.
Review code quality applying DRY, SOLID, naming, and formatting standards