Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Understanding the approval workflow

What happens after validation depends on how the administrator has configured the approval mode:

Auto-approve (approval-mode: auto)

Clean pushes (no validation failures) are immediately approved and forwarded. You see output like the example above — no human reviewer is needed. This is the typical setting for solo developers or teams that use validation as a guardrail without a manual review step.

Review required (approval-mode: ui)

After validation passes, the push enters a PENDING state and waits for a reviewer to approve it in the dashboard. You will see:

remote: 🔗  View push record: http://fogwall.corp.example.com/dashboard/push/4d6196fb-...
remote: ⚠  Push requires review. Waiting for approval...
remote: 🔑  Push ID: 4d6196fb-4cc3-47d1-ac6d-17fbcc5f71d3
remote:    Review at: http://fogwall.corp.example.com/dashboard/push/4d6196fb-...
remote: Awaiting review... (5s elapsed, ~1794s remaining)
remote: .
remote: Awaiting review... (10s elapsed, ~1789s remaining)

The push command stays open, printing keepalive dots while it waits. Once a reviewer approves in the dashboard, the proxy forwards the push and the command completes:

remote: ✅  Push approved by reviewer
remote: Updating references: 100% (1/1)
remote: 🔗  Forwarding to https://github.com/myorg/myrepo.git...
remote:   Pushing 1 ref(s) to upstream...
remote:   ✅  refs/heads/my-feature -> OK
remote: ✅  Forwarding complete
To http://fogwall.corp.example.com/server/github.com/myorg/myrepo.git
 * [new branch]      my-feature -> my-feature

If no approval comes, your git client will eventually time out. You can re-run the push — it will resume waiting for approval on the existing push record rather than creating a new one.

Attestation questions

The administrator may configure attestation questions that you must answer before a push is approved. These appear in the dashboard push record view, not in the terminal. A reviewer (or yourself, if you have SELF_CERTIFY permission for the repo) answers them as part of the approval step. A question may carry one or more linked references (e.g. a link to the internal policy the attestation is checking against) — these render as clickable links alongside the question so reviewers can check the source policy before attesting.