PHP's PDO in silent mode returns false on prepare() when table doesn't
exist; calling ->execute() on false throws TypeError (Error, not
Exception). Changed catch to \Throwable and added explicit checks so
the real error message is returned as JSON instead of HTTP 500 empty.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- migrations/20260717_cie10_diagnosticos.sql: CREATE TABLE cie10_diagnosticos
- api/lab/ingest_diagnosticos.php: POST endpoint that receives batches of
{cod, concepto} rows and upserts into cie10_diagnosticos (ON DUPLICATE KEY)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>