fix: use one overwriting native progress status per turn #104

Merged
severus-snape merged 1 commit from fix/single-activity-status into main 2026-10-27 05:19:56 +00:00
Collaborator

Problem / fix

Operator requests one overwriting progress line, not a separate message per tool. Native adapter previously allocated a turn reference plus one reference per tool call, and Matrix legacy GatewayProgress could emit separate messages alongside native activity.

Use one stable native reference per turn for host/tool/parallel/terminal states. Latest-value summary replaces per-call history. Suppress legacy GatewayProgress when native activity is enabled; native disabled behavior unchanged. Terminal status deterministic across reconstruction. In-flight running receipt, retry and interrupted-on-restart behavior retained. No generated source edits; implementation owned in harness/plugins, pinned in companion Core changes.

Validation

Integrated Core full576/576 tests PASS, typecheck/build/diffcheck PASS. Seven focused native delivery/Matrix/Harness tests PASS: one seed reference across parallel tools and cancellation, edits all relate to same seed, legacy suppression when both enabled, restart receipt interruption, coalescing, blocked main/worker liveness. Fake homeserver evidence, no new live Matrix probes or actual client-rendering claim.

Review / rollout

Author inspected changes; persistent review status blockers0; no new independent round/reset. Original dirty worktrees untouched. Merge/build does not activate a running deployment. Requires release+GitOps rollout. One status per turn; worker task and dispatcher metadata have independent identities, not a global cross-task status panel.

## Problem / fix Operator requests one overwriting progress line, not a separate message per tool. Native adapter previously allocated a turn reference plus one reference per tool call, and Matrix legacy GatewayProgress could emit separate messages alongside native activity. Use one stable native reference per turn for host/tool/parallel/terminal states. Latest-value summary replaces per-call history. Suppress legacy GatewayProgress when native activity is enabled; native disabled behavior unchanged. Terminal status deterministic across reconstruction. In-flight running receipt, retry and interrupted-on-restart behavior retained. No generated source edits; implementation owned in harness/plugins, pinned in companion Core changes. ## Validation Integrated Core full576/576 tests PASS, typecheck/build/diffcheck PASS. Seven focused native delivery/Matrix/Harness tests PASS: one seed reference across parallel tools and cancellation, edits all relate to same seed, legacy suppression when both enabled, restart receipt interruption, coalescing, blocked main/worker liveness. Fake homeserver evidence, no new live Matrix probes or actual client-rendering claim. ## Review / rollout Author inspected changes; persistent review status blockers0; no new independent round/reset. Original dirty worktrees untouched. Merge/build does not activate a running deployment. Requires release+GitOps rollout. One status per turn; worker task and dispatcher metadata have independent identities, not a global cross-task status panel.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
harness/core!104
No description provided.