Skip to content

v1.5.1

Choose a tag to compare

@github-actions github-actions released this 14 Feb 05:21
· 12 commits to master since this release

简体中文 | English | Official Documentation

VerifyMC v1.5.1 Release Notes

Architecture: Registration Flow Refactoring

  • Extracted registration processing into dedicated RegistrationProcessingHandler with clear validation pipeline
  • Introduced RegistrationOutcome enum and RegistrationOutcomeResolver for deterministic outcome logic
  • Added RegistrationApplicationService, QuestionnaireApplicationService, ReviewApplicationService for business orchestration
  • Created ApiResponseFactory, WebResponseHelper, WebAuthHelper utility classes to reduce code duplication
  • Introduced RegistrationRequest and RegistrationValidationResult records for type-safe request/response handling
  • Added delegate handler classes (RegistrationHandler, QuestionnaireHandler, ReviewHandler, UserAdminHandler) as extension points

Security Improvements

  • Token generation now uses SecureRandom instead of Math.random() for cryptographically secure tokens
  • Token cleanup thread set to daemon mode with proper interrupt handling to prevent blocking server shutdown
  • Password storage unified through AuthmeService.encodePasswordForStorage(), removed duplicate hashing in MysqlUserDao
  • Added automatic plaintext password migration on startup

Frontend Improvements

  • New useAdminUsers composable with pagination, search, and multi-layer fallback (with unit tests)
  • Added typed API interfaces for questionnaire (Question, QuestionType, SubmitQuestionnaireResponse)
  • Registration form now supports platform field and bedrock username auto-normalization
  • Questionnaire manual_review_required support in registration flow
  • Global fixed background with unified visual experience across all pages

Bug Fixes

  • Fixed shouldAutoApprove now correctly respects manualReviewRequired flag
  • Fixed RegistrationOutcomeResolver logic for questionnaire-passed-but-manual-review-required scenario
  • Removed duplicate buildQuestionnaireReviewSummary from WebServer
  • AuditDao/AuditRecord migrated from Map<String,Object> to type-safe record class
  • Added updateUserEmail to MysqlUserDao for AuthMe sync