Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: daily
- package-ecosystem: npm
directory: /examples/SimpleExample
schedule:
interval: daily
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily
26 changes: 26 additions & 0 deletions .github/workflows/dependabot-auto-merge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Auto-merge Dependabot PRs

on:
pull_request:

permissions:
contents: write
pull-requests: write

jobs:
auto-merge:
runs-on: ubuntu-latest
if: github.actor == 'dependabot[bot]'
steps:
- name: Fetch Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}

- name: Auto-merge patch updates
if: steps.metadata.outputs.update-type == 'version-update:semver-patch'
run: gh pr merge --auto --squash "$PR_URL"
env:
PR_URL: ${{ github.event.pull_request.html_url }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3 changes: 2 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,10 @@ Node >= 20 required (see `.nvmrc`). Use Yarn (v3.6.1, workspaces enabled) — np
## Conventions

- **Conventional commits** enforced by commitlint pre-commit hook: `fix:`, `feat:`, `refactor:`, `docs:`, `test:`, `chore:`
- **Pre-commit hooks** via lefthook: runs ESLint and TypeScript type checking on changed files
- **Pre-commit hooks** via lefthook: runs ESLint and TypeScript type checking on changed files. Lefthook uses `@{push}` to determine changed files, so commits will fail on new branches without an upstream. Push the branch first (`git push -u origin <branch>`) before committing.
- **Strict TypeScript**: `strict: true`, `noUncheckedIndexedAccess`, `noUnusedLocals`, `noUnusedParameters`, `verbatimModuleSyntax`
- **Version constant**: `src/constants.tsx` has a `Version` string that must match `package.json` version — update both when bumping
- **Peer dependencies**: `react`, `react-native`, `react-native-webview`, `react-native-safe-area-context` are peers (not bundled)
- **Storage keys** are prefixed with `com.iteratehq.` and values are JSON-wrapped as `{ value: ... }`
- **Pull requests**: Don't include "Generated with Claude Code" in PR descriptions. Keep test plans minimal — only include verification steps for non-obvious or risky changes, not routine checkboxes.
- **Fixing CVEs**: When fixing a CVE in a dependency, consider both approaches: (1) adding a `resolutions` override in `package.json` to force a patched version, and (2) upgrading the underlying direct dependency that pulls in the vulnerable transitive dependency. Prefer upgrading the direct dependency when possible; use resolutions as a stopgap when the direct dependency hasn't released a fix yet.