member-profile-empty-email-2026-11-15.json 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. {
  2. "state": "local_fix_not_deployed",
  3. "targetStudentId": 1850,
  4. "cause": "Blank optional email serialized as empty unique email key, conflicting with existing blank value.",
  5. "productionEvidence": {
  6. "blankEmailOwners": 1,
  7. "uniqueEmailIndexes": [
  8. "_User_unique_email",
  9. "unique_email"
  10. ],
  11. "originalSaveProbe": {
  12. "stage": "profile-preflight",
  13. "errorCode": "WRITE_BLOCKED",
  14. "errorMessage": "WRITE_BLOCKED",
  15. "probe": {
  16. "blankEmail": true,
  17. "gender": "女",
  18. "grade": "赣州初二",
  19. "validationError": null
  20. },
  21. "allWritesBlocked": true
  22. },
  23. "candidateSaveProbe": {
  24. "stage": "profile-preflight",
  25. "errorCode": "WRITE_BLOCKED",
  26. "errorMessage": "WRITE_BLOCKED",
  27. "probe": {
  28. "blankEmail": false,
  29. "emailMutation": {
  30. "__op": "Delete"
  31. },
  32. "gender": "女",
  33. "grade": "赣州初二",
  34. "validationError": null
  35. },
  36. "allWritesBlocked": true
  37. },
  38. "finalReadback": {
  39. "profileUnchanged": true,
  40. "legacyBalancesUnchanged": true,
  41. "productionGatewayUnchanged": true,
  42. "genderSaved": false,
  43. "gradeSaved": false,
  44. "updatedAt": "2026-11-15T01:06:16.184Z"
  45. }
  46. },
  47. "tests": {
  48. "profileRegression": 3,
  49. "fullServer": 594,
  50. "failed": 0,
  51. "cloudDefinitions": 11
  52. },
  53. "limits": [
  54. "No actual production profile save was submitted.",
  55. "Original failing-request SQL log was not captured; attribution is from payload/constraint evidence and isolated reproduction.",
  56. "Parse persistence in the isolated test uses an adapter stub with real PGlite UPDATE and unique index."
  57. ]
  58. }