50 lines
1.4 KiB
Markdown
50 lines
1.4 KiB
Markdown
---
|
|
description: Signal work complete and submit to merge queue
|
|
allowed-tools: Bash(gt done:*), Bash(git status:*), Bash(git log:*), Bash(git add:*), Bash(git commit:*), Bash(git push:*), Bash(bd close:*)
|
|
argument-hint: [--status COMPLETED|ESCALATED|DEFERRED] [--pre-verified]
|
|
---
|
|
|
|
# Done — Submit Work to Merge Queue
|
|
|
|
Signal that your work is complete and ready for the merge queue.
|
|
|
|
Arguments: $ARGUMENTS
|
|
|
|
## Pre-flight Checks
|
|
|
|
Before running `gt done`, verify your work is ready:
|
|
|
|
```bash
|
|
git status # Must be clean (no uncommitted changes)
|
|
git log --oneline origin/main..HEAD # Must have at least 1 commit
|
|
```
|
|
|
|
If there are uncommitted changes, commit them first:
|
|
```bash
|
|
git add <files>
|
|
git commit -m "<type>: <description>"
|
|
```
|
|
|
|
## Execute
|
|
|
|
Run `gt done` with any provided arguments:
|
|
|
|
```bash
|
|
gt done $ARGUMENTS
|
|
```
|
|
|
|
**Common usage:**
|
|
- `gt done` — Submit completed work (default: --status COMPLETED)
|
|
- `gt done --pre-verified` — Submit with pre-verification (you ran gates after rebase)
|
|
- `gt done --status ESCALATED` — Signal blocker, skip MR
|
|
- `gt done --status DEFERRED` — Pause work, skip MR
|
|
|
|
**If the bead has nothing to implement** (already fixed, can't reproduce):
|
|
```bash
|
|
bd close <issue-id> --reason="no-changes: <brief explanation>"
|
|
gt done
|
|
```
|
|
|
|
This command pushes your branch, submits an MR to the merge queue, and transitions
|
|
you to IDLE. The Refinery handles the actual merge. You are done after this.
|