## Summary
- add a minimal Angular API client skeleton (`WPP_API_CLIENT`) backed by fetch transport
- wire the API client token into app config so host/player shell flows can inject it incrementally
- add a contract-focused spec to lock request normalization for host/player session bootstrap
## Testing
- `npm test -- src/app/wpp-api-client.spec.ts src/app/api-contract-smoke.spec.ts`
- `npm test`
Closes #249
Independent review complete: no blockers found. Angular API client wiring is minimal and coherent, input normalization is covered by spec, and fetch transport uses same-origin credentials and JSON headers consistently. Verified new vitest spec passes locally on this branch.
Independent review complete: no blockers found. Angular API client wiring is minimal and coherent, input normalization is covered by spec, and fetch transport uses same-origin credentials and JSON headers consistently. Verified new vitest spec passes locally on this branch.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
WPP_API_CLIENT) backed by fetch transportTesting
npm test -- src/app/wpp-api-client.spec.ts src/app/api-contract-smoke.spec.tsnpm testCloses #249
d665a7e731to8d3df1f850Review summary (REVIEW role):
wpp-api-client, provider wiring inapp.config).cd frontend/angular && npm test -- --run src/app/wpp-api-client.spec.ts✅Severity rubric: blocker / should-fix / nice-to-have
Independent review complete: no blockers found. Angular API client wiring is minimal and coherent, input normalization is covered by spec, and fetch transport uses same-origin credentials and JSON headers consistently. Verified new vitest spec passes locally on this branch.
LGTM after independent review; no blockers found. Verified Angular spec passes locally.
LGTM after independent review; no blockers found. Verified Angular spec passes locally.