aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-10-16 10:41:17 +0200
committerChristophe Besson <cbesson@gmail.com>2026-10-16 10:41:17 +0200
commit9236ffdb295301f8cd61ad34689f84cf685d676e (patch)
tree7f1d71b70aeaac6b095ae3d4fd491b28aeadce77 /packages/meshbay-hub/src/meshbay_hub
parent4802be13580de1529b7824a2337d132d64849801 (diff)
downloadmeshbay-9236ffdb295301f8cd61ad34689f84cf685d676e.tar.gz
feat(node): connection processes on by default, one per core up to four
At 1 no process starts and every lane of a download lands on the node's one core. The Node page also sent every setting on each Save, pinning untouched ones at the day's default; it sends only what changed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/node-page.js12
1 files changed, 10 insertions, 2 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/node-page.js b/packages/meshbay-hub/src/meshbay_hub/static/node-page.js
index bc22cbd..674779b 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/node-page.js
+++ b/packages/meshbay-hub/src/meshbay_hub/static/node-page.js
@@ -501,7 +501,15 @@ export function NodePage({ groups, token, username }) {
setSavingSettings(true);
setActionMsg('');
try {
- await nodeOp('setNodeSettings', { settings: editSettings });
+ // What was changed, and nothing else. Sending the whole form stored every
+ // setting the operator had not touched as a choice, in the roster and in
+ // node.toml, so no later default ever reached that node again: one
+ // saved stream cap kept connection_processes at 1 for good.
+ const changed = Object.fromEntries(Object.entries(editSettings).filter(
+ ([k, v]) => JSON.stringify(v) !== JSON.stringify((nodeSettings || {})[k])));
+ if (Object.keys(changed).length) {
+ await nodeOp('setNodeSettings', { settings: changed });
+ }
setNodeSettings({ ...editSettings });
setActionMsg(t('node.settings_saved'));
} catch (err) {
@@ -509,7 +517,7 @@ export function NodePage({ groups, token, username }) {
} finally {
setSavingSettings(false);
}
- }, [editSettings]);
+ }, [editSettings, nodeSettings]);
const saveStun = useCallback(async () => {
if (!editStun) return;