Agent ingress HTML-escapes message bodies and silently truncates long bodies
Maintainer thường phản hồi trong vòng 1 ngày
@rekram1-node đang làm issue này rồi.
Từ ngày 4/10/2026.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Description
Message bodies arriving at opencode agents via the Slack bridge are corrupted in two silent ways. Nothing errors; the text is just wrong when it lands in agent context, beads, PRs, and shell commands.
Defect 1 — HTML entity escaping (silent, length-preserving)
Message bodies are HTML-escaped on ingress: < → <, > → >, & → &.
Evidence (2026-09-30):
- An agent sent a raw
<main>inside a plain-text sentence; the receiving agent quoted it back still escaped — confirms escaping affects Slack messages themselves, not just downstream tooling. - Inbound scope blocks reached agents with
<main>and&already escaped. - Ruled out: voltron slack-post delivery path, model output — this is a normalising transform on ingress in the harness/context-assembly layer.
Impact: any agent copying an HTML tag, shell metacharacter (>, |, &), or comparison operator out of a bridge message pastes corrupted text into code, beads, PRs, or shell commands. Silent wrong-state.
Defect 2 — long-body truncation (lossy)
Long message bodies are cut off, usually mid-block. Observed three times in one session:
- A task group (4 items) arrived entirely absent — heading survived, content did not.
- Groups C, D, E of a 138-line source file arrived absent (lines 85–138).
- A closing rationale cut mid-sentence.
System details
- OpenCode version: 1.18.34
- Operating system: macOS 27.0
- Slack bridge/client setup: custom fleet bridge (
voltron/scripts/slack-post) delivering agent messages into opencode agent sessions; corruption observed on ingress into the agent context layer, after bridge delivery (bridge itself verified clean — entity forms present in agent-received bodies, not in bridge output)
Steps to reproduce
- Send any message containing
<,>, or&through the Slack bridge to an opencode agent; observe the entity form in the agent's received body. - Send a body above some length threshold; observe truncation mid-block.
Expected behavior
Message bodies arrive byte-identical: raw <, >, & preserved; long multi-block bodies complete.
Ask
- Locate the ingress/context-assembly path where entities are escaped and where bodies are truncated.
- Preserve raw text on ingress (or provide an explicit escape contract agents can rely on).
- Fix or remove the truncation limit — silent mid-block loss destroys task scope.
- Regression test: body with
<,>,&, and a >2k multi-block message arrives byte-identical.
Cross-reference
- Linear: MG-1550 (metrograph-ai)
- Folded bead: MG-1552 (closed, scope merged into MG-1550)
- Original investigation ruled out: voltron delivery path, model output
- Ngôn ngữ chính
- TypeScript
- Star
- 221k
- Fork
- 29.6k
- Merge trung bình
- 5 giờ 22 phút
- Pull request đã merge (30 ngày)
- 531
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của anomalyco/opencode
-
Local copy writes the clipboard natively and via OSC 52 at once, racing the terminal (macOS)Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
anomalyco/opencode#59052 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
anomalyco/opencode#59040 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
reproduced
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 69/100
anomalyco/opencode#58981 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
triaging
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
anomalyco/opencode#58821 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
anomalyco/opencode#58774 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của anomalyco/opencode
Issue tương tự
-
Native Web
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 80/100
digitalfabrik/integreat-app#4517 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
TLS guide repeats certs/ in the certificate directoryCó thể đã có người làm @maheshrijal đã nhận hôm nay. Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
prometheus/docs#3156 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
medusajs/dtc-starter#90 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
usability
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
inmanta/web-console#7632 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
zaidmukaddam/scira#261 ·