feat: stabilize multi-region runtime sync and worker orchestration

This commit is contained in:
root
2026-04-27 15:48:12 +08:00
parent 7cbde2aa78
commit 215a364891
137 changed files with 31931 additions and 1943 deletions

View File

@@ -1,5 +1,6 @@
import unittest
import sys
import unittest
from datetime import datetime, timedelta
sys.path.insert(0, "/www/wwwroot/getDomain/domainCheck")
@@ -7,6 +8,7 @@ sys.path.insert(0, "/www/wwwroot/getDomain/domainCheck")
from app.utils.database import _detect_job_item_step_priority
from app.utils.database import _ordered_step_claim_codes
from app.utils.database import _resolve_step_claim_quota
from app.utils.database import _select_preferred_claim_job_ids
class DetectJobItemClaimPriorityTestCase(unittest.TestCase):
@@ -46,9 +48,42 @@ class DetectJobItemClaimPriorityTestCase(unittest.TestCase):
_detect_job_item_step_priority("detect_register"),
)
def test_step_claim_quota_defaults_to_quarter_window_with_floor(self):
def test_step_claim_quota_defaults_to_full_window_for_large_pools(self):
self.assertEqual(64, _resolve_step_claim_quota(120))
self.assertEqual(300, _resolve_step_claim_quota(1200))
self.assertEqual(1200, _resolve_step_claim_quota(1200))
def test_select_preferred_claim_job_ids_prioritizes_running_jobs_even_if_older(self):
now = datetime(2026, 4, 24, 18, 30, 0)
selected = _select_preferred_claim_job_ids(
[
(19, "pending", now - timedelta(hours=60)),
(57, "running", now - timedelta(hours=72)),
(58, "pending", now - timedelta(hours=2)),
],
limit=3,
recent_hours=24,
now=now,
)
self.assertEqual([57, 58], selected)
def test_select_preferred_claim_job_ids_filters_out_stale_pending_jobs(self):
now = datetime(2026, 4, 24, 18, 30, 0)
selected = _select_preferred_claim_job_ids(
[
(19, "pending", now - timedelta(hours=60)),
(20, "pending", now - timedelta(hours=40)),
(58, "pending", now - timedelta(hours=2)),
(59, "pending", now - timedelta(minutes=30)),
],
limit=4,
recent_hours=24,
now=now,
)
self.assertEqual([59, 58], selected)
if __name__ == "__main__":