Age assurance, not exact-age guessing
School-GIT accounts are intended for ages 13โ17. The verification architecture intentionally separates camera handling, native quality/any-movement preprocessing and the face/age estimator.
Production verification stays fail-closed until AGE_ASSURANCE_MODEL_BIN or AGE_ASSURANCE_PROVIDER_URL points to a validated face-detection + age-estimation system. The custom C++ movement/quality preprocessor alone can never issue an age claim.
mt-4 text-5xl font-black tracking-[-.05em]
mt-5 text-sm leading-7 text-slate-500
The age-assurance page captures four small grayscale frames directly from the camera. They are not placed in localStorage or a user profile.
The custom C++ process receives frames over stdin, extracts lighting/contrast/sharpness and any-movement signals in memory, wipes its frame buffers and exits. No left/right pose sequence is required.
3. Real face + age provider
A separately configured local executable or HTTPS provider must explicitly confirm exactly one detected face, report face-detection confidence, and return an age estimate/band with confidence. A bare age-band response is rejected.
A confident 13โ17 result creates a short-lived signed HTTP-only assurance cookie. Raw frames are not intentionally persisted to AETHER, URL-DB, files, profiles or the Points Bank.
The current account signup service checks the signed assurance claim before it creates any user record, then consumes the short-lived claim after successful signup.
rounded-2xl border border-white/[.08] bg-white/[.025] p-5
mt-2 text-xs leading-6 text-slate-500
mt-6 rounded-2xl border border-amber-300/10 bg-amber-300/[.025] p-4 text-xs leading-6 text-amber-100/60
mt-7 inline-block rounded-xl bg-white px-4 py-3 text-xs font-black text-black