cilium#47821: the Helm chart wrote prometheus.io/scrape and prometheus.io/port next to the user's own annotation map, so setting either key produced a duplicate YAML key and render order decided the winner. For the Hubble metrics service and both hubble-relay objects the chart default came last and quietly won, which is why annotation-based scraping could not be turned off. PR #47850 renders both keys through a helper that skips anything the user already set, so each key appears once and the user value wins. No new Helm values, and checked with helm template across the default, override, and ServiceMonitor paths.
hubble#1215: the datapath reports an extra error code on drops, for example which FIB lookup failed. cilium monitor printed it, but Hubble's parser threw it away. PR #46663 adds two Flow fields, one for the raw value and one for the readable text, and the printer now prefers the text. The fields are additive, so older agents and clients look the same as before.
hubble#1283: the server already had a reply filter, there were just no CLI flags for it. Added --reply and --not-reply as mutually exclusive flags.
cilium#26521 asked for the request path on Hubble HTTP metrics and was closed in 2023, because a raw path label means a new time series for every ID. CFP-26521 works around that: the label is the template that matched, not the path, so the set of values is fixed when config loads. With no templates set, the metrics are unchanged.
cilium#46107: OKE with VCN-Native Pod Networking is Oracle's recommended CNI mode, and Cilium's docs did not mention Oracle at all. Chaining already worked, because the pod side is a plain veth pair like the AWS VPC CNI. PR #46116 writes it up, tested on a live cluster, including the uninstall trap: helm uninstall leaves 05-cilium.conflist behind, so new pods hang in ContainerCreating until you remove it on every node.