1
00:00:00,000 --> 00:00:01,363
Welcome to the show.

2
00:00:01,403 --> 00:00:03,365
I'm Ethan Park, here with Maya.

3
00:00:03,505 --> 00:00:08,804
And Maya, let me ask you: how many times
this week have you lost your active runtime

4
00:00:08,884 --> 00:00:13,684
state because you had to pivot from a deep
agent query back to generating some

5
00:00:13,741 --> 00:00:15,040
simple boilerplate?

6
00:00:16,000 --> 00:00:21,880
Too many times to count honestly It's
usually when I'm right in the middle of

7
00:00:21,880 --> 00:00:26,920
debugging a complex integration I run a
quick helper command and suddenly my

8
00:00:26,920 --> 00:00:32,961
environment context is completely white
It's incredibly frustrating Exactly.

9
00:00:33,009 --> 00:00:37,925
Well, before we dive into how the team is
addressing that in the latest Codex CLI

10
00:00:38,165 --> 00:00:44,969
0.137.0 release, a quick shout-out: thanks
to Jellypod for helping make this daily

11
00:00:45,049 --> 00:00:46,249
show a reality.

12
00:00:47,000 --> 00:00:53,700
Yes thank you JellyPod Now Ethan let's
talk about 0 137 0

13
00:00:54,100 --> 00:00:59,100
The big highlight here is how they are
tackling what they call multi agent state

14
00:00:59,100 --> 00:01:04,042
friction What is actually changing under
the hood Historically,

15
00:01:04,102 --> 00:01:09,634
runtime environment configurations and
agent choices were handled globally or at

16
00:01:09,674 --> 00:01:12,512
least semi-globally within the active
session.

17
00:01:12,752 --> 00:01:17,065
If you switched tasks, those choices would
collide or overwrite each other.

18
00:01:17,332 --> 00:01:23,863
In 0.137.0, Codex is binding runtime
choices persistently to

19
00:01:23,921 --> 00:01:25,141
individual threads.

20
00:01:26,000 --> 00:01:32,380
Okay so if I have a thread dedicated to a
database migration running on a Postgres

21
00:01:32,380 --> 00:01:38,180
runtime and another thread doing front end
asset generation those environments are

22
00:01:38,180 --> 00:01:41,799
now completely sandboxed from one another
Precisely.

23
00:01:41,939 --> 00:01:46,838
The thread metadata now encapsulates the
entire execution state,

24
00:01:46,894 --> 00:01:50,752
including the specific agent runtime
configurations.

25
00:01:50,784 --> 00:01:55,153
When you switch threads, Codex performs a
clean state-swap.

26
00:01:55,193 --> 00:01:59,797
You don't have to re-initialize your
database connection strings or re-select your

27
00:01:59,845 --> 00:02:02,915
preferred model parameters every time you
change context.

28
00:02:03,000 --> 00:02:08,520
That's a massive quality of life update
for multitasking But what about execution

29
00:02:08,520 --> 00:02:13,480
bottlenecks within those threats I know
parallel hosted tools were also mentioned in

30
00:02:13,480 --> 00:02:14,800
the changelog Right.

31
00:02:14,844 --> 00:02:18,887
Previously, if you were in code-mode and
you triggered a web search or a deep

32
00:02:18,956 --> 00:02:24,013
lookup, everything else in that thread was
blocked until that single network request

33
00:02:24,075 --> 00:02:24,651
returned.

34
00:02:24,811 --> 00:02:31,283
With 0.137.0, standalone web searches can
now run in parallel.

35
00:02:32,000 --> 00:02:38,680
So I can kick off a documentation lookup
for an API library while simultaneously

36
00:02:38,680 --> 00:02:43,960
initiating an asset generation and they
won't queue up behind each other Yes.

37
00:02:43,980 --> 00:02:49,722
The CLI now orchestrates these hosted
tools using an asynchronous event loop per

38
00:02:49,791 --> 00:02:50,285
thread.

39
00:02:50,395 --> 00:02:56,435
Instead of sequential execution blocking,
Codex spawns concurrent workers for these

40
00:02:56,488 --> 00:02:57,550
external tasks.

41
00:02:57,710 --> 00:03:03,455
For developers generating multiple assets
or querying multiple external sources,

42
00:03:03,503 --> 00:03:08,005
this changes the experience from a series
of annoying pauses to a continuous

43
00:03:08,076 --> 00:03:08,724
workflow.

44
00:03:09,000 --> 00:03:14,720
That parallel execution sounds clean but
as a former tester I'm always looking at

45
00:03:14,720 --> 00:03:19,400
the failure modes What happens when things
go wrong or when you need to stop an

46
00:03:19,400 --> 00:03:24,080
execution mid flight I saw some
interesting updates regarding prompt cancellation

