# This file contains rules for auto-approving Dependabot PRs.
#
# We should only have entries for regularly-delivered updates from reputable vendors
# that have been proven to be stable.

# AWS-provided libraries
- match:
    dependency_name: "github.com/aws/aws-sdk-go"
    update_type: "semver:minor"

# golang.org/x 
- match:
    dependency_name: "golang.org/x/.*"
    update_type: "semver:minor"

# Google-provided libraries
- match:
    dependency_name: "google.golang.org/grpc"
    update_type: "semver:minor"
- match:
    dependency_name: "google.golang.org/api"
    update_type: "semver:minor"
- match:
    dependency_name: "google.golang.org/protobuf"
    update_type: "semver:minor"
- match:
    dependency_name: "cloud.google.com/go/storage"
    update_type: "semver:minor"

# minio
- match:
    dependency_name: "github.com/minio/minio-go/v7"
    update_type: "semver:minor"

# Playwright test framework
- match:
    dependency_name: "@playwright/test"
    update_type: "semver:minor"
- match:
    dependency_name: "playwright"
    update_type: "semver:minor"
- match:
    dependency_name: "playwright-core"
    update_type: "semver:minor"

# otel
- match:
    dependency_name: "go.opentelemetry.io/.*"
    update_type: "semver:minor"

# chromedp
- match:
    dependency_name: "github.com/chromedp/.*"
    update_type: "semver:minor"

# Prometheus
- match:
    dependency_name: "github.com/prometheus/common"
    update_type: "semver:minor"
- match:
    dependency_name: "github.com/prometheus/client_golang"
    update_type: "semver:minor"

# ReactJS
- match:
    dependency_name: "react-scripts"
    update_type: "semver:patch"

# test-only dependencies where we have good coverage to auto approve minor updates
- match:
    dependency_name: "github.com/chromedp/chromedp"
    update_type: "semver:minor"
- match:
    dependency_name: "github.com/stretchr/testify"
    update_type: "semver:minor"

- match:
    dependency_name: "electron-log"
    update_type: "semver:minor"

- match:
    dependency_name: "concurrently"
    update_type: "semver:minor"

# DO NOT ADD large electron dependencies here:
#
# electron
# electron-builder
# electron-updater
#
# Those have been known to break in the past and we don't have adequate 
# coverage to detect regressions in all cases (desktop app installation and upgrade).