Release v0.30.28
What's Changed
- fix(ci): rebuild Codex watcher analysis in cloud by @carenthomas in #3914
- chore(ci): remove legacy Codex watcher by @carenthomas in #3922
- fix(tools): inject secrets for braced ${NAME} shell references by @letta-integration[bot] in #3920
- feat(ci): add Claude upstream watcher by @carenthomas in #3925
- fix(ci): report observable Claude Task behavior by @carenthomas in #3927
- fix(ci): harden Claude review handoff by @carenthomas in #3928
- fix(ci): version Claude probe observations by @carenthomas in #3931
- fix(ci): support archived Claude replays by @carenthomas in #3932
- fix(listener): broadcast queue snapshot when remove_queue_item finds nothing [LET-11174] by @letta-integration[bot] in #3923
- fix(listener): emit exact run-to-send correlations by @carenthomas in #3904
- fix(ci): separate Claude state and analysis parents by @carenthomas in #3933
- ci: schedule hourly Claude drift reviews by @carenthomas in #3934
- fix(prompts): reduce repetitive durable wording by @kl2806 in #3938
- fix(listener): re-emit runtime status at turn boundaries [LET-11174] by @letta-integration[bot] in #3924
- fix(listener): resume tasks after teleport [LET-11204] by @carenthomas in #3939
- feat(local): expose Grok subscription OAuth by @sarahwooders in #3942
- chore: bump version to 0.30.28 by @github-actions[bot] in #3940
Full Changelog: v0.30.27...v0.30.28