設計正本: ADR-0006 §6「検証方法」。依存は blocked_by(#728 / #729)で設定済み。
注: audit_logs への ANONYMIZE 記録の確認は #734 へ移譲(本 issue とは依存を張らず分離)。本 issue は SPI 挙動の検証に集中する。
スコープ
- SPI 単体テスト: Testcontainers で Keycloak + MySQL 8.4 を起動、Admin REST API 経由で read(profile)/ email-only write 戻しを検証(資格は Keycloak ストア、氏名等 read-only を確認)
- E2E(§6):
- Account Console から email 変更 →
users.email 反映(Update-Email 後)
- Account Console から氏名変更 →
users 未反映(read-only)
- Admin Console から user 作成 →
users 行追加(tenant 未所属)
- Admin Console から user 削除 →
users.deleted_at 更新 + 次回認証拒否、匿名化(email/oidc_sub/full_name placeholder)、UNIQUE 違反なし
- 楽観排他: profile 更新と Update-Email 同時更新 → 一方が 409 / OptimisticLockException
受け入れ条件
設計正本: ADR-0006 §6「検証方法」。依存は blocked_by(#728 / #729)で設定済み。
注: audit_logs への
ANONYMIZE記録の確認は #734 へ移譲(本 issue とは依存を張らず分離)。本 issue は SPI 挙動の検証に集中する。スコープ
users.email反映(Update-Email 後)users未反映(read-only)users行追加(tenant 未所属)users.deleted_at更新 + 次回認証拒否、匿名化(email/oidc_sub/full_nameplaceholder)、UNIQUE 違反なし受け入れ条件
removeUsertrue)を確認