diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index df6f79f..352ca3f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,7 +22,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [20, 24] + node-version: [24] steps: - name: Checkout repo diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4a54a78..0210ab7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -33,7 +33,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v6 with: - node-version: 24.10.0 + node-version-file: '.nvmrc' cache: npm registry-url: https://registry.npmjs.org/ diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..a45fd52 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +24 diff --git a/AGENTS.md b/AGENTS.md index 2ebd095..4bdafca 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -4,6 +4,51 @@ This file is for coding agents working in the `@seamless-auth/react` repository. Use it as the repo-level source of truth for what this package is today, how it fits into the wider Seamless Auth ecosystem, and what kinds of changes should be reinforced instead of reintroducing older patterns. +## Working Standards (fells-code baseline) + +These rules apply to every repository in the fells-code org. Repo-specific +guidance may extend them but must not contradict them. + +### Attribution + +- Commit and open PRs solely under the repository owner's identity. Never + commit under an agent or assistant identity. +- Never attribute work to an AI assistant: no `Co-Authored-By: Claude` (or any + assistant) trailers, no "Generated with" / "Created with Claude" notes, and no + assistant branding or emoji anywhere in commit messages, PR or issue titles + and descriptions, changesets, code comments, or docs. + +### Comments + +- Comment only when the code genuinely needs explaining: a non-obvious reason, a + gotcha, or an invariant. Never narrate what the code plainly does. + +### TODOs + +- Every `TODO`/`FIXME` must reference a ticket, e.g. `// TODO(#123): ...`. + Do not leave a bare TODO. If no ticket exists, create one first. + +### Commits & branches + +- Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `ci:`, `test:`). +- Descriptive branch names (`feat/...`, `fix/...`); never a `claude/` or other + tool-generated prefix. + +### Public-facing text + +- No em dashes in commit messages, code comments, PR or issue text, changesets, + or docs. Use a comma, parentheses, or a separate sentence. + +### Before declaring work done + +- All code quality checks must pass before you open a PR or call the work done: + tests, linting, type checks, and formatting. Run them and report the real + output; do not open a PR while any check is failing. +- Typical commands: `npm run typecheck`, `npm run lint`, `npm run format:check` + (or `npm run format`), and `npm test`. Never claim a change works without + running them. +- Match the surrounding code's style, naming, and comment density. + ## Purpose This repo publishes `@seamless-auth/react`. @@ -236,5 +281,6 @@ Avoid these patterns unless the user explicitly asks for them: - changing endpoint assumptions without checking the server/api repos - leaving README or repo guidance out of sync with the actual exports - creating a second source of truth for session state outside `AuthProvider` -- using em dashes (—) in public-facing text: commit messages, code comments, PR/issue descriptions, changesets, and docs. Use a comma, parentheses, or a separate sentence instead. -- adding AI or assistant attribution to commits or pull requests. Do not add `Co-Authored-By: Claude` (or any other AI/assistant) trailers, "Generated with Claude Code" lines, or similar credits. Commits and PRs are authored solely under the repository owner's identity. + +Commit hygiene, attribution, comments, TODOs, and public-facing-text rules live +in Working Standards above. diff --git a/package.json b/package.json index c3a8cda..f635530 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "LICENSE" ], "engines": { - "node": ">=20.0.0 <25.0.0", + "node": ">=24.0.0 <25.0.0", "npm": ">=9.0.0 <13.0.0" }, "scripts": {