Skip to content
WP Visibility

Review and control

Approve or Reject a Proposal

A queued change waits in WP Visibility → Review queue with a before and after diff. Approve applies it, reject discards it, and both work in bulk and from the keyboard.

Updated September 27, 2026

Docs

Open WP Visibility → Review queue, read the diff, and click Approve or Reject. Approve applies the change through the same write code a direct assistant write uses; Reject marks the proposal rejected and changes nothing. Nothing in the queue touches the site until it is approved.

Where the queue is

The queue appears in the menu once the Autopilot module is on. When proposals are waiting, both the WP Visibility menu item and its Review queue entry show a count. The count covers proposals that need review, including stale ones.

The page has two tabs. Proposals is the review surface. Activity log is the record of ability calls, covered in Read the Activity Log. When the Agent module is on, a status bar above both shows the assistant access state (Active or Paused), a Pause agent button (Resume agent while paused), the current guard mode, this hour’s agent writes against the per-client limit, and the last recorded activity.

Reading a proposal

Each card names its target, for example post #42 followed by the post’s SEO title when one is set, plus its status, its source, when it was created, and any note the assistant supplied. Treat the source and the note as context that came with the request, not proof of who wrote it. Post targets include an Edit post link.

Below that is a table with Field, Before and After. Before is the target’s current value, read when the queue loaded; changed words are struck through on the left and underlined on the right. Long values such as an llms.txt body fold behind Show more. If the assistant gave a reason, it appears as Agent rationale.

Approve

Approve checks the proposal against the current state of its target and applies it. If the target changed since the proposal was written, the plugin stops instead and marks the proposal stale; see below. After a successful approval the confirmation offers Undo for a moment, and the proposal, now listed under Show → Applied, has a Revert this change action, described in Undo an Applied Change.

Reject

Reject asks you to confirm, then marks the proposal rejected. The proposed values are not applied and the target is untouched. Rejected proposals stay visible under Show → Rejected until housekeeping deletes them. Housekeeping runs when the queue is listed and removes resolved proposals created more than 90 days ago, plus the oldest ones whenever more than 500 resolved proposals pile up; the queue is not an archive.

Stale proposals

At proposal time the plugin stores a fingerprint of the target’s current state and checks it again on approval. For a post, that fingerprint covers all of its WP Visibility SEO fields, not only the ones the proposal changes. A mismatch means someone or something changed the target in between, so approval stops and the card shows Refresh diff. Refreshing sets a new baseline from the current values and returns the proposal to pending. Read the refreshed diff before approving; the proposed values are the same, but the values they replace may not be.

Bulk actions

Tick the box on each card, or use Select all needing review to tick every pending or stale card on the current page, then Approve selected or Reject selected and confirm. Every proposal in the batch goes through the same checks as a single approval, and stale rows are skipped and reported rather than applied.

From the keyboard

On the Proposals tab, j and k move between proposals, a approves the focused one, r rejects it after the usual confirmation, x ticks its box. A hint line above the list names the keys, a and r are also printed on their buttons, and none of them fire while you are typing in a field.

From the command line

wp visibility proposals list
wp visibility proposals approve 123
wp visibility proposals reject 123

The same checks apply. The command line has no refresh action, so refresh a stale proposal on the queue screen. An administrator credential can also approve through the plugin’s REST route; approval is not something only the browser can do, so the user behind each credential is what to control. The approve-proposal ability, which would let a connected assistant approve, is off by default.