01 / FEED FOUNDATIONSChoose a format that fits your consumers
Begin by naming the job of the stream. A publication feed, a complete snapshot, and a sequence of change events need different consumer behavior. Choose a representation your intended readers understand, then document the information that representation must preserve. Keep format selection separate from promises about delivery speed or historical completeness.
02 / FEED FOUNDATIONSKeep item identity stable across revisions
A record should remain recognizable when its title or display link changes. Preserve the source identity and its item identifier as separate values. Decide whether a revision replaces the current representation or becomes part of an accessible history. Test the same item twice before adding more complicated ingestion rules.
03 / FEED FOUNDATIONSSeparate publication time from observation time
A source publication time and the moment your worker found the record answer different questions. Keep them separate, especially when importing older items. Represent missing information explicitly instead of creating a new date. Make the clock used for sorting or alerting visible enough that another developer can explain the result.
Build a tiny reading pipeline
Choose one source and define the normalized record on paper. Import an item, revise its title, and import it again. Then remove its publication date and repeat the test. A useful first version can explain all three outcomes without treating every change as a new object. Keep the storage and presentation layers small enough to inspect before introducing more sources.