Skip to content

fix(pi): keep message-tool delivery in session lock#84437

Merged
clawsweeper[bot] merged 2 commits into
mainfrom
clawsweeper/automerge-openclaw-openclaw-84289
May 20, 2026
Merged

fix(pi): keep message-tool delivery in session lock#84437
clawsweeper[bot] merged 2 commits into
mainfrom
clawsweeper/automerge-openclaw-openclaw-84289

Conversation

@clawsweeper

@clawsweeper clawsweeper Bot commented May 20, 2026

Copy link
Copy Markdown
Contributor

Makes #84289 merge-ready for the ClawSweeper automerge loop.
The edit pass should inspect the live PR diff, review comments, and failing checks; rebase if needed; keep the contributor branch credited; and stop only when validation is green or an external blocker is proven.
Known failing checks:

ℹ️ INFO Replacement PR opened from a writable branch

ClawSweeper could not update the source PR branch directly, so it opened this writable replacement PR while preserving the original context and credit.

  • Repair fallback: GitHub rejected the repair branch push because it updates workflow files and the ClawSweeper app token does not have workflows permission

Co-author credit kept:

ClawSweeper 🐠 · model gpt-5.5, reasoning high; reviewed against f166781.

@clawsweeper clawsweeper Bot added agents Agent runtime and tooling size: L clawsweeper:automerge Maintainer opted this PR into bounded ClawSweeper-reviewed automerge proof: supplied External PR includes structured after-fix real behavior proof. proof: sufficient ClawSweeper judged the real behavior proof convincing. P1 High-priority user-facing bug, regression, or broken workflow. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. merge-risk: 🚨 session-state 🚨 May lose, corrupt, stale, or mis-associate session, agent, or context state. merge-risk: 🚨 message-delivery 🚨 May drop, duplicate, misroute, suppress, or wrongly target messages. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. clawsweeper Tracked by ClawSweeper automation labels May 20, 2026
@clawsweeper

clawsweeper Bot commented May 20, 2026

Copy link
Copy Markdown
Contributor Author

Codex review: passed.

Workflow note: Future ClawSweeper reviews update this same comment in place.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

Summary
The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.

Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only reply that previously replayed through fallback, and the implicated source path is clear from the session-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

PR rating
Overall: 🐚 platinum hermit
Proof: 🦞 diamond lobster
Patch quality: 🐚 platinum hermit
Summary: Strong live log proof and a focused patch make this a normally mergeable PR, with session/message-delivery risk left for maintainer acceptance.

Rank-up moves:

  • none
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Real behavior proof
Sufficient (logs): The source PR supplies redacted live Discord runtime logs showing the after-fix single delivery, successful tool result, and no fallback replay.

Risk before merge

  • The PR intentionally stops a message_tool_only turn after a successful un-routed message send, so maintainers should accept that this delivered message is the source reply and no later final/fallback output should post.
  • The owned transcript context changes prompt-time session-lock behavior around delivery mirror appends; focused tests cover the lock refresh path, but this review did not rerun a full changed gate or a second live transport.

Maintainer options:

  1. Land With Scoped Risk Accepted (recommended)
    Accept the scoped session/message-delivery risk because the predicates are narrow, the dependency terminate contract matches the patch, and the source PR supplies live Discord proof plus focused regression tests.
  2. Pause For Broader Transport Proof
    Ask for a full changed gate or an additional non-Discord smoke before merge if maintainers want more confidence across transports before changing terminal behavior.

Next step before merge
No fix job is needed; the automerge lane should rely on exact-head review, CI, and maintainer acceptance of the scoped session/message-delivery risk.

Security
Cleared: The diff does not touch secrets, dependency sources, workflows, package scripts, permissions, or new network capabilities.

Review details

Best possible solution:

Land the replacement PR after exact-head CI and maintainer gates, keeping the behavior scoped to successful message-tool-only source sends and matching owned transcript mirror appends.

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

Yes: the source PR includes before/after redacted live Discord logs for a message-tool-only reply that previously replayed through fallback, and the implicated source path is clear from the session-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Is this the best way to solve the issue?

Yes: the patch uses Pi's documented afterToolCall terminate contract and keeps both terminal delivery and owned transcript locking narrowly scoped to the affected message_tool_only source-reply path.

