Gate quality finding (Medium): _set read mgr.state.goal regardless of status, so `/goal clear` (or a done goal) followed by `/goal <text>` printed "(replaced the previous goal) was: ..." about a goal that was already gone. Use mgr.has_goal() (active/paused) to decide what counts as replaced.