INFO:     Started server process [1067068]
INFO:     Waiting for application startup.
/home/hiplstaging2/public_html/face-detection.hipl-staging2.com/.venv/lib64/python3.12/site-packages/face_recognition_models/__init__.py:7: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.
  from pkg_resources import resource_filename
2026-10-14 15:54:37,774 attendance INFO ready: model=buffalo_l members=1
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO:     127.0.0.1:47020 - "GET /api/health HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET / HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/oDtNwdAcnt3tD6LUPojn8xMCV_FpwVLW" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/j8NOF7KnNGt72QmmlMGZ1cLXS1u4TOJ9" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/BaRV-Ac_ZaPpACM5TzKv4d_zPmbPJzGe" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/RoTGMXdSC75MgIkUdYitXyhWHVJ0S4JQ" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/sm426YD_P5M7w4YBZsTv5WY9qv9l-k9z" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/9p2wzNsWzfAyBc9KzQedFG7Zo1T7KPvZ" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     18.234.198.18:0 - "GET / HTTP/1.1" 200 OK
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
INFO:     52.205.244.136:0 - "GET / HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/kbcL_YYkUOmCWjIbBbwyzGUciM5Kabl-" [accepted]
INFO:     connection open
INFO:     3.95.230.111:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     3.85.84.228:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET / HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     223.238.203.90:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     223.238.200.150:0 - "POST /api/scan/start HTTP/1.1" 200 OK
INFO:     connection closed
Session expired: False
Session already attached: False
INFO:     ('223.238.200.150', 0) - "WebSocket /ws/scan/qsb--yaMKRN8sLBQWbM2XtEc5fmcE92b" [accepted]
INFO:     connection open
INFO:     49.36.239.41:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('49.36.239.41', 0) - "WebSocket /ws/scan/MNMaRpG2GKz5ASt-LZtFlELySFzurICo" [accepted]
INFO:     connection open
WebSocket disconnected for session
INFO:     connection closed
WebSocket disconnected for session
INFO:     connection closed
INFO:     52.90.145.245:0 - "GET / HTTP/1.1" 200 OK
INFO:     54.174.50.89:0 - "GET / HTTP/1.1" 200 OK
INFO:     3.95.67.185:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/WWOsPkPUOsZ_3-kWopWWfcR-zcyTKXyP" [accepted]
INFO:     connection open
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
2026-10-14 16:04:20,850 attendance.store INFO identify: member=123 dist=0.200 conf=79.99 rival=None margin=inf
2026-10-14 16:04:20,850 attendance.store INFO identify: member=123 dist=0.203 conf=79.70 rival=None margin=inf
2026-10-14 16:04:20,850 attendance.store INFO identify: member=123 dist=0.205 conf=79.46 rival=None margin=inf
2026-10-14 16:04:20,850 attendance.store INFO identify: member=123 dist=0.189 conf=81.09 rival=None margin=inf
2026-10-14 16:04:20,851 attendance.session INFO member=unidentified phase=pre ok=True score=0.801 margin=0.000 frame_ratio=1.00 rivals=[]
2026-10-14 16:04:20,851 attendance.session INFO adopted member=123 confidence=80.06
2026-10-14 16:04:22,120 attendance.store INFO identify: member=123 dist=0.195 conf=80.47 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.207 conf=79.27 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.203 conf=79.74 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.202 conf=79.79 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.session INFO member=123 phase=post ok=True score=0.798 margin=0.000 frame_ratio=1.00 rivals=[]
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.200 conf=79.99 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.203 conf=79.70 rival=None margin=inf
2026-10-14 16:04:22,121 attendance.store INFO identify: member=123 dist=0.205 conf=79.46 rival=None margin=inf
2026-10-14 16:04:22,122 attendance.store INFO identify: member=123 dist=0.189 conf=81.09 rival=None margin=inf
2026-10-14 16:04:22,122 attendance.store INFO identify: member=123 dist=0.195 conf=80.47 rival=None margin=inf
2026-10-14 16:04:22,122 attendance.store INFO identify: member=123 dist=0.207 conf=79.27 rival=None margin=inf
2026-10-14 16:04:22,122 attendance.store INFO identify: member=123 dist=0.203 conf=79.74 rival=None margin=inf
2026-10-14 16:04:22,122 attendance.store INFO identify: member=123 dist=0.202 conf=79.79 rival=None margin=inf
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/_Mpk-riDjb-KYzpptFKUqw99Xrjh_llJ" [accepted]
INFO:     connection open
INFO:     connection closed
WebSocket disconnected for session
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/reset HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
2026-10-14 16:07:52,047 attendance INFO enrolled member=123 sample=1
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
2026-10-14 16:08:02,724 attendance INFO enrolled member=123 sample=2
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
2026-10-14 16:08:26,501 attendance INFO enrolled member=123 sample=3
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
2026-10-14 16:08:35,295 attendance INFO enrolled member=123 sample=4
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
2026-10-14 16:08:37,401 attendance INFO enrolled member=123 sample=5
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/VC46CxAqG2vBKmZyzn3v7Ki1DtyCzcHg" [accepted]
INFO:     connection open
2026-10-14 16:09:22,457 attendance.store INFO identify: member=123 dist=0.137 conf=86.35 rival=None margin=inf
2026-10-14 16:09:22,457 attendance.store INFO identify: member=123 dist=0.153 conf=84.74 rival=None margin=inf
2026-10-14 16:09:22,458 attendance.store INFO identify: member=123 dist=0.155 conf=84.53 rival=None margin=inf
2026-10-14 16:09:22,458 attendance.store INFO identify: member=123 dist=0.137 conf=86.27 rival=None margin=inf
2026-10-14 16:09:22,458 attendance.session INFO member=unidentified phase=pre ok=True score=0.855 margin=0.000 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/-QCgUd2GBz1jI2T1SjPjIkfdJPhUSPG6" [accepted]
INFO:     connection open
2026-10-14 16:09:27,431 attendance.store INFO identify: member=123 dist=0.202 conf=79.85 rival=None margin=inf
2026-10-14 16:09:27,431 attendance.store INFO identify: member=123 dist=0.181 conf=81.93 rival=None margin=inf
2026-10-14 16:09:27,431 attendance.store INFO identify: member=123 dist=0.158 conf=84.21 rival=None margin=inf
2026-10-14 16:09:27,431 attendance.store INFO identify: member=123 dist=0.171 conf=82.90 rival=None margin=inf
2026-10-14 16:09:27,431 attendance.session INFO member=unidentified phase=pre ok=True score=0.822 margin=0.000 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/Xiq70wK6GOYuLIZ0EwWCkyodElweRjCq" [accepted]
INFO:     connection open
2026-10-14 16:10:03,926 attendance.store INFO identify: member=123 dist=0.198 conf=80.24 rival=None margin=inf
2026-10-14 16:10:03,927 attendance.store INFO identify: member=123 dist=0.207 conf=79.30 rival=None margin=inf
2026-10-14 16:10:03,927 attendance.store INFO identify: member=123 dist=0.202 conf=79.80 rival=None margin=inf
2026-10-14 16:10:03,927 attendance.store INFO identify: member=123 dist=0.210 conf=79.01 rival=None margin=inf
2026-10-14 16:10:03,928 attendance.session INFO member=unidentified phase=pre ok=True score=0.796 margin=0.000 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/44E4LRETPXM29KhMSYUK7IIUw7BGrdiG" [accepted]
INFO:     connection open
WebSocket disconnected for session
INFO:     connection closed
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
2026-10-14 16:12:37,571 attendance INFO enrolled member=121 sample=1
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
2026-10-14 16:12:45,715 attendance INFO enrolled member=121 sample=2
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
2026-10-14 16:13:07,085 attendance INFO enrolled member=121 sample=3
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
2026-10-14 16:13:14,846 attendance INFO enrolled member=121 sample=4
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
2026-10-14 16:13:20,080 attendance INFO enrolled member=121 sample=5
INFO:     122.162.240.56:0 - "POST /api/admin/members/121/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/RffcjinFXitANhgKygXbbg8KaUJNr3Bz" [accepted]
INFO:     connection open
2026-10-14 16:13:41,974 attendance.store INFO identify: member=121 dist=0.204 conf=79.57 rival=123 margin=0.578
2026-10-14 16:13:41,974 attendance.store INFO identify: member=121 dist=0.216 conf=78.44 rival=123 margin=0.571
2026-10-14 16:13:41,974 attendance.store INFO identify: member=121 dist=0.166 conf=83.43 rival=123 margin=0.611
2026-10-14 16:13:41,974 attendance.store INFO identify: member=121 dist=0.117 conf=88.31 rival=123 margin=0.650
2026-10-14 16:13:41,974 attendance.session INFO member=unidentified phase=pre ok=True score=0.824 margin=0.602 frame_ratio=1.00 rivals=[]
2026-10-14 16:13:41,975 attendance.session INFO adopted member=121 confidence=82.44
2026-10-14 16:13:43,381 attendance.store INFO identify: member=121 dist=0.159 conf=84.06 rival=123 margin=0.594
2026-10-14 16:13:43,381 attendance.store INFO identify: member=121 dist=0.171 conf=82.87 rival=123 margin=0.560
2026-10-14 16:13:43,381 attendance.store INFO identify: member=121 dist=0.178 conf=82.20 rival=123 margin=0.558
2026-10-14 16:13:43,381 attendance.store INFO identify: member=121 dist=0.174 conf=82.58 rival=123 margin=0.571
2026-10-14 16:13:43,381 attendance.session INFO member=121 phase=post ok=True score=0.829 margin=0.571 frame_ratio=1.00 rivals=[]
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.204 conf=79.57 rival=123 margin=0.578
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.216 conf=78.44 rival=123 margin=0.571
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.166 conf=83.43 rival=123 margin=0.611
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.117 conf=88.31 rival=123 margin=0.650
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.159 conf=84.06 rival=123 margin=0.594
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.171 conf=82.87 rival=123 margin=0.560
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.178 conf=82.20 rival=123 margin=0.558
2026-10-14 16:13:43,382 attendance.store INFO identify: member=121 dist=0.174 conf=82.58 rival=123 margin=0.571
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/vPtVnpId4xacPdWKn3HYMGXCiC4D1c18" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/xGA1JiYGkhRtvFaUrsPzjN3LGmpc7Fi1" [accepted]
INFO:     connection open
WebSocket disconnected for session
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
2026-10-14 16:15:25,745 attendance INFO enroll rejected: member=785 matches other member=121 (dist=0.166)
INFO:     122.162.240.56:0 - "POST /api/admin/members/785/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/TKg3LxOXLBPRo0PSkaLblj0JV5arjgVg" [accepted]
INFO:     connection open
2026-10-14 16:16:21,621 attendance.store INFO identify: member=121 dist=0.208 conf=79.24 rival=123 margin=0.564
2026-10-14 16:16:21,622 attendance.store INFO identify: member=121 dist=0.181 conf=81.86 rival=123 margin=0.577
2026-10-14 16:16:21,622 attendance.store INFO identify: member=121 dist=0.186 conf=81.39 rival=123 margin=0.579
2026-10-14 16:16:21,623 attendance.store INFO identify: member=121 dist=0.173 conf=82.73 rival=123 margin=0.583
2026-10-14 16:16:21,623 attendance.session INFO member=unidentified phase=pre ok=True score=0.813 margin=0.576 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/qCbYzD3bcl4Q6hoJ9FbSlaCWtH77G7oc" [accepted]
INFO:     connection open
INFO:     122.162.240.56:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/N1yQt4gQcxIUpgRUrtGNhOW_rWlk2pNY" [accepted]
INFO:     connection open
WebSocket disconnected for session
INFO:     connection closed
INFO:     130.12.180.117:0 - "GET /.env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.git/HEAD HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.backup HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.old HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.save HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.bak HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.prod HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.production HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.staging HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.local HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.live HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.dev HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /.env.stage HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /404.shtml HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /config/.env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /app/.env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /400.shtml HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /backend/.env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /api/.env HTTP/1.1" 404 Not Found
INFO:     130.12.180.117:0 - "GET /application/.env HTTP/1.1" 200 OK
INFO:     130.12.180.117:0 - "GET /functions/.env HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/reset HTTP/1.1" 200 OK
2026-10-14 16:24:17,913 attendance INFO enroll rejected: member=123 matches other member=121 (dist=0.169)
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/reset HTTP/1.1" 200 OK
2026-10-14 16:24:25,067 attendance INFO enroll rejected: member=123 matches other member=121 (dist=0.190)
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 304 Not Modified
INFO:     57.131.131.18:0 - "GET / HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET / HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET / HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.25.218.114:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 304 Not Modified
INFO:     122.162.240.56:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /favicon.ico HTTP/1.1" 200 OK
2026-10-14 16:37:32,752 attendance INFO enrolled member=234 sample=1
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
2026-10-14 16:38:16,379 attendance INFO enrolled member=234 sample=2
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
2026-10-14 16:38:25,405 attendance INFO enrolled member=234 sample=3
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
2026-10-14 16:38:33,390 attendance INFO enrolled member=234 sample=4
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
2026-10-14 16:38:44,822 attendance INFO enrolled member=234 sample=5
INFO:     122.162.240.56:0 - "POST /api/admin/members/234/enroll HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET / HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET / HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     16.147.250.84:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/852A4dDI7G57ARkJh8J7lcRl7xiGJ-vu" [accepted]
INFO:     connection open
2026-10-14 16:39:56,916 attendance.store INFO identify: no match (best member=234 dist=0.598 rival=121 dist=0.733)
2026-10-14 16:39:56,917 attendance.store INFO identify: no match (best member=234 dist=0.604 rival=121 dist=0.718)
2026-10-14 16:39:56,917 attendance.store INFO identify: no match (best member=234 dist=0.591 rival=121 dist=0.725)
2026-10-14 16:39:56,918 attendance.store INFO identify: no match (best member=234 dist=0.608 rival=121 dist=0.734)
2026-10-14 16:39:56,918 attendance.session INFO member=unidentified phase=pre ok=False score=-1.000 margin=0.000 frame_ratio=0.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/NIZS0rUje0G96RE9veMxKZvqCqvkG8Z-" [accepted]
INFO:     connection open
2026-10-14 16:40:12,227 attendance.store INFO identify: no match (best member=234 dist=0.625 rival=121 dist=0.718)
2026-10-14 16:40:12,227 attendance.store INFO identify: no match (best member=234 dist=0.617 rival=121 dist=0.693)
2026-10-14 16:40:12,227 attendance.store INFO identify: no match (best member=234 dist=0.609 rival=121 dist=0.701)
2026-10-14 16:40:12,227 attendance.store INFO identify: no match (best member=234 dist=0.620 rival=121 dist=0.697)
2026-10-14 16:40:12,227 attendance.session INFO member=unidentified phase=pre ok=False score=-1.000 margin=0.000 frame_ratio=0.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/mGWgLjhChwk1SdEkxwqsGDKaees8ObSh" [accepted]
INFO:     connection open
2026-10-14 16:40:15,424 attendance.store INFO identify: no match (best member=234 dist=0.622 rival=121 dist=0.708)
2026-10-14 16:40:15,424 attendance.store INFO identify: no match (best member=234 dist=0.605 rival=121 dist=0.694)
2026-10-14 16:40:15,424 attendance.store INFO identify: no match (best member=234 dist=0.620 rival=121 dist=0.700)
2026-10-14 16:40:15,424 attendance.store INFO identify: no match (best member=234 dist=0.605 rival=121 dist=0.697)
2026-10-14 16:40:15,424 attendance.session INFO member=unidentified phase=pre ok=False score=-1.000 margin=0.000 frame_ratio=0.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/Bd014DltCkZVRVWIQQL70q4k8Qu6p2gr" [accepted]
INFO:     connection open
INFO:     52.24.65.217:0 - "GET / HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET / HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     52.24.65.217:0 - "GET /favicon.ico HTTP/1.1" 200 OK
2026-10-14 16:40:40,793 attendance.store INFO identify: member=234 dist=0.148 conf=85.25 rival=121 margin=0.478
2026-10-14 16:40:40,794 attendance.store INFO identify: member=234 dist=0.132 conf=86.81 rival=121 margin=0.501
2026-10-14 16:40:40,794 attendance.store INFO identify: member=234 dist=0.167 conf=83.26 rival=121 margin=0.457
2026-10-14 16:40:40,794 attendance.store INFO identify: member=234 dist=0.214 conf=78.58 rival=121 margin=0.407
2026-10-14 16:40:40,794 attendance.session INFO member=unidentified phase=pre ok=True score=0.835 margin=0.461 frame_ratio=1.00 rivals=[]
2026-10-14 16:40:40,795 attendance.session INFO adopted member=234 confidence=83.47
2026-10-14 16:40:47,165 attendance.store INFO identify: member=234 dist=0.174 conf=82.60 rival=121 margin=0.483
2026-10-14 16:40:47,166 attendance.store INFO identify: member=234 dist=0.177 conf=82.25 rival=121 margin=0.486
2026-10-14 16:40:47,166 attendance.store INFO identify: member=234 dist=0.179 conf=82.08 rival=121 margin=0.491
2026-10-14 16:40:47,166 attendance.store INFO identify: member=234 dist=0.168 conf=83.15 rival=121 margin=0.489
2026-10-14 16:40:47,166 attendance.session INFO member=234 phase=post ok=True score=0.825 margin=0.487 frame_ratio=1.00 rivals=[]
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.148 conf=85.25 rival=121 margin=0.478
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.132 conf=86.81 rival=121 margin=0.501
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.167 conf=83.26 rival=121 margin=0.457
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.214 conf=78.58 rival=121 margin=0.407
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.174 conf=82.60 rival=121 margin=0.483
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.177 conf=82.25 rival=121 margin=0.486
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.179 conf=82.08 rival=121 margin=0.491
2026-10-14 16:40:47,167 attendance.store INFO identify: member=234 dist=0.168 conf=83.15 rival=121 margin=0.489
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/PWcKg2alG6JbQYU4Isgts4s70oZ2cq5s" [accepted]
INFO:     connection open
2026-10-14 16:41:08,981 attendance.store INFO identify: member=234 dist=0.176 conf=82.41 rival=121 margin=0.490
2026-10-14 16:41:08,981 attendance.store INFO identify: member=234 dist=0.183 conf=81.68 rival=121 margin=0.481
2026-10-14 16:41:08,981 attendance.store INFO identify: member=234 dist=0.175 conf=82.46 rival=121 margin=0.482
2026-10-14 16:41:08,982 attendance.store INFO identify: member=234 dist=0.180 conf=81.96 rival=121 margin=0.484
2026-10-14 16:41:08,982 attendance.session INFO member=unidentified phase=pre ok=True score=0.821 margin=0.484 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/07tQ6JSTZsxNSpbWB-yfSRXJnptslpX-" [accepted]
INFO:     connection open
INFO:     connection closed
WebSocket disconnected for session
INFO:     122.162.240.56:0 - "POST /api/admin/members HTTP/1.1" 200 OK
2026-10-14 16:41:59,668 attendance INFO enroll rejected: member=123 matches other member=121 (dist=0.137)
INFO:     122.162.240.56:0 - "POST /api/admin/members/123/enroll HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/GA9E5IvDZve0C-AE-LeS5i7U2J15I29o" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/0JMe1fHRZkVHAgQC27Lk-oEuJdy_V5NS" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/PYlLVa0NVzy8EZQ_H-Vok2XXLhNJFkgZ" [accepted]
INFO:     connection open
INFO:     122.162.240.56:0 - "GET / HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     122.162.240.56:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     66.249.66.168:0 - "GET /robots.txt HTTP/1.1" 200 OK
INFO:     66.249.66.169:0 - "HEAD / HTTP/1.1" 405 Method Not Allowed
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/V5s-oYMP2qDJ3k_NCh9rvWIaF8tkU87e" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/GvB1t4rKS89CbD1NwOs7ctFUjCt6Unvf" [accepted]
INFO:     connection open
INFO:     47.15.102.198:0 - "GET / HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET / HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/css/app.css?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/app.js?v=8e71e584b1b6 HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/pages/scan.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/pages/enroll.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/api.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/camera.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/ui.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /static/js/ws.js HTTP/1.1" 200 OK
INFO:     49.44.140.42:0 - "GET /favicon.ico HTTP/1.1" 200 OK
INFO:     47.15.102.198:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('47.15.102.198', 0) - "WebSocket /ws/scan/VjJs3c547Jm_mTFh2BK2FfAAj4NUG4Ll" [accepted]
INFO:     connection open
2026-10-14 16:58:56,326 attendance.store INFO identify: member=234 dist=0.268 conf=73.18 rival=121 margin=0.379
2026-10-14 16:58:56,327 attendance.store INFO identify: member=234 dist=0.265 conf=73.45 rival=121 margin=0.383
2026-10-14 16:58:56,327 attendance.store INFO identify: member=234 dist=0.276 conf=72.42 rival=121 margin=0.395
2026-10-14 16:58:56,327 attendance.store INFO identify: member=234 dist=0.281 conf=71.94 rival=121 margin=0.385
2026-10-14 16:58:56,327 attendance.session INFO member=unidentified phase=pre ok=True score=0.728 margin=0.386 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     47.15.102.198:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('47.15.102.198', 0) - "WebSocket /ws/scan/q1SDkoyduouvQMyGxzJc3Hx1MrzxwGDI" [accepted]
INFO:     connection open
INFO:     connection closed
WebSocket disconnected for session
INFO:     47.15.102.198:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('47.15.102.198', 0) - "WebSocket /ws/scan/N8xAa1msVoFST2IoUe37CPndR1LG6M53" [accepted]
INFO:     connection open
INFO:     connection closed
INFO:     122.162.240.56:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('122.162.240.56', 0) - "WebSocket /ws/scan/FmccVTZ3cOVe5utbR2cxg2UzF07WlNFz" [accepted]
INFO:     connection open
2026-10-14 16:59:22,654 attendance.store INFO identify: member=234 dist=0.295 conf=70.53 rival=121 margin=0.435
2026-10-14 16:59:22,655 attendance.store INFO identify: member=234 dist=0.293 conf=70.67 rival=121 margin=0.418
2026-10-14 16:59:22,655 attendance.store INFO identify: member=234 dist=0.280 conf=71.98 rival=121 margin=0.438
2026-10-14 16:59:22,655 attendance.store INFO identify: member=234 dist=0.280 conf=72.00 rival=121 margin=0.437
2026-10-14 16:59:22,655 attendance.session INFO member=unidentified phase=pre ok=True score=0.713 margin=0.432 frame_ratio=1.00 rivals=[]
INFO:     connection closed
INFO:     47.15.102.198:0 - "POST /api/scan/start HTTP/1.1" 200 OK
Session expired: False
Session already attached: False
INFO:     ('47.15.102.198', 0) - "WebSocket /ws/scan/P_OGoaQMiTaY31o4j50y9clObh6rZt3A" [accepted]
INFO:     connection open