Label justifications:

  • P1: The PR targets duplicate visible Discord replies and fallback replay in a real agent/channel workflow.
  • merge-risk: 🚨 session-state: The diff changes prompt-time transcript writes and session-lock fence refresh behavior for owned delivery mirrors.
  • merge-risk: 🚨 message-delivery: The diff changes when message-tool-only turns terminate after a delivered source-channel message send.
  • rating: 🐚 platinum hermit: Current PR rating is 🐚 platinum hermit because proof is 🦞 diamond lobster, patch quality is 🐚 platinum hermit, and Strong live log proof and a focused patch make this a normally mergeable PR, with session/message-delivery risk left for maintainer acceptance.
  • status: 🚀 automerge armed: This PR is in ClawSweeper's automerge lane. Sufficient (logs): The source PR supplies redacted live Discord runtime logs showing the after-fix single delivery, successful tool result, and no fallback replay.
  • proof: sufficient: Contributor real behavior proof is sufficient. The source PR supplies redacted live Discord runtime logs showing the after-fix single delivery, successful tool result, and no fallback replay.

What I checked:

  • PR diff scope: The branch changes eight files: Pi attempt wiring, a new message-tool terminal helper, a new transcript write context, focused session/transcript/message-tool tests, and CHANGELOG.md. (f16678175c29)
  • Attempt wiring: The PR installs the message-tool-only terminal hook on the active Pi agent and wraps activeSession.prompt in withOwnedSessionTranscriptWrites using the current session file/key and session lock controller. (src/agents/pi-embedded-runner/run/attempt.ts:2391, f16678175c29)
  • Owned transcript lock: Matching transcript appends reuse the active owned write context, and appendExactAssistantMessageToSessionTranscript runs the actual header/idempotency/dedupe/append/update work inside runWithOwnedSessionTranscriptWriteLock. (src/config/sessions/transcript-write-context.ts:40, f16678175c29)
  • Terminal-send predicate: The terminal helper is scoped to sourceReplyDeliveryMode=message_tool_only, tool name message, send-like actions without explicit routes, non-error results, no dry-run evidence, and positive delivery evidence before returning terminate:true. (src/agents/pi-embedded-runner/run/message-tool-terminal.ts:154, f16678175c29)
  • Focused regression coverage: The tests cover successful terminal sends, automatic/non-send/explicit-route/error/dry-run/suppressed cases, afterToolCall preservation, and the prompt fence refresh after an owned transcript mirror append. (src/agents/pi-embedded-runner/run/message-tool-terminal.test.ts:8, f16678175c29)
  • Dependency contract: pi-agent-core 0.75.1 documents afterToolCall terminate as a field-level override, and the runtime stops a tool batch only when every finalized tool result has terminate:true.

Likely related people:

  • Eva: Current-main blame for the embedded session-lock controller and transcript append path points to the session-lock safety commit that underlies this fix. (role: introduced behavior; confidence: high; commits: a059309a9f9a; files: src/agents/pi-embedded-runner/run/attempt.session-lock.ts, src/config/sessions/transcript.ts)
  • @joshavant: Recent current-main work changed the message-tool-only visible reply path and adjacent message/tool routing surfaces involved in this PR. (role: recent adjacent contributor; confidence: medium; commits: 47eb4ca14fcc, a54c73687f58; files: src/agents/tools/message-tool.ts, src/infra/outbound/message-action-runner.ts, src/agents/pi-embedded-runner/run/attempt.ts)
  • @jalehman: The session-lock safety commit that introduced the current lock/fence behavior records @jalehman as reviewer, making them a useful routing candidate for this concurrency path. (role: reviewer; confidence: medium; commits: a059309a9f9a; files: src/agents/pi-embedded-runner/run/attempt.session-lock.ts)

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

@openclaw-barnacle openclaw-barnacle Bot removed the proof: supplied External PR includes structured after-fix real behavior proof. label May 20, 2026
@clawsweeper clawsweeper Bot added status: 🚀 automerge armed This PR is in ClawSweeper's automerge lane. and removed status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels May 20, 2026
@clawsweeper

clawsweeper Bot commented May 20, 2026

Copy link
Copy Markdown
Contributor Author

ClawSweeper PR egg

✨ Hatched: 🥚 common Clockwork Diff Drake

Hatch command

Comment @clawsweeper hatch when this PR is hatchable.

Hatchability rules:

  • Merged PRs are hatchable.
  • Open PRs are hatchable when they are status: 👀 ready for maintainer look, status: 🚀 automerge armed, or labeled clawsweeper:automerge.
  • Closed unmerged PRs are hatchable only when one of those hatchable labels is still present in the durable record.

Rarity: 🥚 common.
Trait: polishes edge cases.
Image traits: location review cove; accessory tiny test log scroll; palette cobalt, lime, and pearl; mood determined; pose curling around a status light; shell frosted glass shell; lighting bright celebratory glints; background miniature CI buoys.
Share on X: post this hatch
Copy: My PR egg hatched a 🥚 common Clockwork Diff Drake in ClawSweeper.

What is this egg doing here?
  • Eggs appear after the PR passes real-behavior proof. It is here for vibes, not verdicts: it does not change labels, ratings, merge decisions, or automation.
  • The shell reacts to review momentum: open follow-up work warms it up, re-review makes it wobble, and a clean final review lets it hatch.
  • Hatchability usually comes from sufficient real-behavior proof, no blocking P0/P1/P2 findings, no security attention needed, and clean correctness. A merged PR is already final, so merge makes the egg hatchable independently.
  • The hatch is seeded from this repository and PR number, so the same PR keeps the same creature; the reviewed head SHA can only change safe visual details.
  • Rarity is just collectible sparkle: 🥚 common, 🌱 uncommon, 💎 rare, ✨ glimmer, and 🌈 legendary.

@clawsweeper

clawsweeper Bot commented May 20, 2026

Copy link
Copy Markdown
Contributor Author

🦞✅
ClawSweeper merged this PR after the passing review.

Source: clawsweeper[bot]
Feedback: structured ClawSweeper verdict: pass (sha=f16678175c29d07d8405a7b46b3bf46dec467175)
Merge status: merged by ClawSweeper automerge
Merged at: 2026-05-20T05:20:04Z
Merge commit: 65030f31649b

What merged:

  • The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
  • Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:

  • PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

The automerge loop is complete.

Automerge progress:

  • 2026-05-20 05:19:53 UTC review passed f16678175c29 (structured ClawSweeper verdict: pass (sha=f16678175c29d07d8405a7b46b3bf46dec467...)
  • 2026-05-20 04:48:22 UTC merge check queued f16678175c29 (checks and exact-head review are ready)
  • 2026-05-20 05:12:51 UTC review queued f16678175c29 (queued)
  • 2026-05-20 05:20:07 UTC merged f16678175c29 (merged by ClawSweeper automerge)

@clawsweeper clawsweeper Bot merged commit 65030f3 into main May 20, 2026
186 of 195 checks passed
@clawsweeper clawsweeper Bot deleted the clawsweeper/automerge-openclaw-openclaw-84289 branch May 20, 2026 05:20
markfietje pushed a commit to markfietje/openclaw that referenced this pull request May 20, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f16678175c29d07d8405a7b46b3bf46dec467175.
- Required merge gates passed before the squash merge.

Prepared head SHA: f16678175c29d07d8405a7b46b3bf46dec467175
Review: openclaw/openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
markfietje pushed a commit to markfietje/openclaw that referenced this pull request May 20, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f16678175c29d07d8405a7b46b3bf46dec467175.
- Required merge gates passed before the squash merge.

Prepared head SHA: f16678175c29d07d8405a7b46b3bf46dec467175
Review: openclaw/openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 24, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 24, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 24, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request May 24, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
galiniliev pushed a commit to galiniliev/openclaw that referenced this pull request May 25, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 26, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 26, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SebTardif pushed a commit to SebTardif/openclaw that referenced this pull request May 26, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
jameslcowan pushed a commit to jameslcowan/openclaw that referenced this pull request Jun 2, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
SYU8384 pushed a commit to SYU8384/openclaw that referenced this pull request Jun 3, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
sablehead pushed a commit to sablehead/openclaw that referenced this pull request Jun 10, 2026
Summary:
- The replacement branch adds an owned transcript write context around Pi prompt-time delivery mirror appends and a message-tool-only terminal hook, with focused tests and a changelog entry.
- Reproducibility: yes. the source PR includes before/after redacted live Discord logs for a message-tool-only ... ession-lock and transcript append code. I did not rerun the live Discord scenario in this read-only review.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(pi): keep message-tool delivery in session lock

Validation:
- ClawSweeper review passed for head f166781.
- Required merge gates passed before the squash merge.

Prepared head SHA: f166781
Review: openclaw#84437 (comment)

Co-authored-by: Andrew Meyer <andrewmeyer@andrews-air.lan>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agents Agent runtime and tooling clawsweeper:automerge Maintainer opted this PR into bounded ClawSweeper-reviewed automerge clawsweeper Tracked by ClawSweeper automation merge-risk: 🚨 message-delivery 🚨 May drop, duplicate, misroute, suppress, or wrongly target messages. merge-risk: 🚨 session-state 🚨 May lose, corrupt, stale, or mis-associate session, agent, or context state. P1 High-priority user-facing bug, regression, or broken workflow. proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: L status: 🚀 automerge armed This PR is in ClawSweeper's automerge lane.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants