Repository navigation
feat(claude): add fxa-ai-fixme-create-issue skill - #21317
Conversation
894452f to
2979808
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The procedure contains unreliable lookup commands and conflicts with repository command and migration safeguards.
Get a fresh assessment by requesting another Copilot review.
Review effort: Balanced
Findings: 1
Open (5)
What changed in this PR
Adds a skill for drafting implementation-ready Jira tickets for the ai-fixme coding-agent pipeline.
Changes:
- Defines ticket investigation, decision, blocker, and approval procedures.
- Adds a standardized Jira ticket template.
- Registers the skill in repository guidance.
| File | Description |
|---|---|
.claude/skills/fxa-ai-fixme-create-issue/SKILL.md |
Adds the ticket-creation skill and template. |
CLAUDE.md |
Registers the new skill. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
2979808 to
c669e23
Compare
c669e23 to
7e2d245
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Frozen-path handling, upstream selection, and Jira summary mapping can produce invalid or inaccurate tickets.
Get a fresh assessment by requesting another Copilot review.
Review effort: Balanced
Findings: 3
Open (3)
| 1. **Ground on current main.** In the repo root, run `git fetch origin main`. Read code | ||
| only with `git grep -n <pat> origin/main -- <path>` and `git show origin/main:<file> | cat -n`, |
| For each other item that applies, either remove it from scope or get the engineer's explicit | ||
| sign-off and quote it in the ticket: | ||
| - a path listed in `_scripts/check-frozen.ts` on origin/main |
| 7. **Show the draft and file only after approval.** With the Atlassian MCP, call | ||
| `createJiraIssue` with project `FXA`, issue type `Task`, label `ai-fixme`, and a markdown | ||
| description. Or use the Atlassian CLI: | ||
| `acli jira workitem create -p FXA -t Task -s "<summary>" --description-file <file> -l ai-fixme` |
The ai-fixme agent works alone and cannot ask questions before its PR, so a ticket with an open decision gets skipped or costs a feedback round. The skill grounds the request on origin/main, confirms the target is live and not a duplicate, asks the engineer every open decision before it drafts, and checks the blockers the pipeline refuses. It keeps security vulnerabilities out, because the agent's PR is public. The template asks for the paths to cover, the environments and consumers outside the repo, and what the VM cannot verify.
7e2d245 to
e0a89b7
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The CLI fallback permits shell injection, and the prerequisite ordering and published-package check need correction.
Get a fresh assessment by requesting another Copilot review.
Review effort: Balanced
Findings: 1
Open (6)
Safely quote ticket summaries in shell commands · New Align package publication checks with PR claims · New MCP creation instructions omit the Jira summary field Frozen paths cannot be overridden by engineer sign-off Hard-coded origin/main may inspect the wrong repository Clarify evidence wording for resulting PRs · New
| description. Or use the Atlassian CLI: | ||
| `acli jira workitem create -p FXA -t Task -s "<summary>" --description-file <file> -l ai-fixme` |
| - an API that another repo consumes, such as exported `fxa-shared` code. `fxa-auth-client` is | ||
| internal to this repo, so its methods may change |
| Evidence (100 merged `auto` PRs, 29 skips): tickets that merged with no feedback round state one | ||
| decided outcome, name files, give a root cause, and list what is out of scope. Length does not | ||
| matter. The top skip reason is "two routes offered or no target named". The top feedback reason is |



Because
This pull request
fxa-ai-fixme-create-issueskill. It grounds the request onorigin/main, asks the engineer every open decision before it drafts, checks the blockers that the pipeline refuses (frozen paths, DB migrations, published packages, tooling files), sizes the work for one PR, and writes the ticket from one template.autoPRs traced these gaps to the ticket.acli.CLAUDE.md.Issue that this pull request solves
Closes: none
Checklist
Put an
xin the boxes that applyHow to review (Optional)
.claude/skills/fxa-ai-fixme-create-issue/SKILL.mdScreenshots (Optional)
Other information (Optional)