- **Protected background assignment runs now settle after their output is captured (#4807).** An assignment run saved its result without the completion time its protected capture recorded, so recovery found the saved and captured times different on every pass. The run stayed "running", retrying every 30 seconds and logging "retained completion timestamp differs from staged result". Assignments now save the captured completion time, as chat and webhook runs already do. A run saved before this fix, with no time, settles only when its terminal journal record already exists and its exit code matches the capture. A different time, a different exit code or a missing record is still refused.