Kyle Brown
d6eefb26a6
Add bounded plugin measurement analytics ( #38239 )
...
## What changed
- Add `PluginMeasurementsInput` and `PluginMeasurementRow`, plus an analytics
client method for recording batches and checking whether analytics are enabled.
- Emit each valid row as a `codex_plugin_measurement_event` with thread, turn,
item, plugin, execution, and operation context.
- Bound batches at 100 rows and reject non-finite values, invalid identifiers,
and rows with more than eight dimensions.
- Treat measurement events as plugin events when routing API-key analytics.
## Testing
- Cover batch limits, row filtering, serialized event payloads, and API-key
plugin-event routing.
GitOrigin-RevId: f949ed06246ee1e22466df2660076f2d4f556444
2026-08-12 19:14:09 +00:00
..
2026-07-29 13:53:15 +00:00
2026-08-12 19:14:09 +00:00
2026-07-29 13:53:15 +00:00
2026-08-12 13:33:01 +00:00
2026-08-04 15:23:43 +00:00
2026-08-12 05:20:32 +00:00
2026-07-30 19:47:30 +00:00
2026-08-10 03:28:19 +00:00
2026-07-29 18:29:26 +00:00
2026-08-10 18:44:58 +00:00
2026-08-10 01:39:55 +00:00
2026-07-30 21:49:53 +00:00
2026-08-11 03:39:02 +00:00
2026-08-11 19:16:15 +00:00
2026-08-12 00:01:01 +00:00
2026-08-11 01:05:48 +00:00
2026-08-05 18:09:26 +00:00
2026-08-11 23:40:07 +00:00
2026-08-11 20:40:26 +00:00
2026-08-11 20:40:26 +00:00
2026-08-05 16:09:01 +00:00
2026-08-12 01:45:20 +00:00
2026-07-30 21:49:53 +00:00
2026-08-07 18:33:46 +00:00
2026-08-12 16:50:23 +00:00
2026-08-04 22:58:02 +00:00
2026-08-12 12:53:07 +00:00
2026-08-07 00:23:38 +00:00
2026-08-03 11:39:51 +00:00
2026-08-12 18:11:13 +00:00
2026-08-11 19:58:10 +00:00
2026-08-12 19:09:48 +00:00
2026-08-07 11:30:17 +00:00
2026-08-11 19:16:15 +00:00
2026-08-11 17:47:22 +00:00
2026-08-09 03:05:10 +00:00
2026-08-12 15:17:54 +00:00
2026-08-11 19:30:12 +00:00
2026-08-12 17:49:36 +00:00
2026-08-07 19:56:29 +00:00
2026-07-31 21:37:56 +00:00
2026-08-10 15:50:53 +00:00
2026-08-11 19:30:12 +00:00
2026-08-10 11:22:55 +00:00
2026-08-07 18:33:46 +00:00
2026-08-10 22:12:14 +00:00
2026-08-11 15:52:59 +00:00
2026-08-12 13:27:57 +00:00
2026-08-12 18:11:13 +00:00
2026-08-11 19:30:12 +00:00
2026-08-05 14:20:59 +00:00
2026-08-04 22:07:56 +00:00
2026-08-05 20:03:13 +00:00
2026-08-11 18:21:34 +00:00
2026-07-30 04:26:36 +00:00
2026-08-11 19:26:41 +00:00
2026-08-10 14:25:13 +00:00
2026-08-12 18:11:13 +00:00
2026-08-07 18:33:46 +00:00
2026-08-12 00:01:01 +00:00
2026-08-12 05:20:32 +00:00
2026-08-06 03:11:42 +00:00
2026-08-11 17:47:22 +00:00
2026-08-10 15:43:10 +00:00
2026-08-08 16:58:26 +00:00
2026-08-08 16:58:26 +00:00
2026-08-12 18:04:20 +00:00
2026-08-11 19:30:12 +00:00
2026-08-04 03:49:53 +00:00
2026-08-11 19:16:15 +00:00
2026-08-11 19:30:12 +00:00
2026-08-05 20:03:13 +00:00
2026-08-12 16:33:32 +00:00
2026-08-11 23:31:26 +00:00
2026-08-11 22:22:18 +00:00
2026-08-12 13:27:57 +00:00
2026-08-12 19:09:48 +00:00
2026-08-12 13:27:57 +00:00
2026-07-28 20:49:22 +00:00
2026-07-29 13:53:15 +00:00
2026-08-11 23:40:07 +00:00