callstack / callstack/agent-device
Compact network dump output for long React Native flows
- Dominant language
- TypeScript
- Stars
- 4.6k
- Forks
- 299
- Avg merge
- 10h 17m
- Merged PRs (30d)
- 515
Description
## Problem
`network dump` can burn thousands of tokens on opaque URLs, heartbeat/poll endpoints, and large Pusher JSON payloads during long React Native flows such as New Expensify expense creation.
## Desired behavior
Make default network output compact and useful, with explicit flags for full detail.
## Acceptance criteria
- Default `network dump` truncates or redacts opaque long query params.
- Heartbeat/poll endpoints are filtered or summarized by default.
- Pusher `multipleEvents` payloads summarize event count, first action/type, relevant keys, and timing when possible.
- Full URLs/noise/detail remain available behind explicit include flags or modes.
- Existing `summary|headers|body|all` behavior remains compatible or has a clear migration path.
## Testing
Unit/fixture:
- Expensify-shaped `/api/fl?...` fixture.
- Pusher `multipleEvents` fixture.
- Heartbeat/poll endpoint fixture.
- Explicit full-detail mode preserves raw URL/payload data.
New Expensify Android verification:
- Run the camera-scan expense flow with log markers.
- Run `network dump` and confirm output is compact but still identifies relevant create/IOU/Pusher activity.
- Confirm full-detail mode can still expose the raw request data when intentionally requested.
Contributor guide
Assessment
This issue has not been assessed yet.