- shaper.rs: shape_response() dispatches on core_path to wrap Core
JSON in FUT envelope format; shapes auth (/ut/auth → sid/pid/
phishingToken/persona envelope), profile, club, squad, market,
packs; unknown paths pass through unchanged
- proxy.rs: calls shape_response() on every successful Core response
before returning to the FIFA 23 client
- mapper.rs: expanded from 6 to 18 speculative FUT endpoint mappings
covering auth, profile/settings, club/usermassinfo, item/collection,
squad (GET+PUT), packs+purchase, transfer market+watchlist+bid,
objectives, events, squad battles, and match result submission
- admin.rs: GET /_bridge/captures/diff?a=<id>&b=<id> compares two
captures; reports method/path/status changes, header diffs, and
structured JSON body diffs (key-level for objects, length for others)
- main.rs: registers /_bridge/captures/diff route
- Unit tests: 4 shaper tests, 6 mapper tests (10 total, all passing)
- All 13 integration tests still passing
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
FIFA 23 reverse-engineering proxy and integration scaffold.
- Catch-all HTTP proxy that captures all incoming FIFA 23 traffic
- Known-route mapper (speculative FUT paths → Core API calls)
- Placeholder JSON responses for unmapped endpoints
- Admin endpoints: GET /_bridge/captures, GET /_bridge/unknown
- Capture persistence to captures/*.json for RE analysis
- 4 unit tests passing
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>