feat(harvester,jobs): fast gateway harvesting, parallel thread polling, dynamic sidechat spawning

- Implement muse_hybrid fast gateway in response-harvester.py with ThreadPoolExecutor
- Reduce harvest cycle time from ~1m50s to ~18s; eliminate browser tab-hopping and CDP lock contention
- Add smart active thread filtering in get_monitored_threads to prune dead historical test pipes
- Fix initial watermark ingestion logic so fresh sidechats process first-arrival job responses
- Configure gw_wait window in dm.py (20s on reply:expected) so backend generation is not prematurely severed
- Update box-http-health, box-service-health, box-deep-health to dynamic timestamped sidechats without reuse_key
- Fix heartbeat job to route to dedicated heartbeat channel
This commit is contained in:
operator
2026-10-05 03:21:20 +00:00
parent 03ea7ed6d9
commit da59ad6edd
7 changed files with 214 additions and 172 deletions
+4 -2
View File
@@ -578,7 +578,8 @@ def dm_send(agent, target, message, verify=True, raw=False,
if is_uuid and recipient in VALID_AGENTS:
try:
import muse_hybrid
gw_res, gw_err = muse_hybrid.send_message(recipient, tagged, thread_id=nav_target, wait=0)
gw_wait = 20 if tags.get("reply:expected") else 10
gw_res, gw_err = muse_hybrid.send_message(recipient, tagged, thread_id=nav_target, wait=gw_wait)
if gw_res and not gw_err:
thread_uuid = nav_target
tags["thread"] = thread_uuid
@@ -635,7 +636,8 @@ def dm_send(agent, target, message, verify=True, raw=False,
os.replace(tmp_sc, SIDCHAT_MAP_FILE)
# Send immediately via gateway
gw_res, gw_err = muse_hybrid.send_message(recipient, tagged, thread_id=matched_uuid, wait=0)
gw_wait = 20 if tags.get("reply:expected") else 10
gw_res, gw_err = muse_hybrid.send_message(recipient, tagged, thread_id=matched_uuid, wait=gw_wait)
if gw_res and not gw_err:
thread_uuid = matched_uuid
tags["thread"] = thread_uuid