A proposal is not a change
The Rule Optimizer reads what actually happened across a project's runs and proposes an edit to an agent's rule file. It cannot apply that edit. Approval is a human action, and approving creates a new versioned row rather than mutating the one in place.
That constraint is what makes the whole loop safe to leave running. Every version that ever governed a run is still readable, so a regression can be traced to the exact rule text in force at the time, and rolling back is selecting an earlier version rather than reconstructing one.
Why not let a good proposal apply itself
Because the cost of the two mistakes is not symmetric. A good proposal that waits for approval costs a few hours. A bad proposal that applied itself silently changes how every subsequent run in that project behaves, and the first signal is usually an unrelated failure days later.