47
00:03:25,000 --> 00:03:27,475
This is actually a great recovery
mechanism.

48
00:03:27,662 --> 00:03:32,595
In previous versions, if you started
generating a complex code block and realized

49
00:03:32,648 --> 00:03:38,108
three seconds in that your prompt had a
typo, hitting cancel was a disaster.

50
00:03:38,295 --> 00:03:44,352
It would wipe out your unsaved draft,
discard any local attachments you had staged,

51
00:03:44,392 --> 00:03:46,750
and reset your collaborative session
state.

52
00:03:47,000 --> 00:03:53,120
Which meant you had to manually re upload
files and re type the whole prompt from

53
00:03:53,120 --> 00:03:59,660
memory In 0 113 0 they've introduced a
state recovery buffer for early

54
00:03:59,660 --> 00:04:05,100
cancellations If you terminate the
generation it acts like an undo rather than a

55
00:04:05,100 --> 00:04:07,680
destructive reset Right.

56
00:04:07,730 --> 00:04:12,839
The local client caches the pre-execution
state-including local file attachments and

57
00:04:12,859 --> 00:04:16,200
the half-written draft-in a volatile local
cache.

58
00:04:16,413 --> 00:04:21,646
If a cancellation signal is caught, it
instantly restores that cache to the active

59
00:04:21,703 --> 00:04:22,604
editor buffer.

60
00:04:23,000 --> 00:04:29,160
That's a smart safety net But speaking of
bugs and things breaking we have to talk

61
00:04:29,160 --> 00:04:36,020
about GitHub issue number 26452 This is a
critical one for anyone relying on

62
00:04:36,020 --> 00:04:42,513
automated workflows Yes, issue #26452 is a
major regression in

63
00:04:42,673 --> 00:04:45,072
0.137.0.

64
00:04:45,165 --> 00:04:50,424
Essentially, the `codex exec` hook
dispatches are completely broken.

65
00:04:51,000 --> 00:04:57,020
To be specific even if you have a
perfectly valid schema defined in your hooks json

66
00:04:57,020 --> 00:05:03,400
file the lifecycle events are simply not
firing The pre execution and post execution

67
00:05:03,400 --> 00:05:06,878
triggers are ignored entirely Exactly.

68
00:05:07,065 --> 00:05:12,316
If you have security scanners, formatters,
or pre-commit checks hooked into `codex

69
00:05:12,428 --> 00:05:15,353
exec`, they are silently failing to run.

70
00:05:15,493 --> 00:05:20,229
The CLI just bypasses them and proceeds
with raw execution.

71
00:05:21,000 --> 00:05:26,520
That's a pretty severe security and
compliance risk for teams who rely on those

72
00:05:26,520 --> 00:05:31,600
hooks to prevent unauthorized code
execution or to run automatic linting before

73
00:05:31,600 --> 00:05:32,761
saving It is.

74
00:05:32,831 --> 00:05:37,121
The maintainers have acknowledged the
issue, and they've tracked it down to a

75
00:05:37,201 --> 00:05:42,317
decoupling in the event dispatcher during
the thread persistence refactoring we

76
00:05:42,351 --> 00:05:43,275
talked about earlier.

77
00:05:43,425 --> 00:05:48,553
Because the execution lifecycle is now
tightly bound to the thread state,

78
00:05:48,573 --> 00:05:52,794
the global hook runner is failing to
subscribe to individual thread events.

79
00:05:53,000 --> 00:05:58,879
So what is the workaround for now Right
now, developers need to run these validation

80
00:05:58,932 --> 00:05:59,835
steps manually.

81
00:06:00,048 --> 00:06:04,391
If you have a custom script that usually
runs on pre-execution,

82
00:06:04,411 --> 00:06:07,829
you'll need to trigger it outside of the
Codex CLI pipeline.

83
00:06:07,989 --> 00:06:14,540
The maintainers have promised a hotfix in
the upcoming 0.138.0 release,

84
00:06:14,580 --> 00:06:19,659
but until then, do not rely on automated
pre-execution safety checks through

85
00:06:19,699 --> 00:06:20,939
`hooks.json`.

86
00:06:21,000 --> 00:06:27,820
Good to know So enjoy the parallel
searches and the thread sandboxing in 0 137 0

87
00:06:28,360 --> 00:06:33,917
but keep an eye on your hooks until 0 138
0 drops Exactly.

88
00:06:33,973 --> 00:06:39,557
That is our quick take on Codex CLI
0.137.0.

89
00:06:39,744 --> 00:06:43,153
We'll track the progress of that bug fix
and keep you updated.

90
00:06:43,244 --> 00:06:44,430
Thanks for listening.

91
00:06:45,000 --> 00:06:46,060
See you next time

