Warp Closing Issue
Overview
Assess user-supplied Warp commits against user-supplied GitHub issues. Produce a
scoped assessment and draft comment first; public GitHub writes require explicit
confirmation after the user sees the exact target issues and comment body.
Hard Rules
- Stay within the user-supplied commit SHA(s) and issue number(s). Do not search for
extra commits or issues; ask the user for more SHAs/issues if scope is incomplete.
- Read the issue body and comments, not just the title.
- Treat commit messages as orientation, not proof. Inspect diffs and changed files.
- Commenting is not always closure. Supported actions are
close, comment-only,
keep open, and no public update.
- Never post comments or close issues before showing the assessment and exact draft.
- Public comments use full 40-character SHAs as plain text for GitHub auto-linking.
- Keep local execution noise out of public comments: no
WARP_CACHE_PATH,
/tmp/..., local worktree paths, or shell setup.
- Do not use a local test command as the public test note. Public comments describe
test coverage changes in the commit set: new tests, modified tests, or no tests.
- Do not treat passing committed tests as sufficient behavioral verification when
the issue includes a runnable repro or clear expected behavior. When feasible,
write and run small temporary probes inspired by the issue.
- Require behavioral probe summaries in the private assessment. Public comments may
mention probes only when they clarify the recommendation, remaining risk, or
requester-facing behavior.
Optional command snippets live in commands.md. Prefer the
GitHub app/MCP connector when it fits; gh is installed and authenticated here and is
fine for gaps or simple issue operations.
Checklist
Resolve scope. Record supplied commits, issues, and requested outcome, if any:
closure assessment, progress update, comment only, or unspecified.
Gather evidence. For each issue, extract author, author association, reported
symptoms, reproducers, expected behavior, follow-up comments, maintainer asks, and
current state. For each commit, inspect message, diff, tests, docs/CHANGELOG
changes, and touched areas such as warp/native/.
Classify commits.
| Type |
Meaning |
| Behavioral fix |
Changes the code path behind the issue. |
| Test-only |
Adds confidence, but cannot close by itself. |
| Docs/CHANGELOG-only |
Supporting/progress metadata, not fix evidence. |
| Follow-up |
Completes or corrects earlier issue-linked work. |
| Beyond scope |
Related cleanup or broader behavior worth surfacing. |
Map requirements. For each issue requirement, state commit evidence, test
coverage evidence, behavioral probe evidence if available, and status:
addressed, partial, or missing.
Review tests. Inspect the supplied commits for test changes. Use unordered
bullets in the assessment/comment:
- New tests: file path, test function/class names, and what each case checks.
- Modified tests: file path, test names, and what behavior or expectation changed.
- No tests: state that no test changes were included and recommend whether that was
reasonable or a potential review oversight.
You may still run committed tests when useful, but prefer probes that add issue
specific signal beyond "the merged tests pass." Follow Warp policy locally:
unique WARP_CACHE_PATH, uv run, and rebuild native
libraries when warp/native/ changes require it. Do not put local verification
commands in the public issue comment.
Probe issue-shaped behavior. When the issue has a repro, expected behavior,
or clear boundary conditions, create one or more temporary scripts that exercise
the reported behavior on the supplied commit/worktree. These are transient
working artifacts; do not add them to the repo unless the user explicitly asks.
Prefer probes that:
- Recreate the original repro as directly as possible.
- Vary only issue-relevant dimensions likely to expose blind spots.
- Assert observable behavior, not just absence of a crash.
- Run outside the test suite when the issue is about script, import, process,
runtime, environment, cache, or packaging context.
- Use
uv run and a unique WARP_CACHE_PATH for Warp commands.
Avoid probes that:
- Merely rerun a committed test without adding issue-specific signal.
- Expand into broad fuzzing or unrelated API compatibility.
- Depend on timing or local environment details unless the issue is
environment-specific.
Classify probe results in the private assessment:
passes: supports closure or progress assessment.
fails in scope: blocks closure or changes recommendation to comment-only
/ keep open.
inconclusive: mention as residual risk, but do not overstate it.
not run: explain why, such as unavailable hardware, excessive cost, or
insufficient repro detail.
Decide action.
close: every reported symptom and expected behavior is addressed, relevant
comments are covered, test coverage is adequate or the lack of tests is
reasonable for the change, and behavioral probes pass or were not feasible for
a defensible reason.
comment-only: supplied commits are relevant progress, but the issue should remain
open.
keep open: gaps remain and a public comment would not add value.
no public update: commits are peripheral, speculative, or already covered.
Include a requester-verification recommendation. If the issue author appears
external to NVIDIA, prefer a resolution/progress comment that leaves the issue open
so they can verify. If the issue author matches the current requesting user, closure
is appropriate once the requirements are addressed; verify that identity from local
user guidance, GitHub authenticated user data, or explicit user input rather than
hardcoding a username.
Draft before writing. Output:
Assessment: <close | comment-only | keep open | no public update>
Issue <#>: <title>
- Requested outcome: <...>
- Commits: <primary full SHA(s)>; supporting: <full SHA(s) or none>
- What changed: <behavior summary>
- Test coverage:
- <new/modified/no tests detail>
- Behavioral probes:
- <required private probe summary: passes/fails in scope/inconclusive/not run, behavior checked, and issue relevance>
- Beyond issue scope: <extra changes or none>
- Requester verification: <close now | leave open for requester verification and why>
- Recommendation: <action and why>
Spotted Improvements:
- <actionable follow-up or none>
Draft comment:
<exact public comment; include behavioral probes only when useful for public clarity>
Confirm whether to post this comment to <#>. If closure is recommended, also
confirm whether to close <#> as completed.
Comment Shape
For closure, start with:
This is addressed by <full-sha>.
For progress/comment-only updates, start with:
Progress update: <full-sha> landed <summary>.
Then explain what changed in issue terms, mention supporting commits if useful, and
state whether the issue should remain open. Mention docs/CHANGELOG-only commits only
as supporting metadata. Include Spotted Improvements only for actionable follow-up
work. If leaving an externally filed issue open for requester verification, say that
directly. Drop empty sections.
Include test coverage as unordered bullets. Name changed test files and test functions.
If no tests changed, say whether that is reasonable for the commit type or a potential
oversight.
Behavioral probe summaries are required in the private assessment. In the public
comment, mention probes only when they clarify the outcome, explain residual risk, or
help the requester verify the fix. When included publicly, summarize checked behavior
and result without local commands, cache paths, temp paths, or worktree paths.
Write in a factual maintainer voice, usually third person: "The change updates...",
"Coverage was added...". Keep wording direct and precise, adding detail when it
clarifies impact, scope, test coverage, remaining gaps, beyond-scope work, or follow-up.
Do not restate the commit message mechanically; use the comment to augment the commit
with issue-specific context.
Write Actions
After explicit confirmation, post the issue-specific comment. Close only issues that
were both recommended for closure and explicitly confirmed for closure. Verify final
GitHub state and report comment IDs, URLs, state, state reason, and close time.
If any write fails, stop and report the exact failure. Do not retry against a different
issue by guess.
Red Flags
- About to call a GitHub write API before showing the draft.
- The draft implies completion for a progress update.
- The issue has multiple requirements and the commits cover only one.
- The commit touches
warp/native/ and rebuild state was not considered.
- The only evidence is the commit message.
- The issue has a runnable repro but the assessment only reruns committed tests.
- The private assessment omits behavioral probe results or a reason probes were not run.
- The draft contains
/tmp/, WARP_CACHE_PATH, or local paths.
Maintenance
When editing the Codex-side project skill, sync the mirrored Claude copy before
committing:
uv run tools/pre-commit-hooks/sync_skills.py --from codex
Source: NVIDIA/warp — distributed by TomeVault.
1---2name: warp-closing-issue3description: Use when the user provides Warp commit SHA(s) and GitHub issue number(s) to assess, draft issue comments, post progress updates, or recommend whether issue threads should stay open or close.4---56# Warp Closing Issue78## Overview910Assess user-supplied Warp commits against user-supplied GitHub issues. Produce a11scoped assessment and draft comment first; public GitHub writes require explicit12confirmation after the user sees the exact target issues and comment body.1314## Hard Rules1516- Stay within the user-supplied commit SHA(s) and issue number(s). Do not search for17 extra commits or issues; ask the user for more SHAs/issues if scope is incomplete.18- Read the issue body and comments, not just the title.19- Treat commit messages as orientation, not proof. Inspect diffs and changed files.20- Commenting is not always closure. Supported actions are `close`, `comment-only`,21 `keep open`, and `no public update`.22- Never post comments or close issues before showing the assessment and exact draft.23- Public comments use full 40-character SHAs as plain text for GitHub auto-linking.24- Keep local execution noise out of public comments: no `WARP_CACHE_PATH`,25 `/tmp/...`, local worktree paths, or shell setup.26- Do not use a local test command as the public test note. Public comments describe27 test coverage changes in the commit set: new tests, modified tests, or no tests.28- Do not treat passing committed tests as sufficient behavioral verification when29 the issue includes a runnable repro or clear expected behavior. When feasible,30 write and run small temporary probes inspired by the issue.31- Require behavioral probe summaries in the private assessment. Public comments may32 mention probes only when they clarify the recommendation, remaining risk, or33 requester-facing behavior.3435Optional command snippets live in [commands.md](references/commands.md). Prefer the36GitHub app/MCP connector when it fits; `gh` is installed and authenticated here and is37fine for gaps or simple issue operations.3839## Checklist40411. **Resolve scope.** Record supplied commits, issues, and requested outcome, if any:42 closure assessment, progress update, comment only, or unspecified.43442. **Gather evidence.** For each issue, extract author, author association, reported45 symptoms, reproducers, expected behavior, follow-up comments, maintainer asks, and46 current state. For each commit, inspect message, diff, tests, docs/CHANGELOG47 changes, and touched areas such as `warp/native/`.48493. **Classify commits.**5051 | Type | Meaning |52 | --- | --- |53 | Behavioral fix | Changes the code path behind the issue. |54 | Test-only | Adds confidence, but cannot close by itself. |55 | Docs/CHANGELOG-only | Supporting/progress metadata, not fix evidence. |56 | Follow-up | Completes or corrects earlier issue-linked work. |57 | Beyond scope | Related cleanup or broader behavior worth surfacing. |58594. **Map requirements.** For each issue requirement, state commit evidence, test60 coverage evidence, behavioral probe evidence if available, and status:61 addressed, partial, or missing.62635. **Review tests.** Inspect the supplied commits for test changes. Use unordered64 bullets in the assessment/comment:65 - New tests: file path, test function/class names, and what each case checks.66 - Modified tests: file path, test names, and what behavior or expectation changed.67 - No tests: state that no test changes were included and recommend whether that was68 reasonable or a potential review oversight.6970 You may still run committed tests when useful, but prefer probes that add issue71 specific signal beyond "the merged tests pass." Follow Warp policy locally:72 unique `WARP_CACHE_PATH`, `uv run`, and rebuild native73 libraries when `warp/native/` changes require it. Do not put local verification74 commands in the public issue comment.75766. **Probe issue-shaped behavior.** When the issue has a repro, expected behavior,77 or clear boundary conditions, create one or more temporary scripts that exercise78 the reported behavior on the supplied commit/worktree. These are transient79 working artifacts; do not add them to the repo unless the user explicitly asks.8081 Prefer probes that:82 - Recreate the original repro as directly as possible.83 - Vary only issue-relevant dimensions likely to expose blind spots.84 - Assert observable behavior, not just absence of a crash.85 - Run outside the test suite when the issue is about script, import, process,86 runtime, environment, cache, or packaging context.87 - Use `uv run` and a unique `WARP_CACHE_PATH` for Warp commands.8889 Avoid probes that:90 - Merely rerun a committed test without adding issue-specific signal.91 - Expand into broad fuzzing or unrelated API compatibility.92 - Depend on timing or local environment details unless the issue is93 environment-specific.9495 Classify probe results in the private assessment:96 - `passes`: supports closure or progress assessment.97 - `fails in scope`: blocks closure or changes recommendation to `comment-only`98 / `keep open`.99 - `inconclusive`: mention as residual risk, but do not overstate it.100 - `not run`: explain why, such as unavailable hardware, excessive cost, or101 insufficient repro detail.1021037. **Decide action.**104 - `close`: every reported symptom and expected behavior is addressed, relevant105 comments are covered, test coverage is adequate or the lack of tests is106 reasonable for the change, and behavioral probes pass or were not feasible for107 a defensible reason.108 - `comment-only`: supplied commits are relevant progress, but the issue should remain109 open.110 - `keep open`: gaps remain and a public comment would not add value.111 - `no public update`: commits are peripheral, speculative, or already covered.112113 Include a requester-verification recommendation. If the issue author appears114 external to NVIDIA, prefer a resolution/progress comment that leaves the issue open115 so they can verify. If the issue author matches the current requesting user, closure116 is appropriate once the requirements are addressed; verify that identity from local117 user guidance, GitHub authenticated user data, or explicit user input rather than118 hardcoding a username.1191208. **Draft before writing.** Output:121122 ```markdown123 Assessment: <close | comment-only | keep open | no public update>124125 Issue <#>: <title>126 - Requested outcome: <...>127 - Commits: <primary full SHA(s)>; supporting: <full SHA(s) or none>128 - What changed: <behavior summary>129 - Test coverage:130 - <new/modified/no tests detail>131 - Behavioral probes:132 - <required private probe summary: passes/fails in scope/inconclusive/not run, behavior checked, and issue relevance>133 - Beyond issue scope: <extra changes or none>134 - Requester verification: <close now | leave open for requester verification and why>135 - Recommendation: <action and why>136137 Spotted Improvements:138 - <actionable follow-up or none>139140 Draft comment:141 <exact public comment; include behavioral probes only when useful for public clarity>142143 Confirm whether to post this comment to <#>. If closure is recommended, also144 confirm whether to close <#> as completed.145 ```146147## Comment Shape148149For closure, start with:150151```markdown152This is addressed by <full-sha>.153```154155For progress/comment-only updates, start with:156157```markdown158Progress update: <full-sha> landed <summary>.159```160161Then explain what changed in issue terms, mention supporting commits if useful, and162state whether the issue should remain open. Mention docs/CHANGELOG-only commits only163as supporting metadata. Include `Spotted Improvements` only for actionable follow-up164work. If leaving an externally filed issue open for requester verification, say that165directly. Drop empty sections.166167Include test coverage as unordered bullets. Name changed test files and test functions.168If no tests changed, say whether that is reasonable for the commit type or a potential169oversight.170171Behavioral probe summaries are required in the private assessment. In the public172comment, mention probes only when they clarify the outcome, explain residual risk, or173help the requester verify the fix. When included publicly, summarize checked behavior174and result without local commands, cache paths, temp paths, or worktree paths.175176Write in a factual maintainer voice, usually third person: "The change updates...",177"Coverage was added...". Keep wording direct and precise, adding detail when it178clarifies impact, scope, test coverage, remaining gaps, beyond-scope work, or follow-up.179Do not restate the commit message mechanically; use the comment to augment the commit180with issue-specific context.181182## Write Actions183184After explicit confirmation, post the issue-specific comment. Close only issues that185were both recommended for closure and explicitly confirmed for closure. Verify final186GitHub state and report comment IDs, URLs, state, state reason, and close time.187188If any write fails, stop and report the exact failure. Do not retry against a different189issue by guess.190191## Red Flags192193- About to call a GitHub write API before showing the draft.194- The draft implies completion for a progress update.195- The issue has multiple requirements and the commits cover only one.196- The commit touches `warp/native/` and rebuild state was not considered.197- The only evidence is the commit message.198- The issue has a runnable repro but the assessment only reruns committed tests.199- The private assessment omits behavioral probe results or a reason probes were not run.200- The draft contains `/tmp/`, `WARP_CACHE_PATH`, or local paths.201202## Maintenance203204When editing the Codex-side project skill, sync the mirrored Claude copy before205committing:206207```bash208uv run tools/pre-commit-hooks/sync_skills.py --from codex209```210211---212> Source: [NVIDIA/warp](https://github.com/NVIDIA/warp) — distributed by [TomeVault](https://tomevault.io).213<!-- tomevault:4.0:skill_md:2026-06-26 -->