{
    "$schema": "https://docs.renovatebot.com/renovate-schema.json",
    "extends": [
        "config:recommended",
        ":semanticCommits",
        ":dependencyDashboard"
    ],
    "schedule": ["before 5am on Monday"],
    "timezone": "Africa/Nairobi",
    "labels": ["dependencies"],
    "prCreation": "not-pending",
    "prHourlyLimit": 4,
    "prConcurrentLimit": 6,
    "rangeStrategy": "bump",
    "minimumReleaseAge": "14 days",
    "internalChecksFilter": "strict",
    "lockFileMaintenance": {
        "enabled": true,
        "schedule": ["before 5am on the first day of the month"]
    },
    "vulnerabilityAlerts": {
        "enabled": true,
        "labels": ["security", "dependencies"],
        "minimumReleaseAge": "0 days"
    },
    "packageRules": [
        {
            "matchUpdateTypes": ["minor", "patch"],
            "matchCurrentVersion": "!/^0\\./",
            "automerge": false,
            "groupName": "minor + patch updates"
        },
        {
            "matchUpdateTypes": ["major"],
            "automerge": false,
            "labels": ["dependencies", "major-bump-review"],
            "groupName": null
        },
        {
            "matchPackagePatterns": ["^@types/"],
            "automerge": false,
            "groupName": "@types updates"
        },
        {
            "description": "Next.js + Prisma + NextAuth — frame-of-the-app deps; review individually",
            "matchPackageNames": ["next", "@prisma/client", "prisma", "next-auth"],
            "groupName": null,
            "labels": ["dependencies", "framework-bump-review"]
        }
    ],
    "ignoreDeps": [
        "@types/node"
    ]
}
