Summary
Broadened after #720: the liveness refactor removed the last readers of several more TaskPollingState fields, so the dead surface is now larger than the originally-filed CancelFunc.
Dead plumbing to remove:
Since #693 actual A2A cancellation flows through the supervisor (supervisor.Wind -> sj.cancel() cancels the poll goroutine's context), so none of this plumbing serves a purpose and it misleadingly implies mechanisms that do nothing.
Follow-up from #693 / #720.
Acceptance Criteria
Summary
Broadened after #720: the liveness refactor removed the last readers of several more
TaskPollingStatefields, so the dead surface is now larger than the originally-filedCancelFunc.Dead plumbing to remove:
TaskPollingState.CancelFunc- never assigned anywhere, only invoked behind nil-guards (always no-ops) inA2ATaskTrackerImpl(RemoveContext/RemoveTask/ClearAllAgents/StartPolling/StopPolling) andBackgroundTaskService.CancelBackgroundTask.TaskPollingState.NextPollTime/CurrentInterval- write-only after [TASK] Refactor background-job liveness monitoring onto the Supervisor/BackgroundJob contract #720; their only reader was theA2A_QueryTaskguard's timing branches, removed there.TaskPollingState.LastPollAt- write-only.A2ATaskTracker.IsPolling(taskID)- caller-less after [TASK] Refactor background-job liveness monitoring onto the Supervisor/BackgroundJob contract #720 (the guard was its last production caller).GetPollingStatestays -CancelBackgroundTaskstill uses it.Since #693 actual A2A cancellation flows through the supervisor (
supervisor.Wind->sj.cancel()cancels the poll goroutine's context), so none of this plumbing serves a purpose and it misleadingly implies mechanisms that do nothing.Follow-up from #693 / #720.
Acceptance Criteria
IsPollingtracker method are removed, including their write/call sites.task build,task test,task lintpass.