and only attaches block and header inbound protocols
Should say "outbound protocols". IOW, if delay_inbound is set we don't accept inbound connections or attach outbound protocols (to outbound session channels) until the confirmed chain is current or at maximum configured height ("recent").
(edited)