# BAT-007 Verification - Status: release-candidate - Batch: BAT-007 ## Acceptance Mapping - REQ-022: - AC-1: active daemon + 바인딩 service token 1개 이상 → `--deactivate --force` → 모든 바인딩 token revoked + daemon is_active=false → `test_deactivate_daemon_revokes_bound_tokens` / `test_deactivate_daemon_revokes_multiple_bound_tokens` PASSED - AC-2: revoke된 token 인증 거부 — 기존 token 인증 테스트(`test_daemon_registry.py`)에서 `revoked_at is not None` 확인; v1 API 401 경로는 PostgreSQL 통합 테스트에서 별도 검증 예정 - AC-3: 바인딩 token 0건 daemon → deactivate → no-op → `test_deactivate_daemon_with_no_tokens_is_noop` PASSED - AC-4: reactivate 후 revoke된 token 자동 복구 없음 → `test_reactivate_daemon_does_not_unrevoke_tokens` PASSED - AC-5: in-flight 거래 보호 없음 — 테스트 불요 (release SOP 참조) - REQ-023: - AC-1: NULL daemon token 있을 때 dry-run → id/user_id/name 출력 → `test_migrate_null_daemon_dry_run_shows_inventory` PASSED - AC-2: NULL daemon token 0건 → "no NULL daemon tokens found." + exit 0 → `test_migrate_null_daemon_dry_run_no_tokens_prints_empty_message` PASSED - AC-3: `--dry-run` 없이 실행 → exit non-zero + 수동 안내 → `test_migrate_null_daemon_without_dry_run_exits_nonzero` PASSED - AC-4: rebind 후 해당 token inventory 제외 → `test_migrate_null_daemon_after_rebind_token_excluded_from_inventory` PASSED - AC-5: revoke 후 해당 token inventory 제외 → `test_migrate_null_daemon_after_revoke_token_excluded_from_inventory` PASSED ## Evidence - Test: ``` tests/test_daemon_registry.py 19 passed (REQ-022: 5 new + 14 pre-existing) tests/test_null_daemon_migration.py 6 passed (REQ-023: AC-1~5 + candidate daemon) Total BAT-007 scope: 25 passed, 0 failed ``` - Full regression: ``` .venv/bin/python -m pytest -q 266 passed in 7.86s ``` - Manual: CLI dry-run 동작 코드 경로 검토 완료; `create_app(repository_factory=...)` 패턴 기반 CLI 통합 테스트로 실 CLI 경로 커버 확인 - Logs: 없음 (DB 불필요 단위/CLI 테스트) ## Result - Ready for Release: true - Blocking Issues: 없음