This matches what I've seen with agents touching enterprise logistics integrations. The "diff, not payload" point is the one people skip, and it's the one that actually matters. A JSON blob gets rubber-stamped; a before/after field comparison gets read.
One thing I'd add to the envelope: a freshness window on the evidence. An agent can propose a technically correct change against data that's already stale by the time a human gets to the approval queue. Curious how you're handling review latency: does the approval itself expire if nobody acts on it in time.