GstCodecTimeStamper (parent of h264timestamper) queues stream start events?

I have existing unit tests that pass until I insert the h264timestamper into my pipeline (to address missing timestamps on an h264 RTP stream). The test pushes a stream start and segment into the pipeline and our downstream element (i.e., beyond the h264timestamper) uses these events for some of its internal state management. When the h264timestamper is in the pipeline, the test fails because stream start never reaches our element. If I remove the h264timestamper, the test passes.

I’ve done some digging and ended up at the base class object file, gstcodectimestamper.c, and it looks like because stream start is a serialized event, it is queued up until a buffer arrives (line 373, GStreamer 1.22.12).

This seems to be unique behavior given that all of the intermediate elements in my pipeline pass the stream start and segment events without queuing them up for the first buffer to arrive.

Is this a bug?