errors: # Python Errors - error_type: ImportError language: python severity: high what_happened: Python couldn't find and import a module or attribute. why_happened: The module you're trying to import doesn't exist, isn't installed, or the attribute doesn't exist in that module. This commonly happens with typos, missing dependencies, or incorrect import paths. how_to_fix: - Check that the package is installed: pip list | grep package-name - Install the package if missing: pip install package-name - Verify the import statement matches the package's documentation - Check for typos in the module or attribute name - If using a virtual environment, ensure it's activated code_snippets: - description: Install missing package code: pip install requests language: bash - description: Correct import code: import requests language: python - error_type: ValueError language: python severity: medium what_happened: A function received an argument with the right type but inappropriate value. why_happened: The value passed to the function doesn't meet the expected constraints or is outside the valid range. how_to_fix: - Check the function's documentation for valid input ranges - Add validation before passing the value - Look at the error message for specific constraints - Use try/except to catch invalid inputs code_snippets: - description: Safe conversion code: | try: num = int(user_input) except ValueError: print("Please enter a valid number") language: python - error_type: TypeError language: python severity: high what_happened: An operation was performed on an object of inappropriate type. why_happened: Python doesn't support the operation between the types you're using, like adding a string to an integer. how_to_fix: - Check the types of your variables using type() - Convert values to the correct type explicitly - Use isinstance() to check types before operations - Review the function's expected parameter types code_snippets: - description: Type conversion code: | num = int("42") # Convert string to int text = str(42) # Convert int to string language: python - error_type: SyntaxError language: python severity: critical what_happened: Python encountered invalid syntax in your code. why_happened: The code doesn't follow Python's syntax rules. This could be missing colons, parentheses, quotes, or incorrect indentation. how_to_fix: - Check the line number mentioned in the error - Look for missing or extra parentheses, brackets, or quotes - Ensure colon after function/class definitions and control flow - Check for incorrect indentation - Ensure strings have matching quotes code_snippets: - description: Common fix code: | # Wrong: if x > 5 print("big") # Correct: if x > 5: print("big") language: python - error_type: KeyError language: python severity: medium what_happened: A dictionary key was not found in the dictionary. why_happened: You tried to access a dictionary key that doesn't exist. how_to_fix: - Use dict.get(key) to return None instead of raising an error - Use dict.setdefault(key, default) to set a default value - Check if key exists first: if key in dict - Use try/except to handle the missing key code_snippets: - description: Safe access code: | value = my_dict.get("missing_key", "default") language: python - error_type: IndexError language: python severity: medium what_happened: A sequence subscript was out of range. why_happened: You tried to access an index that doesn't exist in the list or tuple. how_to_fix: - Remember Python uses 0-based indexing - Check the length before accessing: len(list) - Use negative indices to access from the end - Remember last index is len(list) - 1 code_snippets: - description: Safe indexing code: | if index < len(my_list): value = my_list[index] language: python - error_type: AttributeError language: python severity: high what_happened: An object doesn't have the attribute you're trying to access. why_happened: The object type doesn't have the method or attribute you're calling. This often happens with typos or incorrect object types. how_to_fix: - Check the object's type using type() - Verify the attribute name matches the documentation - Use hasattr() to check if attribute exists - Check if you need to call a method with () code_snippets: - description: Safe attribute access code: | if hasattr(obj, 'attribute'): value = obj.attribute language: python - error_type: FileNotFoundError language: python severity: high what_happened: The file or directory you specified doesn't exist. why_happened: You're trying to open a file that doesn't exist at the specified path. how_to_fix: - Check the file path for typos - Use absolute paths to avoid confusion - Check if you're in the correct working directory - Use os.path.exists() to check before opening code_snippets: - description: Check file exists code: | import os if os.path.exists("file.txt"): with open("file.txt") as f: content = f.read() language: python # JavaScript Errors - error_type: ReferenceError language: javascript severity: high what_happened: A variable or function that doesn't exist was referenced. why_happened: You're trying to use something that hasn't been declared or is out of scope. how_to_fix: - Check for typos in variable/function names - Ensure variables are declared before use - Check that variables are in scope - Verify you're not using a variable before it's defined code_snippets: - description: Proper declaration code: | // Wrong: console.log(x); // Correct: const x = 10; console.log(x); language: javascript - error_type: TypeError language: javascript severity: high what_happened: An operation was performed on a value of inappropriate type. why_happened: The value is null, undefined, or not the expected type for the operation. how_to_fix: - Check if values are null/undefined before use - Use optional chaining: obj?.property - Use typeof to check types - Add null checks with if statements code_snippets: - description: Optional chaining code: | // Safe property access const value = obj?.property ?? "default"; language: javascript - error_type: SyntaxError language: javascript severity: critical what_happened: JavaScript code contains invalid syntax. why_happened: The code doesn't follow JavaScript's syntax rules. how_to_fix: - Check for missing semicolons, braces, or parentheses - Verify string quotes are properly closed - Check for invalid character sequences - Use a linter to catch syntax issues code_snippets: - description: Common fix code: | // Wrong: if (x > 5 console.log('big') // Correct: if (x > 5) { console.log('big'); } language: javascript - error_type: RangeError language: javascript severity: medium what_happened: A value is outside the allowed range. why_happened: You passed a value that exceeds the allowed limits for a function or operation. how_to_fix: - Check the allowed range in function documentation - Add validation before calling the function - Use console.log to see the actual values code_snippets: - description: Array length fix code: | // Wrong: arr[100] when arr has 5 elements // Correct: arr[4] for the last element language: javascript # Go Errors - error_type: panic language: go severity: critical what_happened: Go encountered a runtime panic. why_happened: The program encountered an unrecoverable error, such as nil pointer dereference or array out of bounds. how_to_fix: - Check the panic message for the cause - Use defer and recover to handle panics - Add nil checks before dereferencing pointers - Ensure array indices are within bounds - Check for proper initialization code_snippets: - description: Nil check code: | if ptr != nil { fmt.Println(*ptr) } language: go # Rust Errors - error_type: panic language: rust severity: critical what_happened: Rust encountered a runtime panic. why_happened: The program called panic!() or encountered an unrecoverable error condition. how_to_fix: - Check the panic message for the cause - Use ? operator for error propagation - Check for unwrap() calls that might panic - Use match or if let for proper error handling code_snippets: - description: Proper error handling code: | match some_result { Ok(value) => println!("{}", value), Err(e) => eprintln!("Error: {}", e), } language: rust # CLI Generic Errors - error_type: GenericError language: cli severity: medium what_happened: A command or tool returned an error. why_happened: The command failed for some reason. Check the specific error message for details. how_to_fix: - Read the full error message for specific details - Check the command's documentation - Verify all required arguments are provided - Check if the tool/command is installed - Look for typos in the command or arguments code_snippets: [] # JSON/YAML Parse Errors - error_type: JSONParseError language: json severity: high what_happened: The JSON data is malformed or invalid. why_happened: The JSON string doesn't follow JSON syntax rules - missing quotes, trailing commas, or incorrect structure. how_to_fix: - Validate the JSON with a linter or online tool - Check for missing commas between elements - Ensure all keys are in double quotes - Check for trailing commas (not allowed in JSON) - Verify string values are properly escaped code_snippets: - description: Valid JSON example code: | { "key": "value", "number": 42, "boolean": true, "array": [1, 2, 3], "null": null } language: json - error_type: YAMLParseError language: yaml severity: high what_happened: The YAML data is malformed or invalid. why_happened: The YAML string doesn't follow YAML syntax rules - indentation errors, invalid anchors, or incorrect structure. how_to_fix: - Use consistent indentation (spaces, not tabs) - Check for proper list and dict syntax - Validate with a YAML linter - Ensure special characters are properly escaped code_snippets: - description: Valid YAML example code: | key: value number: 42 boolean: true list: - item1 - item2 nested: inner: value language: yaml