with one click
fix-issue
End-to-end workflow to fix a GitHub issue in marin-community/marin.
Menu
End-to-end workflow to fix a GitHub issue in marin-community/marin.
Lint, run the pre-PR checks, commit, push, and author or update the branch's pull request in the required plain-text format. Use when committing, pushing, or creating/updating a PR.
In CI, run the infra/lint catalog review over a PR.
Multi-agent correctness review of a pull request.
Launch, monitor, and seal Marin canary and daily ferry runs.
Scheduled scrub: docs and code parity.
Scheduled scrub: repository self-improvement.
| name | fix-issue |
| description | End-to-end workflow to fix a GitHub issue in marin-community/marin. |
Fix the Github issue indicated by the user.
Read first:
@AGENTS.md
Complete tasks in order; the task list is at the end of this document. If you cannot complete a task, write a Github comment with your last status and why.
Be terse. Every sentence must convey new information:
arrow_flight.py#L384 - TPU→CPU copy.Use gh to fetch the issue. Read the codebase for all relevant source files.
Post a single comment with two sections: Research and Proposed Fix.
Before writing code, run a duplicate-work preflight:
gh pr list --state open --search "<issue-id or keyword>").gh issue list --state open --search "<keyword>").Title: # Research
**Relevant code** list: max 5 links, each with a short (<10 word) annotation.Example:
jax.device_get()produces non-contiguous memory layout, limiting TPU→CPU transfer to ~1GB/s (expect 4-7GB/s). No parallelization across shards.Relevant code
arrow_flight.py#L384- TPU→CPU copyjax.py#L394-L402- transfer implbase.py#L32-L35- transfer mode defs
Title: # Proposed Fix
There are 2 cases:
Bug fix: Show the call chain that triggers the error, then state the fix in one sentence. Include a code snippet only if the fix is non-obvious.
env.run()returns a tuple;foo()assumes an object and calls.abc(). Fix: unwrap the tuple inRolloutWorker._step()before passing tofoo().
Design change: The design doc replaces the # Proposed Fix section.
Write it per .agents/skills/write-design-doc/ directly in the issue comment
(agents cannot commit files before the PR). The 3-4 sentence prose cap
applies to # Research; the design doc follows its own length guidelines.
Keep everything in one comment.
In both cases: find the minimally disruptive fix. Do not over-engineer.
Implement changes in a branch named agent/{YYYYMMDD}-fix-{issue-id}. You may
create branches on github and submit PRs from them.
tests/ if appropriate../infra/pre-commit.py --all-files --fix and resolve all reported issues.uv run pytest -m 'not slow' and ensure all tests pass before uploading.When all tests pass, upload your branch and open a PR following
.agents/skills/commit/SKILL.md exactly — use the plain-text format it
specifies (no markdown headers, bullet lists, or ## Summary sections;
violations are rejected). Attach a comment to the Github issue summarizing the fix.
After opening the PR, verify CI checks pass:
gh pr view <number> --json statusCheckRollup.Key checks: unit tests (must pass), lint-and-format (must pass), build-docs (should pass if you modified documentation).
The tasks for this skill:
./infra/pre-commit.py --all-files --fix and resolve all issuesIf at any point you are unable to proceed, you must add a comment to the Github issue with your last status.