=== [INFO] start ===
{
    "timestamp": "2026-10-08 10:06:18",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "start",
    "tenant": "lms_tenant_icc",
    "batch_size": 100,
    "repair": false,
    "verify_moodle": true,
    "email": null,
    "student_id": null
}

=== [INFO] completed ===
{
    "timestamp": "2026-10-08 17:06:18",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "completed",
    "tenant": "lms_tenant_icc",
    "stats": {
        "processed": 0,
        "synced": 0,
        "failed": 0,
        "skipped": 0,
        "verified_ok": 0,
        "verify_failed": 0
    }
}

=== [INFO] start ===
{
    "timestamp": "2026-10-08 10:13:51",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "start",
    "tenant": "lms_tenant_icc",
    "batch_size": 100,
    "repair": false,
    "require_enroll": false,
    "verify_moodle": true,
    "email": null,
    "student_id": null
}

=== [WARNING] failed ===
{
    "timestamp": "2026-10-08 17:13:51",
    "level": "WARNING",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "failed",
    "assessment_id": 1,
    "reason": "moodle_not_completed",
    "activity_id": 5567,
    "cmid": 5844,
    "moodle_user_id": 31,
    "verify_result": "moodle_not_completed"
}

=== [WARNING] failed ===
{
    "timestamp": "2026-10-08 17:13:51",
    "level": "WARNING",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "failed",
    "assessment_id": 2,
    "reason": "moodle_not_completed",
    "activity_id": 5572,
    "cmid": 5848,
    "moodle_user_id": 31,
    "verify_result": "moodle_not_completed"
}

=== [INFO] completed ===
{
    "timestamp": "2026-10-08 17:13:51",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "completed",
    "tenant": "lms_tenant_icc",
    "stats": {
        "processed": 2,
        "synced": 0,
        "failed": 2,
        "skipped": 0,
        "verified_ok": 0,
        "verify_failed": 2
    }
}

=== [INFO] start ===
{
    "timestamp": "2026-10-08 10:17:48",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "start",
    "tenant": "lms_tenant_icc",
    "batch_size": 100,
    "repair": false,
    "require_enroll": false,
    "verify_moodle": true,
    "email": null,
    "student_id": null
}

=== [WARNING] failed ===
{
    "timestamp": "2026-10-08 17:17:48",
    "level": "WARNING",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "failed",
    "assessment_id": 1,
    "reason": "moodle_not_completed",
    "activity_id": 5567,
    "cmid": 5844,
    "moodle_user_id": 31,
    "verify_result": "moodle_not_completed"
}

=== [WARNING] failed ===
{
    "timestamp": "2026-10-08 17:17:49",
    "level": "WARNING",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "failed",
    "assessment_id": 2,
    "reason": "moodle_not_completed",
    "activity_id": 5572,
    "cmid": 5848,
    "moodle_user_id": 31,
    "verify_result": "moodle_not_completed"
}

=== [INFO] completed ===
{
    "timestamp": "2026-10-08 17:17:49",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "completed",
    "tenant": "lms_tenant_icc",
    "stats": {
        "processed": 2,
        "synced": 0,
        "failed": 2,
        "skipped": 0,
        "verified_ok": 0,
        "verify_failed": 2
    }
}

=== [INFO] start ===
{
    "timestamp": "2026-10-08 10:26:55",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "start",
    "tenant": "lms_tenant_icc",
    "batch_size": 100,
    "repair": true,
    "require_enroll": false,
    "verify_moodle": true,
    "email": null,
    "student_id": null
}

=== [INFO] synced ===
{
    "timestamp": "2026-10-08 17:26:56",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "synced",
    "assessment_id": 1,
    "activity_id": 5567,
    "cmid": 5844,
    "moodle_user_id": 31,
    "verify_result": "ok"
}

=== [INFO] synced ===
{
    "timestamp": "2026-10-08 17:26:56",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "synced",
    "assessment_id": 2,
    "activity_id": 5572,
    "cmid": 5848,
    "moodle_user_id": 31,
    "verify_result": "ok"
}

=== [INFO] completed ===
{
    "timestamp": "2026-10-08 17:26:56",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "completed",
    "tenant": "lms_tenant_icc",
    "stats": {
        "processed": 2,
        "synced": 2,
        "failed": 0,
        "skipped": 0,
        "verified_ok": 2,
        "verify_failed": 0
    }
}

=== [INFO] start ===
{
    "timestamp": "2026-10-08 10:27:57",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "start",
    "tenant": "lms_tenant_icc",
    "batch_size": 100,
    "repair": false,
    "require_enroll": false,
    "verify_moodle": true,
    "email": null,
    "student_id": null
}

=== [INFO] synced ===
{
    "timestamp": "2026-10-08 17:27:57",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "synced",
    "assessment_id": 1,
    "activity_id": 5567,
    "cmid": 5844,
    "moodle_user_id": 31,
    "verify_result": "ok"
}

=== [INFO] synced ===
{
    "timestamp": "2026-10-08 17:27:57",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "synced",
    "assessment_id": 2,
    "activity_id": 5572,
    "cmid": 5848,
    "moodle_user_id": 31,
    "verify_result": "ok"
}

=== [INFO] completed ===
{
    "timestamp": "2026-10-08 17:27:57",
    "level": "INFO",
    "source": "SpeakwellSyncActivityCompletionCommand",
    "message": "completed",
    "tenant": "lms_tenant_icc",
    "stats": {
        "processed": 2,
        "synced": 2,
        "failed": 0,
        "skipped": 0,
        "verified_ok": 2,
        "verify_failed": 0
    }
}

