/**
* `dwatch_session` cookie の属性(D-072 / 指示書I 段階3-1)。
*
* ★1箇所に閉じ込めること★ — 発行(login)と削除(logout)と判定(proxy)で
* 名前や属性がズレると、消したつもりの cookie が残るなどの事故になる。
*/
/**
* cookie 名。★`lib/logger/redact.ts` のマスキング対象と同じ文字列であること★
* (`lib/proxy/authenticate.ts` の `SESSION_COOKIE_NAME` もこれを再輸出している)
*/
export const SESSION_COOKIE_NAME = "dwatch_session";
/**
* 発行時の属性。
*
* | 項目 | 値 | 理由 |
* |---|---|---|
* | `httpOnly` | true | クライアントの JS から読めなくする |
* | `secure` | true | ブラウザ〜LB 間は HTTPS。アプリが HTTP で応答してもブラウザは受け入れる |
* | `sameSite` | lax | D-072 |
* | `path` | / | 全ルートで送られるように |
*
* ★`expires` / `maxAge` を付けないこと★
* `CLAUDE.md` §7「トークン期限/残日数の実装」は**禁止**。
* 公式例には載っているが、ここでは入れない(= セッション cookie になる)。
*/
export const SESSION_COOKIE_OPTIONS = {
httpOnly: true,
secure: true,
sameSite: "lax",
path: "/",
} as const;