f756933879
- ReplyPushLoop: dedicated scheduled loop for nudging the primary - Package-private decide() method for pure decision logic (unit-testable) - Status-gated injection via AgentControl.status().injectable() - Bounded reminders (cap + backoff), idempotent per target - Wire into MessageService.reply after inbox.publish on no-waiter branch - Wire into Bridged.main (constructor + shutdown hook) - Primary config record updated with pushReminders/pushBackoffMs knobs - Tests: decide() matrix, nudge injection, idempotency, cap enforcement