Skip to content

[core] Support durable external thread goals#30369

Draft
adamvy-oai wants to merge 2 commits into
adamvy/rollout-history-boundariesfrom
codex/matrix-external-goals
Draft

[core] Support durable external thread goals#30369
adamvy-oai wants to merge 2 commits into
adamvy/rollout-history-boundariesfrom
codex/matrix-external-goals

Conversation

@adamvy-oai

@adamvy-oai adamvy-oai commented Jun 27, 2026

Copy link
Copy Markdown

Overview

This is the fifth change in a five-PR stack that improves reusable Rust APIs for embedders. It adds durable external thread goal APIs and persistence for hosts that manage goals outside rollout-backed threads.

What

  • add a goal-store boundary for externally managed thread goals
  • preserve goal usage and status accounting across restore
  • expose the app-server request surface needed to set, read, and clear durable goals

Why

Some embedders need goals to survive independently of rollout-backed thread persistence. The goal-store boundary lets those hosts persist and restore goals without coupling the app server to a particular transport or collaboration product.

Stack

Each PR is based on the preceding branch:

  1. #28459 — custom in-process thread stores
  2. #28460 — lossless in-process event delivery
  3. #28461 — stored-thread view helpers
  4. #28462 — rollout-history turn boundaries
  5. #30369 — durable external thread goals (this PR)

Validation

  • RUST_MIN_STACK=16777216 cargo test -p codex-app-server external_goal_store_allows_goals_for_rolloutless_threads
  • cargo test -p codex-state restore_thread_goal_preserves_external_snapshot_accounting

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant