Skip to content

fix(daemon): a needsReply report resumes the parent session-only, never as a conversation post - #985

Open
Poytr1 wants to merge 1 commit into
claude/lever1-inferred-replyfrom
claude/lever3-report-session-only
Open

fix(daemon): a needsReply report resumes the parent session-only, never as a conversation post#985
Poytr1 wants to merge 1 commit into
claude/lever1-inferred-replyfrom
claude/lever3-report-session-only

Conversation

@Poytr1

@Poytr1 Poytr1 commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

What

Stacked on #984 (retargets to main when it merges). The niche half of the #966 scoping (the deeper transcript-row half stays open there by design): replyToSession's local branch, the relay's lineage-reply branch, and the #800 inferred reply stamp their delivery parentReport, and the #926 agent-wake inbound rendering (postAgentWakeInbound + its transcriptPostId mint) skips report deliveries.

A child's private report into a webchat-conversation parent is injected into the parent's transcript and turn exactly as before — but is no longer committed as a live conversation post fanned to the roster. Measured before the fix: every role ack and night statement of the real webchat Werewolf game ("We kill player-4 tonight." included) was room-visible (privateReportsPostedPublicly: 8–11 per game).

Unmarked agent wakes keep #926 untouched — the existing daemon-webchat pin ('an agent-initiated wake posts the INBOUND message live') passes verbatim; only report-stamped deliveries change.

Sanctioned pin flips: postedPublicly === false per reply in the night-collection cell, privateReportsPostedPublicly === 0 in both scripted Werewolf games — both previously pinned > 0 as the measured surface.

Refs #966 (remaining half documented there), #926.

🤖 Generated with Claude Code

@agentconnect-md-test agentconnect-md-test Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. I found no blocking issues in the trusted eaa18e9e6cb550c3dec506667159b361d6e74096 revision.

The daemon-only parentReport marker is applied consistently to local session replies and cross-daemon lineage replies, and it is checked both before minting a canonical conversation-post ID and before live inbound fan-out. Ordinary unmarked agent-initiated wakes retain the existing #926 behavior.

Verification completed:

  • daemon TypeScript typecheck
  • 187 relevant daemon tests across message-agent, webchat, inferred-reply, and durable-inbox behavior
  • 4 scripted webchat night-collection/Werewolf tests
  • ESLint and Prettier checks on all changed files

sent by review-bot (Codex · gpt-5.6-sol) · open in session

…er as a conversation post (#966)

The niche half of the #966 scoping: replyToSession's local branch, the
relay's lineage-reply branch, and the #800 inferred reply now stamp their
delivery parentReport, and the #926 agent-wake inbound rendering
(postAgentWakeInbound + its transcriptPostId mint) skips report deliveries —
a child's private report into a webchat-conversation parent is injected into
the parent's transcript and turn exactly as before, but is no longer
committed as a live conversation post fanned to the roster. Measured before
the fix: every role ack and night statement of the webchat Werewolf game
('We kill player-4 tonight.' included) was room-visible.

Unmarked agent wakes keep the #926 behavior untouched (the existing
daemon-webchat pin still passes verbatim). Sanctioned pin flips in the
scripted games: postedPublicly false per reply, privateReportsPostedPublicly
=== 0 in both Werewolf games — previously pinned > 0 as the measured surface.

The deeper half (report rows in the shared conversation transcript remain
readable to peers' catch-up) stays open on #966 by design — it needs the
report-row scoping decision documented there.

Refs #966, #926.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Poytr1
Poytr1 force-pushed the claude/lever3-report-session-only branch from eaa18e9 to 572c1ca Compare August 15, 2026 04:11

@agentconnect-md-test agentconnect-md-test Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved. I found no blocking issues in the synchronized 572c1cab62bc0036e3e4dfb5a78deb990e81dc5f revision.

I verified the exact trusted head and reviewed the full new-base-to-head patch. The daemon-only parentReport marker remains consistently applied to local session replies and cross-daemon lineage replies, and it prevents both canonical conversation-post ID minting and live inbound fan-out while leaving ordinary unmarked agent wakes unchanged. The background-wake change visible in the synchronization delta is already part of the new base and does not conflict with this patch.

Verification completed:

  • daemon TypeScript typecheck
  • 187 relevant daemon tests across message-agent, webchat, inferred-reply, and durable-inbox behavior
  • 4 scripted webchat night-collection/Werewolf tests
  • ESLint and Prettier checks on all changed files

sent by review-bot (Codex · gpt-5.6-sol) · open in session

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