aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-common/src/meshbay_common/adminop.py
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-10-12 00:17:32 +0200
committerChristophe Besson <cbesson@gmail.com>2026-10-12 00:17:32 +0200
commit14911aae21ec4975f7a805b91e3c4867cb41974b (patch)
tree8c00230a88053905fd77938f3a9539efeb4c3094 /packages/meshbay-common/src/meshbay_common/adminop.py
parentf6f107e02c7a4aa7326c9a82310a239327d81ed6 (diff)
downloadmeshbay-14911aae21ec4975f7a805b91e3c4867cb41974b.tar.gz
feat: let the operator pause and resume a root's indexing (MNP 6.2)
A whole-root walk now checks its root before every file: removed or ejected, it stops instead of reading the drive to the end; paused, it finishes from the hash cache alone. A paused root is not watched, not swept by reconcile and survives a restart (roster), its indexed files stay served. Resume runs the reconcile sweep over the root, so entries and their enrichment are kept. Signed root_pause / root_resume over MNP, loopback routes, CLI `root pause|resume`, a pause button on the indexing dock and pause/resume in the roots table of Group settings. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-common/src/meshbay_common/adminop.py')
-rw-r--r--packages/meshbay-common/src/meshbay_common/adminop.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/packages/meshbay-common/src/meshbay_common/adminop.py b/packages/meshbay-common/src/meshbay_common/adminop.py
index f59b420..43d2a7f 100644
--- a/packages/meshbay-common/src/meshbay_common/adminop.py
+++ b/packages/meshbay-common/src/meshbay_common/adminop.py
@@ -113,6 +113,11 @@ OP_CHAT_EPOCH = "chat_epoch"
OP_CHAT_PURGE = "chat_purge"
OP_ROOT_EJECT = "root_eject"
OP_ROOT_PLUG = "root_plug"
+# Stop and restart the indexing of one root (MNP 6.2). The subject is the root
+# name, like eject and plug. Pausing narrows what the node does and resuming
+# returns to what the operator already shared, so neither widens anything.
+OP_ROOT_PAUSE = "root_pause"
+OP_ROOT_RESUME = "root_resume"
# Also gone with 6.0, because no client ever sent them: `gek_rotate`,
# `member_unpin`, `transfer_limits` and `group_detach`. Rotating the group key,
# forgetting an identity, the per-member transfer caps and no longer hosting a