reviews
Usage
Naming a pull request
Every<pull-request> argument takes any of:
A repository and number is resolved to the pull request first, and the command then acts in the organization the pull request was read in. When more than one of your organizations owns a pull request, pass
--org to choose; without it, a pull request named by id is read in the owning organization where you hold a product role, and an ambiguous one may be refused with org_id_required.
Subcommands
With
--json, every command prints the API’s answer as is: a read prints what it read, and an action prints the object it created or changed (the pull request a pr subcommand or reviewer add changed, the thread thread resolve changed, the comment comment or thread reply created). reviewer remove, which the API answers with no body, prints the pull request and the withdrawn reviewer.
aether review list
List one page of the organization’s pull requests, each with its latest review run and the section it sits in:in_review while its newest run reviews, approved when that run’s standing verdict approves the current head, other for the rest. When more follow, the output ends with a Next cursor: line; pass it to --cursor to read the next page.
Without --view, every pull request of a repository the organization has a project for is listed, reviewed or not, newest opened first, and only the open ones unless --pr-state names others. --view reviews keeps the pull requests the organization’s review runs reviewed, newest activity first; --view queue keeps the open ones among them that need you first.
--json, the output is the page itself: {"items": [...], "next_cursor": "..."}, where each item is the pull request aether review get prints and next_cursor is null on the last page.
aether review sections
Count the pull requestsaether review list lists under the same --view and filters, per section, before any section or cursor narrows the list. It takes the list’s flags except --section, --limit and --cursor. An empty section is left out.
aether review get
Show the pull request asaether review list lists it: its state, head and base, section, verdict and findings, where its feedback is dispatched, where you stand on it, the organization it was read in, and its review runs, newest first.
aether review view
Show what the review page holds beyond the pull request: its description, the reviews Aether posted on it (newest first), how many files the reviewed head changed, its previews, and the review rounds since a human last touched it.--json prints each posted review’s guide and inline comments.
aether review stack
Show the tree of open pull requests the pull request is stacked in, from its bottom layer up, each layer indented under the one it is based on. A stack that loops, a layer with two parents, or a stack of more than 64 pull requests in all (forks included, so a bottom layer with 64 children is already too large) is refused withstack_cycle, stack_two_parents or stack_too_large.
aether review file
Print one file at a commit the review read: the pull request’s head or a review run’s.
The file’s text is printed as is. A path with no file at that commit, a binary file and one GitHub will not inline have no text to print, so the command fails naming the kind;
--json prints the answer whatever its kind (text, binary, too_large or not_found).
aether review snapshot
Show the snapshot of the pull request’s current head against its base: each changed file with its status and counts, and whether its content at the head is in the snapshot (text, binary, too_large, or omitted when the snapshot carries none for it). The command reads the pull request first for the head and base the snapshot describes.
The first read of a head starts its capture, so a head not captured yet prints that it is capturing; read it again shortly. A capture that gave up after its retries fails with its error, and aether review snapshot retry <pull-request> starts it again, printing the capture’s state. --json prints the snapshot with every patch and content.
aether review pr
Show the pull request’s merge box: state, author, branches, head, mergeable state, CI and checks, readiness, size, then its check runs, its GitHub reviews and its reviewers (users and teams). Its subcommands change the pull request and print the state GitHub answered with:aether review pr merge <pull-request>merges it with the method you name, pinned to the head you reviewed. It needs push permission on the repository, which is checked against your GitHub identity; the merge itself runs as Aether’s GitHub App.aether review pr close <pull-request>closes it without merging it.aether review pr reopen <pull-request>reopens a closed pull request.aether review pr draft <pull-request>converts it to a draft.aether review pr ready <pull-request>marks a draft ready for review.
close, reopen, draft and ready run through your own GitHub identity: GitHub judges your permission (a pull request’s author may close it without push access), and its refusal is a 422 validation_failed with GitHub’s message.
A merge GitHub refuses (conflicts, failing required checks, branch protection) is also a 409
conflict, with GitHub’s reason, and a caller without push permission is refused with github_push_access_required.
aether review diff
Print the pull request’s changed files with their unified-diff patches, live from GitHub, ingit diff form. A file GitHub gives no patch for (binary or oversized) prints its status and counts instead. When GitHub stops listing at its 3,000-file cap, the command fails and prints nothing rather than part of the diff; --json prints the files GitHub listed, with truncated: true.
aether review thread
Read the pull request’s review threads and act on them. A thread is named by its root comment’s GitHub id, theCOMMENT column of aether review thread list; WHERE is the file, and the line on the base or the head that the thread is anchored to (a file-level thread names the file alone).
aether review thread reply <pull-request> <comment-id> --body <text>replies through your own GitHub identity and prints the comment GitHub created.aether review thread resolve <pull-request> <comment-id>andaether review thread unresolve <pull-request> <comment-id>resolve, or unresolve, the thread holding the comment through your own GitHub identity, printing the thread as GitHub left it. Resolving a resolved thread succeeds, as does unresolving an unresolved one.
aether review dispatches
List the feedback dispatched to the pull request’s dispatch target, whichaether review get names: author_task (the task that published it) or review_run (the fix-on-request review run of a pull request no task published). A pull request with no dispatch target is refused with no_dispatch_target.
aether review dispatch
Hand feedback on the pull request to its dispatch target, which takes review threads only when it is a review run, and print the dispatches it now holds. Pass exactly one of:
A fix request to a review run needs push permission on the repository.
aether review activity
List the pull request’s history newest first: the publishing task’s events, review run boundaries, delivered dispatches, GitHub review verdicts and the merge. It pages by cursor.aether review verification
List the verification recorded against the pull request (tests, typechecks, lints, browser checks and preview sessions), newest first, with the pull request’s current head. An event recorded against another commit is marked(older).
aether review proof
Show everything recorded as proof of the pull request: who may watch it, whether you may curate it, the tasks that published it, its review runs with the verdict each posted and the head it reviewed, and how many findings and capture claims it holds. A pull request named by repository and number is resolved among the proof’s own owners.aether review proof visibility <pull-request> <org|public> sets who may watch the proof: org keeps it to the organization, public opens it to anyone with its link. The creator of a task linked to the pull request, or an admin or owner of its organization, may set it.
aether review run
Ask Aether to review the pull request at its current GitHub head, even an unchanged one. The pull request’s review run reviews again, or a first one starts; repeating the request at one head delivers one instruction.aether review submit
Submit a review through your own GitHub identity, pinned to the head you reviewed (aether review pr shows the head).
aether review comment
Post a top-level comment on the pull request, printing the comment GitHub created.aether review reviewer
Request a review from a GitHub user, or withdraw one, through your own GitHub identity. Requesting one already requested, or withdrawing one not requested, changes nothing.Refusals
A refusal prints the API’s message; with--json it is {"error": {"code": "...", "message": "..."}} with the API’s code. The ones these commands meet most:
A pull request that does not exist, one none of your organizations owns, and one whose repository you can no longer reach on GitHub all answer the same not found.