Skip to content

Stream Codex preambles in channel progress drafts#81887

Merged
pashpashpash merged 3 commits into
mainfrom
codex/codex-preamble-progress
May 14, 2026
Merged

Stream Codex preambles in channel progress drafts#81887
pashpashpash merged 3 commits into
mainfrom
codex/codex-preamble-progress

Conversation

@pashpashpash

@pashpashpash pashpashpash commented May 14, 2026

Copy link
Copy Markdown
Contributor

Summary

Codex app-server already marks preamble and progress narration as commentary-phase agent messages. OpenClaw was preserving those messages internally, so channel progress drafts could show tools but not Codex's own "I am checking..." narration.

This teaches the Codex projector to remember agent-message phases from item lifecycle events, stream commentary deltas as keyed progress updates, and keep commentary out of final reply selection. The shared progress renderer now supports stable line ids so one preamble updates in place instead of stacking partial prefixes, and the edit-capable channel surfaces pass those ids through.

The streaming docs and changelog now describe Codex preambles as part of the tool-progress preview path.

image

@pashpashpash pashpashpash requested review from a team as code owners May 14, 2026 18:41
@github-actions github-actions Bot added the dependencies-changed PR changes dependency-related files label May 14, 2026
@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation channel: discord Channel integration: discord channel: googlechat Channel integration: googlechat channel: imessage Channel integration: imessage channel: line Channel integration: line channel: matrix Channel integration: matrix channel: mattermost Channel integration: mattermost channel: msteams Channel integration: msteams channel: nextcloud-talk Channel integration: nextcloud-talk channel: nostr Channel integration: nostr channel: signal Channel integration: signal channel: slack Channel integration: slack channel: telegram Channel integration: telegram channel: tlon Channel integration: tlon channel: voice-call Channel integration: voice-call channel: whatsapp-web Channel integration: whatsapp-web channel: zalo Channel integration: zalo channel: zalouser Channel integration: zalouser app: android App: android app: web-ui App: web-ui gateway Gateway runtime extensions: copilot-proxy Extension: copilot-proxy extensions: diagnostics-otel Extension: diagnostics-otel extensions: llm-task Extension: llm-task extensions: lobster Extension: lobster extensions: memory-core Extension: memory-core extensions: memory-lancedb Extension: memory-lancedb labels May 14, 2026
@clawsweeper

clawsweeper Bot commented May 14, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs real behavior proof before merge.

Summary
The PR streams Codex app-server commentary-phase agent messages into keyed channel progress draft updates, propagates stable progress-line IDs through edit-capable channels, and updates tests, docs, changelog, and the Plugin SDK API baseline hash.

Reproducibility: Do we have a high-confidence way to reproduce the issue? No live high-confidence reproduction is present; source inspection shows current main lacks the projector and keyed draft behavior, and the PR adds focused tests for that path.

Real behavior proof
Needs stronger real behavior proof before merge: The screenshot shows a Telegram draft after the patch, but it does not prove the preamble updates in place or stays out of the final answer; the contributor should add redacted recording, terminal/live output, logs, or linked artifact proof and update the PR body to trigger re-review, or ask a maintainer to comment @clawsweeper re-review.

Next step before merge
Needs maintainer review plus contributor-supplied real behavior proof; this is not a repair-lane item because automation cannot prove the contributor’s real channel setup.

Security
Cleared: No concrete security or supply-chain concern found in the diff; it changes in-repo TypeScript progress handling, tests, docs, changelog, and generated API baseline hashes without adding dependencies, workflows, scripts, secrets handling, or downloaded code.

Review details

Best possible solution:

Land only after maintainer approval and redacted real channel proof, preferably Telegram, showing one Codex preamble line updating in place and not becoming the final answer.

Do we have a high-confidence way to reproduce the issue?

Do we have a high-confidence way to reproduce the issue? No live high-confidence reproduction is present; source inspection shows current main lacks the projector and keyed draft behavior, and the PR adds focused tests for that path.

Is this the best way to solve the issue?

Is this the best way to solve the issue? Yes in direction: carrying Codex item phases and stable item IDs through the shared progress draft contract is the narrow maintainable shape, but visible channel proof and maintainer approval are still required.

Acceptance criteria:

  • Review redacted Telegram proof showing the preamble update sequence and final answer exclusion.
  • If promoted for landing, run focused Codex projector, Plugin SDK channel-streaming, and touched channel dispatch tests through the repo-approved test path.

What I checked:

Likely related people:

  • @steipete: Recent commit history for src/plugin-sdk/channel-streaming.ts shows multiple progress draft fixes and API surface maintenance in the shared SDK path. (role: progress-draft feature owner and recent SDK contributor; confidence: high; commits: f3f1509ee9cc, 0a92d7a8ff4d, accf774591cf; files: src/plugin-sdk/channel-streaming.ts)
  • @vincentkoc: Recent GitHub history for extensions/telegram/src/bot-message-dispatch.ts shows Telegram progress-draft work in the affected dispatch path. (role: recent Telegram streaming contributor; confidence: high; commits: b5c337909713; files: extensions/telegram/src/bot-message-dispatch.ts)
  • @pashpashpash: Although also the PR author, this person appears in prior merged history for the Codex app-server event-projector path touched by this PR. (role: recent Codex app-server contributor; confidence: medium; commits: 78eb92e62277; files: extensions/codex/src/app-server/event-projector.ts)
  • @obviyus: Recent commit history for the Codex app-server projector includes native tool and diagnostics refactors in the same area. (role: adjacent Codex projector contributor; confidence: medium; commits: 529bfdbaca40, 13b364912a5a; files: extensions/codex/src/app-server/event-projector.ts)

Remaining risk / open question:

  • No redacted live channel sequence has been supplied or run in this read-only review, so Telegram update-in-place behavior and final-answer exclusion remain unverified in a real setup.

Codex review notes: model gpt-5.5, reasoning high; reviewed against 697103604367.

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

Labels

channel: discord Channel integration: discord channel: matrix Channel integration: matrix channel: mattermost Channel integration: mattermost channel: msteams Channel integration: msteams channel: slack Channel integration: slack channel: telegram Channel integration: telegram docs Improvements or additions to documentation extensions: codex maintainer Maintainer-authored PR mantis: telegram-visible-proof Mantis should capture Telegram visible proof. size: M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant