Commit db2cb9d
fix(codex-models): cache model list + reduce RPC timeout to prevent intermittent 500s
Fixes #806
Problem: GET /api/sessions/{id}/codex-models intermittently returned 500
after 120s because listCodexModels() spawned a new codex app-server process
on every call, and ~3% of those spawns exited early, causing the hub-side
RPC to wait the full 120s timeout.
Changes:
- cli: Add module-level model list cache (TTL 5 min) with separate caches
for visible and hidden models, plus clearCodexModelCache() export
- cli: Preserve app-server exit details in error cause chain for faster
failure detection
- hub: Reduce MODEL_LIST_RPC_TIMEOUT_MS from 120s to 15s (normal requests
complete in 1-5s; cached requests are instant)1 parent f4c3513 commit db2cb9d
2 files changed
Lines changed: 35 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
11 | 23 | | |
12 | 24 | | |
13 | 25 | | |
| |||
50 | 62 | | |
51 | 63 | | |
52 | 64 | | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
53 | 70 | | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
54 | 77 | | |
55 | 78 | | |
56 | 79 | | |
| |||
70 | 93 | | |
71 | 94 | | |
72 | 95 | | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
73 | 106 | | |
74 | 107 | | |
75 | | - | |
| 108 | + | |
76 | 109 | | |
77 | 110 | | |
78 | 111 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| |||
0 commit comments