diff --git a/.github/workflows/claude-issue-to-pr.yml b/.github/workflows/claude-issue-to-pr.yml index 26e0399..1c07008 100644 --- a/.github/workflows/claude-issue-to-pr.yml +++ b/.github/workflows/claude-issue-to-pr.yml @@ -75,7 +75,7 @@ jobs: show_full_output: true claude_args: | --model claude-sonnet-4-6 - --max-turns 40 + --max-turns 72 --allowedTools "Read,Write,Edit,Grep,Glob,Bash(gh pr view:*),Bash(gh pr diff:*),Bash(gh pr comment:*),Bash(gh pr create:*),Bash(gh issue view:*),Bash(gh issue comment:*),Bash(git:*),Bash(npm install:*),Bash(npm ci:*),Bash(npm run:*),Bash(npm test:*),Bash(bun install:*),Bash(bun run:*),Bash(bun test:*),Bash(npx:*)" prompt: | You were invoked because issue #${{ github.event.issue.number }} @@ -135,8 +135,25 @@ jobs: 1. Create a branch named `claude/fix-${{ github.event.issue.number }}` (or append `-` if useful). 2. Make the change scoped to the label. - 3. Run `npm run build && npm run lint && npm run format:check && npm test` - and `bun test`. Fix anything that fails. + 3. Validate, scaling to the kind of change you made. + + **`config.yaml` is NOT doc-only** — it holds the plugin + entry point (`pluginModule`) and runtime OAuth defaults. + Any change that touches `config.yaml` requires the full + validation path regardless of the `claude-fix:*` label. + + - `claude-fix:typo` / `claude-fix:docs` (doc-only + changes to `*.md`, `docs/**`, or `package.json` + keyword/description fields): run + `npm run format:check` and `npm run lint`. Skip + `npm run build` / `npm test` / `bun test` — they + are not affected and waste turns. + - `claude-fix:deps` / `claude-fix:bug` or any change + that touches code or `config.yaml`: run + `npm run build && npm run lint && npm run format:check && npm test` + and `bun test`. Fix anything that fails. + + When in doubt, err toward the fuller validation. 4. Commit with a descriptive message. 5. Push the branch and open a PR via `gh pr create` with a body that says `Closes #${{ github.event.issue.number }}`. diff --git a/.github/workflows/claude-mention.yml b/.github/workflows/claude-mention.yml index 1390db4..5c84eed 100644 --- a/.github/workflows/claude-mention.yml +++ b/.github/workflows/claude-mention.yml @@ -81,7 +81,7 @@ jobs: show_full_output: true claude_args: | --model claude-sonnet-4-6 - --max-turns 30 + --max-turns 48 --allowedTools "Read,Write,Edit,Grep,Glob,mcp__github_inline_comment__create_inline_comment,Bash(gh pr view:*),Bash(gh pr diff:*),Bash(gh pr comment:*),Bash(gh pr checkout:*),Bash(gh pr create:*),Bash(gh issue view:*),Bash(gh issue comment:*),Bash(git:*),Bash(npm install:*),Bash(npm ci:*),Bash(npm run:*),Bash(npm test:*),Bash(bun install:*),Bash(bun run:*),Bash(bun test:*),Bash(npx:*)" # In agent mode the action uses the triggering comment as the # prompt. The text below layers supplemental context on top. @@ -107,9 +107,22 @@ jobs: ## Before committing - Run `npm run build && npm run lint && npm run format:check && npm test` - in the workspace. Also run `bun test` — Bun is installed in - the runner. Fix anything that fails before committing. + Scale validation to the kind of change you made: + + - Doc-only change (only `*.md`, `docs/**`, or + `package.json` keyword/description edits): run + `npm run format:check` and `npm run lint`. Do NOT run + `npm run build` / `npm test` / `bun test` — they are + not affected and waste turns. + + `config.yaml` is NOT doc-only — it holds the plugin + entry point (`pluginModule`) and runtime OAuth defaults. + Treat any change there as a code/config change. + - Code or config change that affects behavior: run + `npm run build && npm run lint && npm run format:check && npm test` + and `bun test`. Fix anything that fails. + + When in doubt, err toward the fuller validation. ## Output