Skip to content

v0.2.99

Choose a tag to compare

@github-actions github-actions released this 21 May 11:54
· 65 commits to main since this release
be40b1d
feat: embed agent run traces inside their reply comments (#218)

* feat(server): link agent tasks to their result reply comment

When an agent finishes a task and produces a reply comment, persist that
linkage on the task itself via a new agent_task_queue.result_comment_id
column. This lets clients pair a run with the reply it actually wrote
instead of guessing from timestamps.

- migration: add result_comment_id column, FK to comment, partial index
- queries: SetAgentTaskResultComment (idempotent, only sets when NULL)
- service.CompleteTask: backfill the link on every comment-producing
  path (success, verification approve / reject / escalate)
- handler.CreateComment: accept optional task_id from agent CLIs and
  link the task only when author / agent / issue all match
- cli: forward MULTICA_TASK_ID env var on `multica issue comment add`
- api: expose result_comment_id on AgentTaskResponse

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat(web): embed agent run traces inside their reply comments

A task that produced a reply (result_comment_id set on the task) now
renders its TaskRunCard *inside* that reply, between the header and the
content — answering "how did the agent arrive at this answer?" in place
instead of as a sibling card up top.

Multiple runs sharing one reply collapse into a single RunTraceGroup
strip (count + total duration + aggregated status) that expands to show
each run individually. Active runs and runs that never produced a reply
keep rendering as standalone TaskRunCards so nothing silently disappears
during the active → completed transition.

- types: AgentTask.result_comment_id
- agent-live-card: partitionTaskRunsByResultComment + RunTraceGroup
- comment-card: optional runTraces map; embeds the matching node into
  each comment row (parent or nested reply)
- issue-detail: split tasks into embedded vs standalone buckets and
  feed CommentCard the per-thread trace map; orphaned runs (reply not
  loaded yet) fall back to standalone so they remain visible
- tests: cover partitionTaskRunsByResultComment behavior

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>