Stage 15 — Academic Results API

Endpoint: /api/v1/results/
Authentication: Bearer token from Stage 10.
Method: GET only.
Read-only. No schema changes.

Scope:
- pupil/student: own results only
- parent: results belonging to own children only
- admin/approved staff roles: permitted result records

Filters:
- pupil_id
- class_id
- session
- term
- limit (1-100)
- offset

The endpoint exposes result metadata and existing grade_report score fields without passwords or binary comments.
