fix(discord): keep multibot threads responsive#1439
Conversation
|
Note LGTM � What This PR DoesThis PR keeps Discord multibot threads visibly responsive during long ACP turns while separating human-facing presentation from executable bot-to-bot handoffs. Presentation output is sanitized and mention-inert; structured handoffs are explicit, allowlisted, provenance-bound, and fail-closed. How It Works
Findings
Finding Details� F1: Outbound and inbound authorizationThe sender checks the configured � F2: Control-plane validation and bounded stateOnly bot-authored, target-header, JSON-shaped candidates enter the handoff validation path. Invalid candidates fail closed. Replay state has a 4,096-event hard cap and 600-second retention window; accepted sources are limited to 10 handoffs per 60 seconds. � F3: Safe presentation deliveryAll Discord presentation streaming/final paths sanitize mention-like text and use empty automatic � F4: Documentation alignmentThe output directive is documented as Discord-only, parser-header based, decimal-u64 constrained, self/allowlist checked, and bounded by the full 2,000 UTF-16-code-unit envelope limit plus the 100,000-byte receive defense bound. Baseline Check
What's Good (�)
5�� Three Reasons We Might Not Need This PR
|
There was a problem hiding this comment.
LGTM � � exact-SHA review at 8774c9a confirms outbound target authorization and self-target rejection, validated schema/prompt gating, bounded replay/rate state, inert presentation streaming, handoff size bounds, and synchronized documentation. Canonical review: #1439 (comment)
Summary
Review fixes
Operational limitations
Validation
Closes #1436
Review Contract
Goal
Keep Discord multibot threads visibly responsive during long ACP turns while separating sanitized human-facing presentation from structured, fail-closed bot-to-bot handoffs (closes #1436).
Non-goals
Accepted Residual Risks
Acceptance Criteria
Follow-ups