Skip to content

Conversation

@pcrespov
Copy link
Member

@pcrespov pcrespov commented Jul 8, 2025

What do these changes do?

This PR initiates a structural refactoring of the login domain, which has grown too large and conceptually overloaded. The goal is to improve separation of concerns while maintaining compatibility with the existing structure during the transition.

Key Changes:

  • Extracted pre-registration logic into a new domain: login_accounts. This marks the beginning of a broader migration of account management logic (including registration and deletion) out of the login folder.
  • Planned next steps include moving the remaining registration logic once it's upgraded (e.g., migrated to asyncpg, etc.).
    image
    image
  • Within the login domain, schemas have been decoupled from REST handlers to improve modularity and clarity.
    image
  • Moved web utilities to the service folder web_utils

This lays the groundwork for a cleaner architecture around account lifecycle operations while keeping the system functional during the migration.

Related issue/s

How to test

cd services/web/server
make install-dev
pytest -vv tests/unit/**/test_*registration*.py

Dev-ops

None

@codecov
Copy link

codecov bot commented Jul 8, 2025

Codecov Report

Attention: Patch coverage is 91.39785% with 16 lines in your changes missing coverage. Please review.

Project coverage is 88.30%. Comparing base (1f2125c) to head (1d46e0a).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #8080      +/-   ##
==========================================
+ Coverage   87.74%   88.30%   +0.56%     
==========================================
  Files        1856     1864       +8     
  Lines       71791    71819      +28     
  Branches     1261     1261              
==========================================
+ Hits        62993    63420     +427     
+ Misses       8434     8036     -398     
+ Partials      364      363       -1     
Flag Coverage Δ
integrationtests 64.28% <83.87%> (+3.81%) ⬆️
unittests 86.90% <91.39%> (-0.02%) ⬇️
Components Coverage Δ
pkg_aws_library 93.93% <ø> (ø)
pkg_celery_library 87.15% <ø> (ø)
pkg_dask_task_models_library 79.62% <ø> (ø)
pkg_models_library 93.24% <ø> (ø)
pkg_notifications_library 85.26% <ø> (ø)
pkg_postgres_database 88.22% <ø> (ø)
pkg_service_integration 69.92% <ø> (ø)
pkg_service_library 71.37% <ø> (+0.04%) ⬆️
pkg_settings_library 90.39% <ø> (ø)
pkg_simcore_sdk 85.16% <ø> (+0.05%) ⬆️
agent 96.29% <ø> (ø)
api_server 92.83% <ø> (ø)
autoscaling 95.88% <ø> (ø)
catalog 92.58% <ø> (ø)
clusters_keeper 99.13% <ø> (ø)
dask_sidecar 92.35% <ø> (ø)
datcore_adapter 97.94% <ø> (ø)
director 76.86% <ø> (+0.09%) ⬆️
director_v2 91.10% <ø> (+5.61%) ⬆️
dynamic_scheduler 96.69% <ø> (ø)
dynamic_sidecar 90.09% <ø> (ø)
efs_guardian 89.65% <ø> (ø)
invitations 93.60% <ø> (ø)
payments 92.57% <ø> (ø)
resource_usage_tracker 92.09% <ø> (-0.33%) ⬇️
storage 86.64% <ø> (+0.04%) ⬆️
webclient ∅ <ø> (∅)
webserver 88.62% <91.39%> (-0.03%) ⬇️

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1f2125c...1d46e0a. Read the comment docs.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pcrespov pcrespov force-pushed the is64/registration-refactoring branch from c7a6255 to b14b985 Compare July 8, 2025 14:40
@pcrespov pcrespov self-assigned this Jul 8, 2025
@pcrespov pcrespov added the a:webserver webserver's codebase. Assigning the area is particularly useful for bugs label Jul 8, 2025
@pcrespov pcrespov changed the title WIP: ♻️ Is64/registration refactoring WIP: ♻️ Extract Pre-Registration Logic from login Domain into login_accounts Jul 8, 2025
@pcrespov pcrespov added this to the Engage milestone Jul 8, 2025
@pcrespov pcrespov changed the title WIP: ♻️ Extract Pre-Registration Logic from login Domain into login_accounts ♻️ Extract Pre-Registration Logic from login Domain into login_accounts Jul 8, 2025
@pcrespov pcrespov marked this pull request as ready for review July 8, 2025 15:31
@pcrespov pcrespov changed the title ♻️ Extract Pre-Registration Logic from login Domain into login_accounts ♻️ webserver: Extract Pre-Registration Logic from login Domain into login_accounts Jul 8, 2025
@pcrespov pcrespov changed the title ♻️ webserver: Extract Pre-Registration Logic from login Domain into login_accounts ♻️ webserver: Extract Pre-Registration Logic from login Domain into login_accounts Jul 8, 2025
Copy link
Contributor

