fix: bound unproven profile submissions and support single-worker takeover
This commit is contained in:
@@ -668,6 +668,7 @@ def run_poll_loop(
|
||||
modelhub_client = modelhub_client or _build_modelhub_client(base_args)
|
||||
template_selector = template_selector or TemplateSelector()
|
||||
|
||||
active_tasks = []
|
||||
if state_sync is not None and state_sync.healthy:
|
||||
try:
|
||||
active_tasks = (
|
||||
@@ -698,6 +699,8 @@ def run_poll_loop(
|
||||
ledger_path=Path(base_args.ledger_path),
|
||||
)
|
||||
repaired_contexts = outcome_tracker.merge_task_contexts(recovered_contexts)
|
||||
adopted = outcome_tracker.adopt_active_tasks(active_tasks, recovered_contexts)
|
||||
log(f"[takeover] active_adopted={adopted} existing_queue=preserved ownership=unchanged")
|
||||
if repaired_contexts:
|
||||
log(f"[outcome-recovery] metadata_repaired={repaired_contexts}")
|
||||
OUTCOME_SYNC_INTERVAL = 3
|
||||
@@ -889,6 +892,12 @@ def run_poll_loop(
|
||||
if synced > 0:
|
||||
log(f"[poll] cycle={cycles} outcome_sync_updated={synced}")
|
||||
sync_feedback = outcome_tracker.get_stats_report()
|
||||
own = (sync_feedback.get("agentSummaries") or {}).get(AGENT_VERSION) or {}
|
||||
own_pending = sum(row.get("agentVersion") == AGENT_VERSION
|
||||
for row in outcome_tracker.pending_records())
|
||||
log(f"[feedback] version={AGENT_VERSION} success={own.get('successCount', 0)} "
|
||||
f"failed={own.get('failureCount', 0)} pending={own_pending} "
|
||||
f"unknown_failures={own.get('unresolvedFailureCount', 0)}")
|
||||
active_block_keys = _persist_architecture_blacklist(
|
||||
sync_feedback,
|
||||
path=Path(
|
||||
|
||||
Reference in New Issue
Block a user