caya8205-2
58dcc10049
fix(gateway): memoize only resolved profile homes, never the miss
...
Review feedback on the memo introduced with _profile_home_for_key. The
problem is sharper than "no invalidation on profile deletion": caching the
miss pinned a profile that appears AFTER the gateway started to the ambient
store for the life of the process, which is the exact failure this helper
exists to prevent.
That is not hypothetical — an enrollment bridge can provision
profiles/<name>/ at runtime, so a key is legitimately seen before its
directory exists.
Memoize hits only. A miss costs one profile_exists() stat and recurs only
for profiles that genuinely do not exist, so the hot path for real profiles
is still a dict hit.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-08-31 14:54:18 -07:00
..
2026-08-23 17:45:47 -05:00
2026-09-01 03:19:59 +05:30
2026-08-31 10:00:55 -07:00
2026-08-31 10:09:42 -07:00
2026-08-26 00:54:36 -07:00
2026-08-24 15:54:23 +05:30
2026-08-31 10:42:39 -07:00
2026-08-26 07:28:10 -07:00
2026-08-24 21:21:34 -07:00
2026-08-31 01:04:11 -07:00
2026-08-31 14:54:18 -07:00
2026-08-31 14:40:09 -07:00
2026-08-31 14:02:55 -07:00
2026-08-31 17:20:45 +05:30
2026-08-28 11:54:33 +05:30
2026-08-31 07:28:30 -07:00
2026-08-29 18:01:25 -07:00
2026-09-01 03:19:59 +05:30
2026-08-30 04:53:39 -07:00
2026-08-31 12:08:30 -07:00
2026-08-31 11:29:17 -07:00
2026-08-31 12:36:33 -07:00
2026-08-31 00:56:41 -07:00
2026-08-24 15:37:22 +05:30
2026-08-31 09:56:43 -07:00
2026-08-31 12:36:33 -07:00
2026-08-24 03:21:07 -07:00
2026-08-24 03:21:07 -07:00
2026-08-23 17:01:31 -07:00
2026-08-23 06:36:57 -07:00
2026-08-30 01:20:27 -07:00
2026-08-30 01:20:27 -07:00
2026-08-26 18:23:33 -07:00
2026-08-26 18:23:33 -07:00
2026-08-31 10:05:13 -07:00
2026-08-28 05:45:00 -07:00
2026-08-28 12:20:40 -07:00
2026-09-01 00:35:29 +05:30
2026-08-31 09:56:43 -07:00
2026-08-27 13:48:51 -07:00
2026-08-25 10:54:42 +10:00
2026-08-31 07:28:22 -07:00
2026-08-31 09:56:04 -07:00
2026-08-23 19:31:35 -07:00
2026-08-29 18:34:35 -07:00
2026-08-31 10:00:38 -07:00
2026-08-23 18:27:21 -07:00
2026-08-31 10:00:55 -07:00
2026-08-31 10:53:18 -07:00
2026-08-31 10:53:18 -07:00
2026-08-28 12:36:15 -07:00
2026-08-27 07:52:26 -07:00
2026-08-27 07:52:26 -07:00
2026-08-23 19:15:28 -07:00
2026-08-23 13:34:32 +05:30
2026-08-31 12:22:17 -07:00
2026-08-31 10:03:34 -07:00
2026-08-31 05:56:18 -07:00
2026-08-31 11:23:48 -07:00
2026-08-31 09:56:04 -07:00
2026-08-25 23:15:49 -07:00
2026-08-31 09:56:54 -07:00
2026-08-31 09:56:43 -07:00
2026-08-23 02:55:03 +05:30
2026-08-22 04:02:29 +05:30
2026-08-22 14:33:20 +05:30
2026-08-23 18:25:12 -07:00
2026-08-23 20:01:41 -07:00
2026-08-23 18:25:12 -07:00
2026-08-27 07:52:26 -07:00
2026-08-31 09:58:40 -07:00
2026-08-27 11:26:57 +05:30
2026-08-31 12:36:33 -07:00
2026-08-24 04:01:53 -07:00
2026-08-23 17:43:39 -07:00
2026-08-31 09:56:43 -07:00