{"record":{"id":"8b713137d81bc93e","repo":"diegosouzapw/OmniRoute","slug":"valid-003","errorCode":"VALID_003","errorMessage":"Input sanitization blocked","messagePattern":"Input sanitization blocked","errorType":"error_code","errorClass":null,"httpStatus":400,"severity":"error","filePath":"src/shared/constants/errorCodes.ts","lineNumber":141,"sourceCode":"    httpStatus: 400,\n    category: \"PROVIDER\",\n  },\n\n  // ── Validation ──\n  VALID_001: {\n    code: \"VALID_001\",\n    message: \"Invalid request body\",\n    httpStatus: 400,\n    category: \"VALIDATION\",\n  },\n  VALID_002: {\n    code: \"VALID_002\",\n    message: \"Missing required field\",\n    httpStatus: 400,\n    category: \"VALIDATION\",\n  },\n  VALID_003: {\n    code: \"VALID_003\",\n    message: \"Input sanitization blocked\",\n    httpStatus: 400,\n    category: \"VALIDATION\",\n  },\n\n  // ── Combos (T-22.b — 400-shape standardization for /api/combos/{id}) ──\n  COMBO_001: {\n    code: \"COMBO_001\",\n    message: \"Request body is not valid JSON\",\n    httpStatus: 400,\n    category: \"COMBO\",\n  },\n  COMBO_002: {\n    code: \"COMBO_002\",\n    message: \"One or more combo fields are invalid\",\n    httpStatus: 400,\n    category: \"COMBO\",\n  },","sourceCodeStart":123,"sourceCodeEnd":159,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/src/shared/constants/errorCodes.ts#L123-L159","documentation":"Error \"Input sanitization blocked\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at src/shared/constants/errorCodes.ts:141 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}