By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
make WireGuard client interface setup idempotent on repeated config updates
serialize periodic bandwidth-check start/stop to avoid shutdown races
cleanly close the native UAPI listener during client shutdown
How to test?
Internal code fixes.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/fosrl/newt/pull/278
**Author:** [@LaurenceJJones](https://github.com/LaurenceJJones)
**Created:** 3/16/2026
**Status:** 🔄 Open
**Base:** `dev` ← **Head:** `fix/clients-goroutine-lifecycle`
---
### 📝 Commits (10+)
- [`8d3ae5a`](https://github.com/fosrl/newt/commit/8d3ae5afd735a9de4d3a587aa25b91becd7859dd) Add doc for SKIP_TLS_VERIFY
- [`ff07692`](https://github.com/fosrl/newt/commit/ff0769224862974f5a6ae9a4e996dfbb169aad9d) Merge branch 'main' into dev
- [`527321a`](https://github.com/fosrl/newt/commit/527321a41561d6b1683f16614fee1f28dd8b7aca) Update cicd
- [`ee3e7d1`](https://github.com/fosrl/newt/commit/ee3e7d1442902b626a0c34c1dd90439b0672a116) Added Improvements for CICD Action
- [`7d60240`](https://github.com/fosrl/newt/commit/7d602405723e6b55c0622fbd28cb885a2aefe18b) testdata: add expected telemetry metrics for connection attempts and events
- [`0ec18d6`](https://github.com/fosrl/newt/commit/0ec18d66552583e046703a4d983bf29013afd33e) Merge pull request #169 from marcschaeferger/gh-action
- [`5b70feb`](https://github.com/fosrl/newt/commit/5b70feb6a597057786ed98735c44ffda938d28c4) Merge branch 'main' into dev
- [`6226a26`](https://github.com/fosrl/newt/commit/6226a262d6166d99484cec12668544427d932b75) Merge branch 'main' into dev
- [`348cac6`](https://github.com/fosrl/newt/commit/348cac66c8c8192422c0d38febba9242decddad3) Bring in netstack locally
- [`2c8755f`](https://github.com/fosrl/newt/commit/2c8755f346246ecb4f66147555c38e5dc57ff58a) Using 2 nics not working
### 📊 Changes
**100 files changed** (+19746 additions, -1113 deletions)
<details>
<summary>View changed files</summary>
➕ `.env.example` (+5 -0)
➕ `.github/DISCUSSION_TEMPLATE/feature-requests.yml` (+47 -0)
➕ `.github/ISSUE_TEMPLATE/1.bug_report.yml` (+51 -0)
➕ `.github/ISSUE_TEMPLATE/config.yml` (+8 -0)
📝 `.github/dependabot.yml` (+5 -0)
📝 `.github/workflows/cicd.yml` (+932 -57)
➕ `.github/workflows/mirror.yaml` (+132 -0)
➕ `.github/workflows/nix-build.yml` (+23 -0)
➕ `.github/workflows/nix-dependabot-update-hash.yml` (+48 -0)
➕ `.github/workflows/stale-bot.yml` (+37 -0)
📝 `.github/workflows/test.yml` (+24 -13)
📝 `.gitignore` (+6 -2)
📝 `.go-version` (+1 -1)
📝 `CONTRIBUTING.md` (+2 -6)
📝 `Dockerfile` (+13 -5)
📝 `Makefile` (+64 -28)
📝 `README.md` (+7 -157)
📝 `SECURITY.md` (+1 -1)
➕ `authdaemon.go` (+150 -0)
➕ `authdaemon/connection.go` (+27 -0)
_...and 80 more files_
</details>
### 📄 Description
## Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
## Description
- make WireGuard client interface setup idempotent on repeated config updates
- serialize periodic bandwidth-check start/stop to avoid shutdown races
- cleanly close the native UAPI listener during client shutdown
## How to test?
Internal code fixes.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
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.
📋 Pull Request Information
Original PR: https://github.com/fosrl/newt/pull/278
Author: @LaurenceJJones
Created: 3/16/2026
Status: 🔄 Open
Base:
dev← Head:fix/clients-goroutine-lifecycle📝 Commits (10+)
8d3ae5aAdd doc for SKIP_TLS_VERIFYff07692Merge branch 'main' into dev527321aUpdate cicdee3e7d1Added Improvements for CICD Action7d60240testdata: add expected telemetry metrics for connection attempts and events0ec18d6Merge pull request #169 from marcschaeferger/gh-action5b70febMerge branch 'main' into dev6226a26Merge branch 'main' into dev348cac6Bring in netstack locally2c8755fUsing 2 nics not working📊 Changes
100 files changed (+19746 additions, -1113 deletions)
View changed files
➕
.env.example(+5 -0)➕
.github/DISCUSSION_TEMPLATE/feature-requests.yml(+47 -0)➕
.github/ISSUE_TEMPLATE/1.bug_report.yml(+51 -0)➕
.github/ISSUE_TEMPLATE/config.yml(+8 -0)📝
.github/dependabot.yml(+5 -0)📝
.github/workflows/cicd.yml(+932 -57)➕
.github/workflows/mirror.yaml(+132 -0)➕
.github/workflows/nix-build.yml(+23 -0)➕
.github/workflows/nix-dependabot-update-hash.yml(+48 -0)➕
.github/workflows/stale-bot.yml(+37 -0)📝
.github/workflows/test.yml(+24 -13)📝
.gitignore(+6 -2)📝
.go-version(+1 -1)📝
CONTRIBUTING.md(+2 -6)📝
Dockerfile(+13 -5)📝
Makefile(+64 -28)📝
README.md(+7 -157)📝
SECURITY.md(+1 -1)➕
authdaemon.go(+150 -0)➕
authdaemon/connection.go(+27 -0)...and 80 more files
📄 Description
Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
How to test?
Internal code fixes.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.