version: 2 updates: - package-ecosystem: "npm" directory: "/" schedule: interval: "weekly" groups: production: update-types: - "minor" - "patch" development: dependency-type: "development" open-pull-requests-limit: 10 ignore: # Keep @types/* aligned with the runtime major. Mismatched type # packages (e.g. @types/jest 30 while jest is still 29) break # typecheck without buying us anything. - dependency-name: "@types/jest" update-types: ["version-update:semver-major"] - dependency-name: "@types/node" update-types: ["version-update:semver-major"] # These packages are version-pinned by the Expo SDK (see # expo/bundledNativeModules.json) — upgrade them via an Expo SDK # bump / `npx expo install --fix`, never on their own. Dependabot # bumping them past the SDK's expected version broke the native # build (expo-modules-core macro mismatch, June 2026) because CI # never compiles native code. `react` stays unignored: the web # apps own its version via the workspace catalog, and apps/mobile # excludes it from expo version checks. - dependency-name: "react-native" - dependency-name: "react-native-gesture-handler" - dependency-name: "react-native-reanimated" - dependency-name: "react-native-safe-area-context" - dependency-name: "react-native-screens" - dependency-name: "react-native-worklets" - dependency-name: "@sentry/react-native" - dependency-name: "jest-expo" - package-ecosystem: "github-actions" directory: "/" schedule: interval: "weekly" open-pull-requests-limit: 5 - package-ecosystem: "docker" directory: "/apps/journal" schedule: interval: "monthly" - package-ecosystem: "docker" directory: "/apps/planner" schedule: interval: "monthly"