Stage 47 — API Request IDs

All API endpoints that load upgrade/core/api_auth.php now receive an X-Request-ID response header. A valid incoming X-Request-ID is preserved; otherwise a cryptographically random ID is generated. Standard iedu_api_json responses also include request_id. Audit entries include the same request ID when available.

No database/schema changes. No SQL import required.
