Wenn ein _neuer_ Beitrag, und somit ein neues Item dazukommt, aktualisiere ich <pubDate>. Wenn ich ein bestehendes Item ändere, dann aktualisiere ich <lastBuildDate>.
Habe ich das so richtig verstanden?
lastBuildDate aktualisierst du bei jeder Änderung ("The last time the content of the channel changed."). Auch neue Einträge sind eine Änderung.
Für pubDate wird in der Spezifikation das Datum einer Zeitungsausgabe als Beispiel gegeben ("the New York Times publishes on a daily basis, the publication date flips once every 24 hours: Sat, 07 Sep 2002 00:00:01 GMT"). Dies kann man so verstehen, dass a) der komplette Inhalt einmal am Tag ausgetauscht und b) in der Regel auch nur einmal am Tag überhaupt etwas Neues passiert, wie das eben bei einer papiernen Zeitung so ist, die einmal am Tag herausgegeben wird (to publish -> publication date -> pubDate).
Auf Netzangebote mit einem konstanten Datenstrom kann man das nur schlecht beziehen, dort gibt es keinen klassischen Veröffentlichungstermin wie bei einer Zeitung. Das Datum des letzten Eintrags als Veröffentlichungsdatum des gesamten Datenstroms auszugeben, ist eine falsche oder zumindest in die Irre führende Aussage – und außerdem überflüssig, denn es steht ja im Eintrag selbst.
Und eben weil das überflüssig ist, findest du pubDate für channel in der Spezifikation auch unter der Überschrift Optional channel elements. Optional. Lass den Eintrag weg, wenn du keinen festen Veröffentlichungstermin hast.