In Chromium the behavior is inherited from ElementTiming (and sharing some logic with ICP/LCP). An element will only report one time. For images, it is when the load is complete and we get the paint for that. For text it only reports once for the text aggregator.
LCP defines that explicitely https://www.w3.org/TR/largest-contentful-paint/#sec-report-largest-contentful-paint
ICP has some open questions about what to do here.
As Container Timing is inspired on the idea of LCP, we should likely explicitely state in the specification that the elements will only report once, in the same way LCP does (or refer somehow to that part of LCP specification).
In Chromium the behavior is inherited from ElementTiming (and sharing some logic with ICP/LCP). An element will only report one time. For images, it is when the load is complete and we get the paint for that. For text it only reports once for the text aggregator.
LCP defines that explicitely https://www.w3.org/TR/largest-contentful-paint/#sec-report-largest-contentful-paint
ICP has some open questions about what to do here.
As Container Timing is inspired on the idea of LCP, we should likely explicitely state in the specification that the elements will only report once, in the same way LCP does (or refer somehow to that part of LCP specification).