The help and exit-42 cause texts still said "rebase-review gate" after the display name was settled; the generated reference and CONTRACT row follow. Files changed: - CHANGES.md - VERSION - docs/reference/commands/git.md - docs/reference/exit-codes.md - tools/CONTRACT.md - tools/chemenu/commands/git_publish.py Co-Authored-By: Claude Code <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
42 lines
2.2 KiB
Markdown
42 lines
2.2 KiB
Markdown
# Exit codes and gates
|
|
|
|
Which `wikitool` commands can stop and wait for a person - exit 42 - and for which gate, generated
|
|
from the command records.
|
|
|
|
<!-- wikitool:reference-exit-codes -->
|
|
What each exit code means, and how a caller reacts to it, is [AGENTS.md § Tool error contract](../../AGENTS.md#tool-error-contract). What a gate is and why it is enforced in code is [AGENTS.md § Gates](../../AGENTS.md#gates). This page lists which commands declare a gate, and every cause for which a command exits 42.
|
|
|
|
## Gates by command
|
|
|
|
### guideline-push
|
|
|
|
- [`export guidelines`](commands/guideline-export.md#export-guidelines)
|
|
|
|
### mass-update
|
|
|
|
- [`publish`](commands/git.md#publish)
|
|
|
|
### publish-remote
|
|
|
|
- [`publish`](commands/git.md#publish)
|
|
|
|
### rebase-review
|
|
|
|
- [`sync`](commands/git.md#sync)
|
|
- [`publish`](commands/git.md#publish)
|
|
|
|
### upload-review
|
|
|
|
- [`upload accept`](commands/raw-material-and-uploads.md#upload-accept)
|
|
|
|
## Exit 42 causes
|
|
|
|
- [`new`](commands/pages.md#new): new project: The provider cannot create the project itself (Super Productivity's `access: "api"`); the output says what a human has to create
|
|
- [`upload accept`](commands/raw-material-and-uploads.md#upload-accept): Upload Review Gate: `--confirm` is absent or does not match the manifest's current token
|
|
- [`sync`](commands/git.md#sync): Rebase-Review Gate: `<remote>/<branch>` moved and both sides changed the same file, generated files aside; the output lists the upstream commits, the overlapping files and their diff
|
|
- [`publish`](commands/git.md#publish): Mass-Update Gate: `--threshold` (default 10) or more counted files would be committed, or the `--confirm` token does not match this changeset
|
|
- [`publish`](commands/git.md#publish): Rebase-Review Gate: `<remote>/<branch>` moved and both sides changed the same file; the output lists the upstream commits, the overlapping files and their diff
|
|
- [`publish`](commands/git.md#publish): Publish-Remote Gate: `.wikitool-remotes.json` exists and the push URL of `--remote` is not listed in it, or `--remote` resolves to no push URL
|
|
- [`export guidelines`](commands/guideline-export.md#export-guidelines): Guideline Push Gate: `--push` without `--confirm`, or with a token that does not match the current set of targets
|
|
<!-- /wikitool:reference-exit-codes -->
|