Content
56%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The body is highly actionable with executable, Expo-aware code patterns and a clear decision tree, but it spends most of its ~500 lines re-teaching generic React Query/fetch knowledge Claude already has, repeats routing info across three sections, and cites a references/expo-router-loaders.md file that is missing from the bundle. Trimming the generic tutorials into reference files and shipping the missing loaders reference would lift it substantially.
Suggestions
Cut the generic React Query setup/useQuery/useMutation, basic fetch, and AbortController tutorials down to one-line pointers (or move them to a reference file), keeping only the Expo-specific knowledge: expo/fetch preference, SecureStore token patterns, EXPO_PUBLIC_ build-time semantics, and the loaders reference — Claude already knows the generic library APIs.
Add the missing references/expo-router-loaders.md file to the bundle (it is cited in the References section, Decision Tree, and Example Invocations but does not exist), or remove the references entirely.
Fix the corrupted 'EXPO*PUBLIC*' mentions in the Example Invocations section (should be EXPO_PUBLIC_), align the code examples with the stated 'Avoid axios, prefer expo/fetch' preference, and remove the triplicated routing info (When to Use / Decision Tree / Example Invocations) in favor of the Decision Tree alone.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The ~500-line body is dominated by generic material Claude already knows: full React Query setup/useQuery/useMutation tutorials, basic fetch GET/POST, AbortController cancellation, and a NetInfo hook — with only a fraction being genuinely Expo-specific knowledge (expo/fetch preference, SecureStore, EXPO_PUBLIC_ build-time semantics). The When-to-Use list, Decision Tree, and Example Invocations sections also repeat the same routing information three times, matching 'noticeably verbose; several unnecessary explanations or padded sections' rather than the isolated trimmable excess of a 3. | 2 / 5 |
Actionability | Guidance is mostly executable: copy-paste-ready TSX for error handling (ApiError class), retry with exponential backoff, SecureStore token wrapper, token refresh with single-flight promise, onlineManager/NetInfo wiring, and an env-configured API client. Minor gaps hold it below 5: `isTokenExpired`/`refreshToken` are referenced but never defined, and 'Queue requests -> React Query persistence' names offline persistence without showing it (no asyncStoragePersister). | 4 / 5 |
Workflow Clarity | The Decision Tree sequences every entry point (route-level loading, caching, auth, offline, env config) to a concrete recommended approach, giving clear routing. However, 'Debugging network failures' is promised in When to Use with no corresponding diagnostic steps, and there are no validation checkpoints — acceptable here since nothing is destructive/batch, so this is 'clear sequence with most checkpoints present; minor gaps' rather than a 5. | 4 / 5 |
Progressive Disclosure | The reference that exists is well signaled: an annotated one-level-deep pointer ("references/expo-router-loaders.md — Route-level data loading with Expo Router loaders (web, SDK 55+)"), a decision tree that routes to it, and consistent path citations. But that file does not exist in the bundle (there is no references/ directory), so the pointer is broken rather than a 'minor organization gap', and the ~480-line inline bulk of generic React Query/fetch tutorials is exactly the 'content that should be separate is inline' pattern of the 3 anchor — sitting between anchors 3 and 4, the broken file pulls it down to 3. | 3 / 5 |
Total | 13 / 20 Passed |