# LeeSin worker — control plane

Chỉ 2 việc: xác minh danh tính Google (so với `OWNER_EMAIL`) và làm hộp thư
trung chuyển gói ghép nối đã mã hoá. **Không có dữ liệu người dùng đi qua đây.**

## Endpoint

| Method | Path | Auth | Việc |
|---|---|---|---|
| GET | `/health` | không | tình trạng + báo thiếu cấu hình |
| GET | `/instance` | không | client id Google, tên instance, email chủ đã che, TTL ghép nối |
| GET | `/tai-ve/windows` | không | tải gói cài đặt Windows (máy chủ đẩy lên bằng `leesin package`) |
| POST | `/auth/exchange` | không | đổi authorization code (PKCE) → ID token → phiên |
| POST | `/auth/verify` | không | nhận sẵn ID token → phiên |
| GET | `/whoami` | Bearer | soi phiên hiện tại |
| POST | `/pair/publish` | Bearer | máy cũ đặt gói ghép nối đã mã hoá |
| POST | `/pair/claim` | Bearer | máy mới lấy gói — đọc 1 lần rồi Worker xoá |
| POST | `/pair/cancel` | Bearer | huỷ gói đang chờ |

## Biến môi trường

`vars`: `INSTANCE_NAME`, `BUCKET_NAME`, `DRIVE_PREFIX`, `PAIRING_PREFIX`,
`PAIRING_TTL_SECONDS`, `SESSION_TTL_SECONDS`, `OWNER_EMAIL`, `GOOGLE_CLIENT_ID`.

`secrets`: `SESSION_SECRET`, `GOOGLE_CLIENT_SECRET`.

Ghi đè endpoint Google (`GOOGLE_ISSUERS`, `GOOGLE_JWKS_URL`, `GOOGLE_TOKEN_URL`,
`GOOGLE_AUTH_URL`) chỉ dùng cho bộ e2e — production để trống là chạy đúng Google thật.
