[[command]]
name = "jjpr"
description = "Manages stacked pull requests for Jujutsu repositories on GitHub, GitLab, and Forgejo. The submit subcommand pushes branches and creates/updates PRs via forge APIs over the network. The merge subcommand merges PRs from the bottom of a stack upward, modifying remote repository state. The status subcommand is read-only, querying PR status from the forge API. The --dry-run flag on submit and merge simulates the operation without making changes. The auth subcommand manages API tokens locally."
url = "https://github.com/michaeldhopkins/jjpr"
bare = true
bare_flags = ["--help", "--version", "-V", "-h"]

[[command.sub]]
name = "help"
allow_all = true

[[command.sub]]
name = "status"
standalone = [
    "--dry-run", "--help", "--no-fetch",
    "-h",
]

[[command.sub]]
name = "auth"

[[command.sub.sub]]
name = "test"
standalone = ["--help", "-h"]

[[command.sub.sub]]
name = "setup"
standalone = ["--help", "-h"]

[[command.sub.sub]]
name = "help"
allow_all = true

[[command.sub]]
name = "submit"
guard = "--dry-run"
standalone = [
    "--draft", "--dry-run", "--help", "--no-fetch", "--ready",
    "-h",
]
valued = ["--base", "--remote", "--reviewer"]

[[command.sub]]
name = "merge"
guard = "--dry-run"
standalone = [
    "--dry-run", "--help", "--no-ci-check", "--no-fetch", "--watch",
    "-h",
]
valued = [
    "--base", "--merge-method", "--reconcile-strategy", "--remote",
    "--required-approvals",
]

[[command.sub]]
name = "config"

[[command.sub.sub]]
name = "help"
allow_all = true
