Files
Bohan Jiang 545d890dae feat(cli): add --compact to issue comment list, adopt it in every agent read command (MUL-5442) (#6546)
* feat(cli): add --compact to issue comment list, adopt it in every agent read command (MUL-5442)

The #5999 follow-up its closing note asked for, now that the workspace
measurements exist: the two bounded reads the agent workflow prescribes
are dominated by reader-noise metadata, and every byte of it enters the
conversation history at full price once and is replayed at cache-read
price by every later call of the session.

--compact (JSON output only, opt-in) drops per comment: the issue_id
echoed from the request path, source_task_id, updated_at when identical
to created_at, null-valued fields, and empty arrays. Content, identity,
and thread-summary fields pass through untouched; a real edit timestamp
or non-empty array is never dropped.

Measured on MUL-5442 (production data): --roots-only --summary scan
6,117B -> 4,738B (-23%); --thread --tail 30 deep read 47,359B ->
39,349B (-17%).

Adoption: all nine runnable comment-list command templates in the
per-turn channel (prompt.go, reply_instructions.go) now carry --compact,
and the brief's Available Commands line and workflow step 3 document it
(+~40B one-time, byte-stable). Command pins updated accordingly; new
unit test pins the drop/keep contract and the help-contract test pins
the flag's rendered usage.

Known local-env failure: TestResolveWorkspaceID_AgentContextSkipsConfig
fails identically on clean origin/main in this agent runtime (agent
context env interference) — unrelated.

Co-authored-by: multica-agent <github@multica.ai>

* test(cli): wire-level --compact coverage and zero-value keep pins (MUL-5442)

Review nits on #6546: TestRunIssueCommentListCompactWiring drives
runIssueCommentList against an httptest server both ways — default JSON
keeps every field, --compact drops the reader-noise set while zero-value
scalars (reply_count: 0, content_truncated: false, folded_count: 0)
survive, pinning that null pruning never generalizes to zero pruning.
Same zero-value pins added to the pure-function test.

Co-authored-by: multica-agent <github@multica.ai>

---------

Co-authored-by: Bohan-J <bohan@devv.ai>
Co-authored-by: multica-agent <github@multica.ai>
2026-08-07 12:41:21 +08:00
..