{"record":{"id":"e99e60a8f01ced02","repo":"larksuite/cli","slug":"set-calendar-requires-event-summary","errorCode":null,"errorMessage":"set_calendar requires event_summary","messagePattern":"set_calendar requires event_summary","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"shortcuts/mail/draft/model.go","lineNumber":348,"sourceCode":"\t\tif !op.Target.hasKey() {\n\t\t\treturn fmt.Errorf(\"replace_inline requires target with at least one of part_id or cid\")\n\t\t}\n\t\tif strings.TrimSpace(op.Path) == \"\" {\n\t\t\treturn fmt.Errorf(\"replace_inline requires path\")\n\t\t}\n\tcase \"remove_inline\":\n\t\tif !op.Target.hasKey() {\n\t\t\treturn fmt.Errorf(\"remove_inline requires target with at least one of part_id or cid\")\n\t\t}\n\tcase \"insert_signature\":\n\t\tif strings.TrimSpace(op.SignatureID) == \"\" {\n\t\t\treturn fmt.Errorf(\"insert_signature requires signature_id\")\n\t\t}\n\tcase \"remove_signature\":\n\t\t// No required fields.\n\tcase \"set_calendar\":\n\t\tif strings.TrimSpace(op.EventSummary) == \"\" {\n\t\t\treturn fmt.Errorf(\"set_calendar requires event_summary\")\n\t\t}\n\t\tif strings.TrimSpace(op.EventStart) == \"\" || strings.TrimSpace(op.EventEnd) == \"\" {\n\t\t\treturn fmt.Errorf(\"set_calendar requires event_start and event_end\")\n\t\t}\n\t\tstart, err := parseISO8601(op.EventStart)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"set_calendar: event_start must be a valid ISO 8601 timestamp\")\n\t\t}\n\t\tend, err := parseISO8601(op.EventEnd)\n\t\tif err != nil {\n\t\t\treturn fmt.Errorf(\"set_calendar: event_end must be a valid ISO 8601 timestamp\")\n\t\t}\n\t\tif !end.After(start) {\n\t\t\treturn fmt.Errorf(\"set_calendar: event_end must be after event_start\")\n\t\t}\n\tcase \"remove_calendar\":\n\t\t// No required fields.\n\tdefault:","sourceCodeStart":330,"sourceCodeEnd":366,"githubUrl":"https://github.com/larksuite/cli/blob/7fd6ef3c07182257ce776cdc5a614e122d5bd4b3/shortcuts/mail/draft/model.go#L330-L366","documentation":"Guard in PatchOp.Validate: a set_calendar op has an empty event_summary, which is required to build the calendar block.","triggerScenarios":"Thrown at shortcuts/mail/draft/model.go:348 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide event_summary"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7fd6ef3c07182257ce776cdc5a614e122d5bd4b3","analyzedAt":"2026-09-04T21:17:44.649Z","contentChangedAt":"2026-09-04T21:17:44.649Z","schemaVersion":2},"datasetVersion":"2026-09-12T02:17:10.037Z"}