Not sure if this one is Newt or Pangolin though likely Pangolin should instruct Newt not to ping the public resource. Anyways, I noticed Newt keeps performing healthchecks for the resource, which was already deleted hours ago. Newt stops healthchecks after the restart.
Environment
OS Type & Version: Fedora 43
Pangolin Version: 1.16.2
Gerbil Version: 1.3.0
Traefik Version: 3.6.10
Newt Version: 1.10.2
To Reproduce
configure healthcheck for a public resource
check newt log to see healthcheck works
remove the public resource - healthchecks will continue
Expected Behavior
Healthcheck must stop after deleting the public resource
Originally created by @mprokopiev on GitHub (Mar 13, 2026).
Original GitHub issue: https://github.com/fosrl/newt/issues/308
### Describe the Bug
Not sure if this one is Newt or Pangolin though likely Pangolin should instruct Newt not to ping the public resource. Anyways, I noticed Newt keeps performing healthchecks for the resource, which was already deleted hours ago. Newt stops healthchecks after the restart.
### Environment
- OS Type & Version: Fedora 43
- Pangolin Version: 1.16.2
- Gerbil Version: 1.3.0
- Traefik Version: 3.6.10
- Newt Version: 1.10.2
### To Reproduce
* configure healthcheck for a public resource
* check newt log to see healthcheck works
* remove the public resource - healthchecks will continue
### Expected Behavior
Healthcheck must stop after deleting the public resource
@github-actions[bot] commented on GitHub (Mar 28, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
<!-- gh-comment-id:4222967682 -->
@github-actions[bot] commented on GitHub (Mar 28, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
@LaurenceJJones commented on GitHub (Apr 10, 2026):
Moved to Newt repo, as Newt should get the call to remove the proxied resource, so need to check if it also taps into the healthcheck
<!-- gh-comment-id:4222974893 -->
@LaurenceJJones commented on GitHub (Apr 10, 2026):
Moved to Newt repo, as Newt should get the call to remove the proxied resource, so need to check if it also taps into the healthcheck
newt/healthcheck/remove (with healthcheck target IDs)
but those delete routes are not calling it right now.
Also noticed payload mismatch in sync:
Pangolin sends proxyTargets
Newt sync handler reads targets
Potential actions
Re-enable delete-time removeTargets(...) calls in Pangolin delete handlers for site.type === "newt" (using current signature with newt.version).
Align sync payload key (targets vs proxyTargets) so reconciliation works.
Keep Newt-side healthcheck sync active as fallback (covers missed WS events/reconnect drift).
@oschwartz10612
<!-- gh-comment-id:4223457843 -->
@LaurenceJJones commented on GitHub (Apr 10, 2026):
Investigated both Newt + Pangolin sides for `#308` (`healthchecks continue after resource delete`).
### Findings
- In Newt, `newt/sync` had reconciliation logic commented out (`e68b656`: “Temp lets ignore the sync messages”), including:
- `healthMonitor.SyncTargets(syncData.HealthCheckTargets)`
- In Pangolin, direct delete-time push to Newt is currently disabled:
- `server/routers/resource/deleteResource.ts` (remove flow commented)
- `server/routers/target/deleteTarget.ts` (remove flow commented)
- Pangolin has `removeTargets()` that already sends:
- `newt/{tcp|udp}/remove`
- `newt/healthcheck/remove` (with healthcheck target IDs)
but those delete routes are not calling it right now.
- Also noticed payload mismatch in sync:
- Pangolin sends `proxyTargets`
- Newt sync handler reads `targets`
### Potential actions
- Re-enable delete-time `removeTargets(...)` calls in Pangolin delete handlers for `site.type === "newt"` (using current signature with `newt.version`).
- Align sync payload key (`targets` vs `proxyTargets`) so reconciliation works.
- Keep Newt-side healthcheck sync active as fallback (covers missed WS events/reconnect drift).
@oschwartz10612
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @mprokopiev on GitHub (Mar 13, 2026).
Original GitHub issue: https://github.com/fosrl/newt/issues/308
Describe the Bug
Not sure if this one is Newt or Pangolin though likely Pangolin should instruct Newt not to ping the public resource. Anyways, I noticed Newt keeps performing healthchecks for the resource, which was already deleted hours ago. Newt stops healthchecks after the restart.
Environment
To Reproduce
Expected Behavior
Healthcheck must stop after deleting the public resource
@github-actions[bot] commented on GitHub (Mar 28, 2026):
This issue has been automatically marked as stale due to 14 days of inactivity. It will be closed in 14 days if no further activity occurs.
@LaurenceJJones commented on GitHub (Apr 10, 2026):
Moved to Newt repo, as Newt should get the call to remove the proxied resource, so need to check if it also taps into the healthcheck
@LaurenceJJones commented on GitHub (Apr 10, 2026):
Investigated both Newt + Pangolin sides for
#308(healthchecks continue after resource delete).Findings
newt/synchad reconciliation logic commented out (e68b656: “Temp lets ignore the sync messages”), including:healthMonitor.SyncTargets(syncData.HealthCheckTargets)server/routers/resource/deleteResource.ts(remove flow commented)server/routers/target/deleteTarget.ts(remove flow commented)removeTargets()that already sends:newt/{tcp|udp}/removenewt/healthcheck/remove(with healthcheck target IDs)but those delete routes are not calling it right now.
proxyTargetstargetsPotential actions
removeTargets(...)calls in Pangolin delete handlers forsite.type === "newt"(using current signature withnewt.version).targetsvsproxyTargets) so reconciliation works.@oschwartz10612
@gravis commented on GitHub (Apr 11, 2026):
Can confirm I'm seeing this as well.
Environment