@GitHK GitHK left a comment

Choose a reason for hiding this comment

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

👍 thanks

Copy link
Member

@sanderegg sanderegg left a comment

Choose a reason for hiding this comment

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

thanks!

Copy link
Collaborator

@matusdrobuliak66 matusdrobuliak66 left a comment

Choose a reason for hiding this comment

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

👍

@pcrespov pcrespov force-pushed the is64/registration-refactoring branch from fe543b7 to 1f658a2 Compare July 9, 2025 12:14
@pcrespov pcrespov enabled auto-merge (squash) July 9, 2025 12:14
@pcrespov pcrespov added the 🤖-automerge marks PR as ready to be merged for Mergify label Jul 9, 2025
@pcrespov
Copy link
Member Author

pcrespov commented Jul 9, 2025

@mergify queue

@mergify
Copy link
Contributor

mergify bot commented Jul 9, 2025

queue

🟠 Waiting for conditions to match

  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • any of: [📌 queue -> configuration change requirements]
    • -mergify-configuration-changed
    • check-success = Configuration changed
  • any of: [🔀 queue conditions]
    • all of: [📌 queue conditions of queue default]
      • #approved-reviews-by >= 2 [🛡 GitHub branch protection]
      • #approved-reviews-by>=2
      • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
      • #changes-requested-reviews-by=0
      • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
      • #review-threads-unresolved=0
      • -conflict
      • -draft
      • base=master
      • branch-protection-review-decision = APPROVED [🛡 GitHub branch protection]
      • label!=🤖-do-not-merge
      • label=🤖-automerge
      • any of: [🛡 GitHub branch protection]
        • check-skipped = deploy to dockerhub
        • check-neutral = deploy to dockerhub
        • check-success = deploy to dockerhub
      • any of: [🛡 GitHub branch protection]
        • check-success = system-tests
        • check-neutral = system-tests
        • check-skipped = system-tests
      • any of: [🛡 GitHub branch protection]
        • check-success = unit-tests
        • check-neutral = unit-tests
        • check-skipped = unit-tests
      • any of: [🛡 GitHub branch protection]
        • check-success = check OAS' are up to date
        • check-neutral = check OAS' are up to date
        • check-skipped = check OAS' are up to date
      • any of: [🛡 GitHub branch protection]
        • check-success = integration-tests
        • check-neutral = integration-tests
        • check-skipped = integration-tests
      • any of: [🛡 GitHub branch protection]
        • check-success = build-test-images (frontend) / build-test-images
        • check-neutral = build-test-images (frontend) / build-test-images
        • check-skipped = build-test-images (frontend) / build-test-images

@sonarqubecloud
Copy link

sonarqubecloud bot commented Jul 9, 2025

@pcrespov pcrespov merged commit b901a65 into ITISFoundation:master Jul 9, 2025
95 of 96 checks passed
@pcrespov pcrespov deleted the is64/registration-refactoring branch July 11, 2025 08:08
@matusdrobuliak66 matusdrobuliak66 mentioned this pull request Aug 5, 2025
88 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🤖-automerge marks PR as ready to be merged for Mergify a:webserver webserver's codebase. Assigning the area is particularly useful for bugs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants