Skip to content

Conversation

@dewabisma
Copy link
Collaborator

Summary

  • Refactor quests into multiple screens
  • Add raid quest form sheet
  • Add raid quest screen

Screenshots

  • New quests screen
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 22 16
  • Unlinked X raid quest state
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 52 06
  • No active raid quest state
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 24 27
  • Raid quests screen on empty submission (just removed submission)
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 22 01
  • Raid submission sheet
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 22 06
  • Raid submission input error
Simulator Screenshot - iPhone 8 - 2025-12-17 at 19 22 11

@dewabisma dewabisma requested a review from n13 December 17, 2025 11:58
Copy link
Collaborator

@n13 n13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I checked in some changes

PR Review Summary: Quantus Raid Quest (PR #344)

Overview

I have performed a thorough review of the "Quantus raid quest" PR. The PR implements new quest screens, a raid submission form, and integrates with the TaskmasterService.

Key Findings

1. Usability Improvement (Regex Validation)

Issue: The initial regex for validating raid submission URLs only supported x.com links.
Impact: Users frequently copy links from the Twitter mobile app or legacy URLs, which often appear as twitter.com or mobile.twitter.com. These valid submissions would have been rejected.
Fix: Updated the regex to support:

  • x.com and twitter.com domains.
  • www. and mobile. subdomains.
  • Optional query parameters.

2. Code Quality & Testability

Refactoring:

  • Extracted the validation logic from the UI widget RaidSubmissionActionSheet into a reusable and testable utility class Validators (mobile-app/lib/utils/validators.dart).
  • This adheres to the separation of concerns principle and makes the logic unit-testable.

Testing:

  • Added a comprehensive unit test suite in mobile-app/test/unit/validators_test.dart.
  • The tests cover various valid edge cases (e.g., mobile links, query parameters) and invalid inputs.
  • Status: All tests passed.

3. Architecture

  • The separation of quest screens (KingOfTheRaiderScreen, KingOfTheShillScreen) is clean and follows the existing project structure.
  • Service integration with TaskmasterService appears correct.

Actions Taken

  • Refactored validation logic to Validators class.
  • Updated RaidSubmissionActionSheet to use the new Validators class.
  • Added unit tests for URL validation.
  • Verified tests pass locally.

Conclusion

The PR is robust and ready for merging. The addition of unit tests and improved regex handling ensures a better user experience and maintainable code.

@dewabisma dewabisma merged commit 6466290 into main Dec 22, 2025
1 check passed
@dewabisma dewabisma deleted the feat/raid-quests branch December 22, 2025 07:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants