feat(systemd): add and enable continuous tmux-auto-approver user daemon

This commit is contained in:
operator
2026-10-07 00:49:23 +00:00
parent 34b0ef9fe2
commit e25d2cf4cc
12 changed files with 915 additions and 62 deletions
+29
View File
@@ -239,6 +239,35 @@ class TestRuntimeRows(unittest.TestCase):
self.assertTrue(rows[1]["squeezed"])
class TestNodeFromSession(unittest.TestCase):
def test_conforming_sessions(self):
self.assertEqual(w.node_from_session("pip--worker--01"), "pip")
self.assertEqual(w.node_from_session("muse--repair--09"), "muse")
self.assertEqual(w.node_from_session("646--watch--a1"), "646")
self.assertEqual(w.node_from_session("PIP--X--1"), "pip")
def test_adhoc_sessions_have_no_node(self):
for name in ("muse", "repair-09", "swarm-worker", "main",
"", None):
self.assertIsNone(w.node_from_session(name), name)
def test_rejects_unknown_node_and_single_dash(self):
self.assertIsNone(w.node_from_session("foo--worker--01"))
self.assertIsNone(w.node_from_session("pip-worker-01"))
self.assertIsNone(w.node_from_session("pip--worker"))
def test_runtime_rows_carry_node(self):
listing = "pip--audit--a1\t1\t%37\tbash\t2880158\t80\t24\n"
r = mock.Mock(returncode=0, stdout=listing, stderr="")
with mock.patch.object(w, "_tmux", return_value=r), \
mock.patch.object(w, "capture_pane",
return_value=STATE_SHELL), \
mock.patch.object(w, "is_running", return_value=None):
rows = w.runtime_rows("/tmp/sock")
self.assertEqual(len(rows), 1)
self.assertEqual(rows[0]["node"], "pip")
class TestSpreadTargets(unittest.TestCase):
def _row(self, pane, is_muse, squeezed):
return {"socket": "/tmp/s", "session": "muse", "window": "1",