{"record":{"id":"3cefbe322ec161d5","repo":"instructure/canvas-lms","slug":"no-name-given-for-term-term-id","errorCode":null,"errorMessage":"No name given for term #{term_id}","messagePattern":"No name given for term #(.+?)","errorType":"validation","errorClass":"ImportError","httpStatus":null,"severity":"error","filePath":"lib/sis/term_importer.rb","lineNumber":72,"sourceCode":"        if date_override_enrollment_type\n          # only configure the date override if this row is present\n          raise ImportError, \"Cannot set date override on non-existent term\" if term.new_record?\n          unless %w[StudentEnrollment TeacherEnrollment TaEnrollment DesignerEnrollment].include?(date_override_enrollment_type)\n            raise ImportError, \"Invalid date_override_enrollment_type\"\n          end\n\n          date_override = term.enrollment_dates_overrides.where(enrollment_type: date_override_enrollment_type).order(:id).first\n          unless date_override&.stuck_sis_fields&.intersect?(%i[start_at end_at])\n            case status\n            when /active/i\n              date_override ||= term.enrollment_dates_overrides.build(context: @root_account, enrollment_type: date_override_enrollment_type)\n              date_override.update!(start_at: start_date, end_at: end_date)\n            when /deleted/i\n              term.enrollment_dates_overrides.where(enrollment_type: date_override_enrollment_type).destroy_all\n            end\n          end\n        else\n          raise ImportError, \"No name given for term #{term_id}\" if name.blank?\n\n          # only update the name on new records, and ones that haven't been\n          # changed since the last sis import\n          if term.new_record? || !term.stuck_sis_fields.include?(:name)\n            term.name = name\n          end\n\n          term.integration_id = integration_id if integration_id.present?\n\n          case status\n          when /active/i\n            term.workflow_state = \"active\"\n          when /deleted/i\n            term.workflow_state = \"deleted\"\n          end\n          unless term.stuck_sis_fields.intersect?([:start_at, :end_at])\n            term.start_at = start_date\n            term.end_at = end_date","sourceCodeStart":54,"sourceCodeEnd":90,"githubUrl":"https://github.com/instructure/canvas-lms/blob/1c9f0bb8013ed69c4f2efe11fd483025469b7e6c/lib/sis/term_importer.rb#L54-L90","documentation":"Validation error in TermImporter::Work#add_term raised when a date_override row names a term whose sis_source_id matched no existing enrollment term (term.new_record?). Date overrides can only be applied to terms created by a prior import; the referenced term does not exist.","triggerScenarios":"Thrown at lib/sis/term_importer.rb:72 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide a name for every term row","Correct the CSV and re-import"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"1c9f0bb8013ed69c4f2efe11fd483025469b7e6c","analyzedAt":"2026-09-15T20:33:18.891Z","contentChangedAt":"2026-09-15T20:33:18.891Z","schemaVersion":2},"datasetVersion":"2026-09-23T02:17:17.105Z"}