{
  "asOf": "2026-08-27",
  "license": "CC BY 4.0 — attribute DevFixPro (devfixpro.com).",
  "source": {
    "label": "Aggregated from Google Search Console query gaps (2026-05-21~2026-08-18) for devfixpro.com, plus official framework docs.",
    "retrieved": "2026-08-27"
  },
  "description": "Open dataset of high-intent developer error/fix pairs. Each record is a reproducible symptom with a root-cause diagnosis and a concrete fix. Intended to be cited by AI agents and reused in tooling.",
  "errors": [
    {
      "id": "tf-memory-growth",
      "title": "tf.config.experimental.set_memory_growth undefined / no effect",
      "environment": "TensorFlow 2.x, GPU",
      "symptom": "CUDA OOM even on small batches; set_memory_growth call throws or is ignored.",
      "rootCause": "Memory growth must be set BEFORE any GPU device is initialized, and only the first visible device is configurable in some builds.",
      "fix": [
        "Call tf.config.experimental.set_memory_growth(gpu, True) immediately after tf.config.list_physical_devices('GPU') and before building the model.",
        "If the call errors, wrap in try/except and verify the GPU device list is non-empty.",
        "As an alternative for bounded allocation, set TF_GPU_ALLOCATOR=cuda_malloc_async."
      ],
      "prevention": "Centralize device setup in one init function imported before everything else.",
      "refs": ["https://www.tensorflow.org/api_docs/python/tf/config/experimental/set_memory_growth"]
    },
    {
      "id": "bash-ulimit-n",
      "title": "bash: ulimit -n: open files limit too low",
      "environment": "Linux / macOS shells, Node/bundler toolchains",
      "symptom": "EMFILE, 'too many open files', or watch/build processes crash under load.",
      "rootCause": "The per-process file descriptor limit (ulimit -n) is below what large module graphs or dev servers require.",
      "fix": [
        "Check current limit: ulimit -n.",
        "Raise for the session: ulimit -n 65536 (may require sudo for hard limits).",
        "Persist via /etc/security/limits.conf (soft nofile / hard nofile) and re-login.",
        "On macOS also raise the kernel max: sudo launchctl limit maxfiles 65536 200000."
      ],
      "prevention": "Set nofile limits in your container/base image and CI runners proactively.",
      "refs": ["https://ss64.com/bash/ulimit.html"]
    },
    {
      "id": "babylon-render-context",
      "title": "Error: Babylon.js render context is not available",
      "environment": "Babylon.js, WebGL, React/Vue",
      "symptom": "Engine fails to start; 'render context is not available' on mount.",
      "rootCause": "The canvas has zero size, is not yet in the DOM, or WebGL is blocked (headless/no GPU) at engine creation time.",
      "fix": [
        "Ensure the canvas element exists and has non-zero width/height before calling new Engine(canvas, ...).",
        "Guard creation in useEffect/useLayoutEffect after the ref is attached.",
        "Detect WebGL availability; fall back to NullEngine for server-side or test rendering."
      ],
      "prevention": "Mount engines only after layout, and feature-detect WebGL first.",
      "refs": ["https://doc.babylonjs.com/advanced_topics/WebGL2"]
    },
    {
      "id": "jenkins-pipeline-slow",
      "title": "Jenkins pipeline is unexpectedly slow",
      "environment": "Jenkins, declarative pipelines",
      "symptom": "Stages take minutes longer than expected; idle gaps between steps.",
      "rootCause": "Common causes: agent provisioning overhead, unstashed large workspaces, skipped stage-level parallelism, and excessive console logging.",
      "fix": [
        "Move heavy, independent stages into parallel blocks.",
        "Use stash/unstash only for what crosses agents; avoid copying whole workspaces.",
        "Pin agent images and warm an executor pool to remove provisioning waits.",
        "Reduce log volume by silencing verbose shell traces (set +x only where needed)."
      ],
      "prevention": "Treat pipeline design as code: profile stage timings in Blue Ocean before scaling.",
      "refs": ["https://www.jenkins.io/doc/book/pipeline/syntax/"]
    },
    {
      "id": "eclipse-launch-error",
      "title": "Eclipse launch error: cannot connect to VM / timeout",
      "environment": "Eclipse IDE, Java",
      "symptom": "Application launch fails with 'Could not connect to the virtual machine' or a timeout.",
      "rootCause": "Port conflict, corrupt launch configuration, or a JRE mismatch between workspace and launched app.",
      "fix": [
        "Delete and recreate the launch configuration (Run > Run Configurations).",
        "Free the debug port or pick a different one in the configuration.",
        "Match the project JRE to the installed JDK under Installed JREs."
      ],
      "prevention": "Keep a single consistent JDK across the IDE and runtimes.",
      "refs": ["https://www.eclipse.org/eclipse/docs/"]
    },
    {
      "id": "kotlin-troubleshoot",
      "title": "Troubleshoot Kotlin compilation / unresolved reference",
      "environment": "Kotlin, Gradle",
      "symptom": "Unresolved reference, or compilation succeeds in IDE but fails in Gradle.",
      "rootCause": "Source set misconfiguration, stale build cache, or a Kotlin/AGP version mismatch.",
      "fix": [
        "Run ./gradlew clean build --refresh-dependencies to clear cache and re-resolve.",
        "Verify the symbol lives in a source set included by the consuming module.",
        "Align Kotlin and Android Gradle Plugin versions per the compatibility matrix."
      ],
      "prevention": "Pin Kotlin and AGP versions in a central version catalog.",
      "refs": ["https://kotlinlang.org/docs/troubleshooting.html"]
    },
    {
      "id": "automatic1111-cuda",
      "title": "AUTOMATIC1111 / Stable Diffusion CUDA error",
      "environment": "AUTOMATIC1111 webui, PyTorch, CUDA",
      "symptom": "CUDA out of memory or 'Torch not compiled with CUDA' at startup.",
      "rootCause": "GPU memory exhausted by model + precision, or a PyTorch/CUDA toolkit mismatch.",
      "fix": [
        "Launch with --medvram or --lowvram to cap memory use.",
        "Confirm torch.cuda.is_available() in the same Python env used by the webui.",
        "Reinstall a PyTorch build matching your CUDA driver version."
      ],
      "prevention": "Match torch CUDA build to driver; reserve VRAM headroom for the OS.",
      "refs": ["https://github.com/AUTOMATIC1111/automatic1111-webui/wiki"]
    },
    {
      "id": "assertion-n-classes",
      "title": "assertion `t >= 0 && t < n_classes` failed",
      "environment": "PyTorch / C++ training loops, classification",
      "symptom": "Training or inference aborts with an assertion about class index bounds.",
      "rootCause": "A label/index falls outside [0, n_classes). Usually off-by-one, 1-based labels, or a class count mismatch between model head and data.",
      "fix": [
        "Audit label ranges: min/max of targets must be within [0, n_classes-1].",
        "Convert 1-based labels to 0-based, or set n_classes = max_label + 1.",
        "Verify the final layer's out_features matches the number of classes exactly."
      ],
      "prevention": "Add a dataset unit test that asserts label bounds before training.",
      "refs": ["https://pytorch.org/docs/stable/generated/torch.nn.CrossEntropyLoss.html"]
    },
    {
      "id": "canva-crashing",
      "title": "Canva (or similar web app) keeps crashing / blank canvas",
      "environment": "Browser-based design tools",
      "symptom": "Editor tab freezes, canvas goes blank, or the tab crashes under load.",
      "rootCause": "Browser memory pressure, GPU acceleration conflicts, or a stuck service worker/cache.",
      "fix": [
        "Toggle hardware acceleration off in browser settings and restart.",
        "Clear site data / unregister the service worker for the domain.",
        "Close other memory-heavy tabs; try an isolated profile."
      ],
      "prevention": "Keep the browser updated and avoid 50+ open editor tabs.",
      "refs": ["https://www.canva.com/help/"]
    },
    {
      "id": "cocos2d-plist",
      "title": "cocos2d plist parsing / texture atlas load failure",
      "environment": "Cocos2d-x / Cocos Creator",
      "symptom": "Sprite frame not found, or plist fails to parse at load.",
      "rootCause": "Mismatched plist format version, wrong texture path, or atlas not preloaded.",
      "fix": [
        "Confirm the plist is the format your engine version expects (texturePacker preset).",
        "Ensure the referenced PNG sits next to the plist with the exact name.",
        "Preload the atlas in the loading scene before referencing frames."
      ],
      "prevention": "Standardize atlas export presets per engine version.",
      "refs": ["https://docs.cocos.com/"]
    }
  ]
}
