* fix: cancel kubedog-tracked helm subprocesses on SIGINT/SIGTERM
Kubedog tracking rooted helm and tracker contexts at Background (via
traceOnlyContext), so App.Cancel never reached those subprocesses and
Ctrl+C blocked in CleanWaitGroup until helm exited on its own.
Thread the app cancel context into HelmState (SetCancelContext) and use
it for the three kubedog tracking call sites, keeping the per-release
WithCancel safety valve. Hooks stay on the non-canceling trace bridge.
Fixes#2770
Signed-off-by: Jason Wang <vulragrag@gmail.com>
* docs/test: align cancel-context docs with #2791 and pin the kubedog wiring
- traceOnlyContext comment no longer lists kubedog tracking among the
detached paths; only hooks (#2771) remain, with a pointer to #2791.
- docs/proposals/otel-tracing.md sections 4.3/4.4/7/9 now mark the
kubedog cancellation gap as fixed by #2791 (SetCancelContext), so the
design doc stops misdescribing main.
- TestBufferHelmOutputRootsAtCancelContext pins the actual #2770 wiring:
the context bufferHelmOutput hands to ContextSwapper.WithContext must
become Done when the app cancel context is canceled, and stay
non-cancelable when unset.
Signed-off-by: yxxhero <aiopsclub@163.com>
---------
Signed-off-by: Jason Wang <vulragrag@gmail.com>
Signed-off-by: yxxhero <aiopsclub@163.com>
Co-authored-by: yxxhero <aiopsclub@163.com>