Adam Perry @ OpenAI
b386e2d9e3
Add a token-efficient model-facing ID generator ( #59540 )
...
## Why
Decimal IDs of up to three digits fit in a single token. Issuing shorter IDs first keeps identifiers compact in model context.
## What changed
Add `codex-utils-model-facing-id` with deterministic, seed-based ID generation. Each salt prefixes the displayed ID and derives a separate sequence from the session seed. The generator shuffles decimal pools, exhausting `000`–`999` before issuing six-digit suffixes, then expanding in groups of three digits.
Support serializable, versioned snapshots that resume at the next unissued ID, plus suffix-only formatting for protocols that supply their own prefix.
## Testing
Add integration tests for pool exhaustion, stable outputs across pool boundaries, serialization and restore, salt-based seed derivation, invalid snapshots, and wraparound after the last `u64` ordinal.
GitOrigin-RevId: 80ffbf861106980b731d34a61ca2b9448d3bbb0d
2026-11-05 01:34:00 +00:00
..
2026-10-30 18:02:30 +00:00
2026-10-29 17:25:51 +00:00
2026-11-03 15:02:57 +00:00
2026-11-03 12:33:26 +00:00
2026-11-04 19:10:59 +00:00
2026-11-03 23:49:01 +00:00
2026-11-04 22:55:22 +00:00
2026-11-05 00:05:34 +00:00
2026-11-03 04:20:50 +00:00
2026-11-04 22:55:22 +00:00
2026-11-02 16:00:20 +00:00
2026-11-04 21:33:28 +00:00
2026-11-02 17:05:56 +00:00
2026-10-26 20:26:32 +00:00
2026-11-04 00:19:12 +00:00
2026-10-22 19:36:47 +00:00
2026-11-03 23:35:00 +00:00
2026-10-26 21:08:15 +00:00
2026-11-05 00:30:20 +00:00
2026-11-04 23:18:18 +00:00
2026-11-03 23:35:00 +00:00
2026-11-03 23:35:00 +00:00
2026-11-03 23:35:00 +00:00
2026-10-29 16:57:12 +00:00
2026-11-04 09:51:28 +00:00
2026-10-29 01:04:48 +00:00
2026-10-29 01:04:48 +00:00
2026-11-04 19:58:24 +00:00
2026-10-19 21:43:19 +00:00
2026-11-04 22:55:22 +00:00
2026-11-05 00:55:46 +00:00
2026-10-30 20:39:47 +00:00
2026-10-29 18:24:34 +00:00
2026-11-05 00:55:46 +00:00
2026-11-04 19:58:24 +00:00
2026-10-19 15:15:17 +00:00
2026-11-03 06:37:07 +00:00
2026-10-27 05:52:01 +00:00
2026-11-03 23:49:01 +00:00
2026-11-03 04:08:59 +00:00
2026-11-02 20:36:39 +00:00
2026-11-05 00:30:20 +00:00
2026-11-04 09:51:28 +00:00
2026-10-27 23:53:09 +00:00
2026-11-05 00:55:46 +00:00
2026-11-04 20:37:39 +00:00
2026-10-28 21:22:06 +00:00
2026-11-04 19:57:59 +00:00
2026-10-22 19:36:47 +00:00
2026-10-22 19:36:47 +00:00
2026-11-04 01:13:54 +00:00
2026-11-04 09:51:28 +00:00
2026-11-04 13:02:36 +00:00
2026-11-04 13:03:01 +00:00
2026-10-26 19:21:08 +00:00
2026-11-03 23:35:00 +00:00
2026-10-22 19:36:47 +00:00
2026-11-03 21:22:21 +00:00
2026-11-04 22:03:18 +00:00
2026-11-04 22:43:34 +00:00
2026-10-22 19:36:47 +00:00
2026-11-03 12:33:26 +00:00
2026-11-02 20:34:35 +00:00
2026-10-22 19:36:47 +00:00
2026-11-04 21:22:28 +00:00
2026-11-02 08:31:14 +00:00
2026-11-03 15:02:57 +00:00
2026-11-03 23:00:54 +00:00
2026-10-26 18:22:40 +00:00
2026-11-04 19:57:30 +00:00
2026-10-27 16:36:32 +00:00
2026-11-03 01:58:18 +00:00
2026-11-04 19:58:49 +00:00
2026-11-03 21:02:34 +00:00
2026-10-19 16:56:42 +00:00
2026-11-04 22:55:22 +00:00
2026-11-04 19:58:49 +00:00
2026-10-30 14:40:32 +00:00
2026-11-03 23:35:00 +00:00
2026-11-05 00:30:20 +00:00
2026-10-27 05:52:01 +00:00
2026-11-04 23:46:52 +00:00
2026-10-27 05:52:01 +00:00
2026-10-29 17:49:51 +00:00
2026-11-04 19:58:49 +00:00
2026-10-22 00:19:02 +00:00
2026-10-30 07:11:56 +00:00
2026-11-05 00:19:26 +00:00
2026-11-04 19:58:49 +00:00
2026-10-30 20:53:25 +00:00
2026-11-05 00:19:26 +00:00
2026-11-05 01:34:00 +00:00
2026-10-30 16:35:54 +00:00
2026-11-04 09:51:28 +00:00
2026-10-27 05:52:01 +00:00
2026-11-03 15:02:57 +00:00
2026-11-03 23:00:54 +00:00
2026-10-29 22:36:06 +00:00
2026-11-04 00:52:58 +00:00
2026-10-28 21:09:05 +00:00
2026-11-05 01:34:00 +00:00
2026-11-05 01:34:00 +00:00
2026-11-04 02:40:55 +00:00
2026-10-27 05:52:01 +00:00