Ship War Room UX, CEO inbox, mobile chat, and Agents NAS workspace.
Make A2A togglable, keep reply context while reading, route agent data to //10.4.7.11/share/Agents, and polish themes plus export-intel sync cancel.
This commit is contained in:
@@ -1372,7 +1372,9 @@ def api_sync_places(payload: SyncRequestIn) -> dict[str, Any]:
|
||||
job_id = start_job("places", f"Google Places · {len(countries)} landen", total=len(countries))
|
||||
results: dict[str, Any] = {}
|
||||
try:
|
||||
from app.export_intel_sync_progress import SyncCancelled, raise_if_cancelled
|
||||
for i, c in enumerate(countries, start=1):
|
||||
raise_if_cancelled()
|
||||
job_step(job_id, message=f"Google Places {i}/{len(countries)}: {c}", country=c, current=i, total=len(countries))
|
||||
results[c] = sync_places_country(c)
|
||||
time.sleep(1)
|
||||
@@ -1385,6 +1387,18 @@ def api_sync_places(payload: SyncRequestIn) -> dict[str, Any]:
|
||||
return {"status": "completed", "phase": "B", "result": results}
|
||||
|
||||
|
||||
|
||||
|
||||
@router.post("/sync/cancel")
|
||||
def api_sync_cancel() -> dict[str, Any]:
|
||||
"""Request cancellation of the currently running sync job(s)."""
|
||||
from app.export_intel_sync_progress import request_cancel, get_monitor_snapshot
|
||||
out = request_cancel("user")
|
||||
snap = get_monitor_snapshot()
|
||||
out["any_running"] = snap.get("any_running")
|
||||
out["active_jobs"] = [{"id": j.get("id"), "label": j.get("label"), "status": j.get("status")} for j in snap.get("active_jobs", [])]
|
||||
return out
|
||||
|
||||
@router.get("/sync/status")
|
||||
def sync_status() -> dict[str, Any]:
|
||||
from app.export_intel_sync_progress import get_monitor_snapshot
|
||||
|
||||
Reference in New Issue
Block a user