pub(crate) fn performance_observer_observe(
it: &mut Interp,
this: Value,
a: &[Value],
) -> Result<Value, Value>Expand description
observer.observe({entryTypes: [...]})(複数種別・buffered非対応の
従来形式)。監視対象の種別を記録し、performance._observers へ自身を
登録する(同一インスタンスの重複登録は無視する)。
observer.observe({type: '...', buffered: true})(単一種別+既存
エントリの即時配信に対応する新形式)が丸ごと未対応だった(entryTypes
しか読んでおらず、type単体で呼ぶと_entry_typesが空配列のまま登録
され、以後どんなエントリが記録されても一切発火しない黙殺バグだった。
2026-07-17 発見・実装)。buffered: true時はperformance._entries
から既存の一致エントリを即座に1回配信する(perf_notify_observersと
同じ{_entries, getEntries}ラッパー形状を再利用)。