spaps-server-quickstart 0.2.2__tar.gz → 0.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/PKG-INFO +1 -1
  2. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/coverage.xml +49 -47
  3. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/pyproject.toml +1 -1
  4. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/__init__.py +1 -1
  5. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/auth/__init__.py +5 -0
  6. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/.gitignore +0 -0
  7. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/CHANGELOG.md +0 -0
  8. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/README.md +0 -0
  9. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/diff/plan.md +0 -0
  10. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/docs/MIGRATION_GUIDE.md +0 -0
  11. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/docs/TDD_PLAN.md +0 -0
  12. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/docs/UPGRADING.md +0 -0
  13. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/docs/messaging-broker-plan.md +0 -0
  14. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/scripts/release.sh +0 -0
  15. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/alembic/__init__.py +0 -0
  16. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/alembic/naming.py +0 -0
  17. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/api/__init__.py +0 -0
  18. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/api/dependencies.py +0 -0
  19. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/api/health.py +0 -0
  20. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/api/router.py +0 -0
  21. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/app_factory.py +0 -0
  22. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/auth/cookies.py +0 -0
  23. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/auth/dependencies.py +0 -0
  24. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/auth_channels.py +0 -0
  25. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/db/__init__.py +0 -0
  26. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/db/alembic_status.py +0 -0
  27. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/db/migration_runner.py +0 -0
  28. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/db/session.py +0 -0
  29. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/local_mode/__init__.py +0 -0
  30. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/local_mode/middleware.py +0 -0
  31. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/local_mode/personas.py +0 -0
  32. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/logging.py +0 -0
  33. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/middleware.py +0 -0
  34. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/rbac/__init__.py +0 -0
  35. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/schemas/__init__.py +0 -0
  36. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/schemas/health.py +0 -0
  37. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/secure_messaging.py +0 -0
  38. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/seeds/__init__.py +0 -0
  39. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/seeds/cli.py +0 -0
  40. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/seeds/schemas.py +0 -0
  41. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/seeds/validator.py +0 -0
  42. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/settings.py +0 -0
  43. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/startup.py +0 -0
  44. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/tasks/__init__.py +0 -0
  45. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/tasks/celery_factory.py +0 -0
  46. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/tasks/health.py +0 -0
  47. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/tasks/notifications.py +0 -0
  48. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/.pre-commit-config.yaml +0 -0
  49. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/__init__.py +0 -0
  50. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/alembic/env.py +0 -0
  51. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/alembic/script.py.mako +0 -0
  52. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/alembic/versions/.gitkeep +0 -0
  53. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/alembic.ini +0 -0
  54. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/docs/templates/API_DOCUMENTATION_TEMPLATE.md +0 -0
  55. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/docs/templates/DEBUG_REPORT_TEMPLATE.md +0 -0
  56. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/docs/templates/OPERATIONS_PLAYBOOK_TEMPLATE.md +0 -0
  57. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/__init__.py +0 -0
  58. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/admin/router.py +0 -0
  59. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/auth/local_routes.py +0 -0
  60. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/__init__.py +0 -0
  61. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/models.py +0 -0
  62. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/repository.py +0 -0
  63. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/router.py +0 -0
  64. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/schemas.py +0 -0
  65. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/domains/users/service.py +0 -0
  66. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/.env.production.example +0 -0
  67. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/.githooks/pre-push +0 -0
  68. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/.github/workflows/deploy.yml +0 -0
  69. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/.github/workflows/rollback.yml +0 -0
  70. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/Makefile +0 -0
  71. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/deploy/deploy.sh +0 -0
  72. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/deploy/docker-compose.migration.yml +0 -0
  73. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/deploy/post-deploy-verify.sh +0 -0
  74. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/deploy/pre-deploy-checks.sh +0 -0
  75. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/docker-compose.prod.yml +0 -0
  76. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/backup-db.sh +0 -0
  77. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/dev/await_db.py +0 -0
  78. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/dev/local-debug-loop.sh +0 -0
  79. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/dev/start-db.sh +0 -0
  80. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/dev/stop-db.sh +0 -0
  81. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/new-migration.sh +0 -0
  82. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/prepush.sh +0 -0
  83. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/operations/scripts/restore-db.sh +0 -0
  84. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/scripts/__init__.py +0 -0
  85. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/scripts/seeds/__init__.py +0 -0
  86. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/scripts/seeds/data/users.yaml +0 -0
  87. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/scripts/seeds/schemas/__init__.py +0 -0
  88. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/scripts/seeds/schemas/users.py +0 -0
  89. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/README.md +0 -0
  90. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/__init__.py +0 -0
  91. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/api/__init__.py +0 -0
  92. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/api/test_health.py +0 -0
  93. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/api/test_users_auth.py +0 -0
  94. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/conftest.py +0 -0
  95. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/domains/__init__.py +0 -0
  96. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/domains/example/__init__.py +0 -0
  97. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/domains/example/conftest.py +0 -0
  98. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/domains/users/__init__.py +0 -0
  99. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/domains/users/conftest.py +0 -0
  100. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/integration/__init__.py +0 -0
  101. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/integration/test_db_connectivity.py +0 -0
  102. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/unit/__init__.py +0 -0
  103. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/src/spaps_server_quickstart/templates/tests/unit/test_settings.py +0 -0
  104. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/Makefile +0 -0
  105. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/docker-compose.yml +0 -0
  106. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/.env.production.example +0 -0
  107. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/.github/workflows/deploy.yml +0 -0
  108. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/Makefile +0 -0
  109. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/deploy.sh +0 -0
  110. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/post-deploy-verify.sh +0 -0
  111. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/pre-deploy-checks.sh +0 -0
  112. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/README.md +0 -0
  113. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/certs/.gitkeep +0 -0
  114. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/docker-compose.yml +0 -0
  115. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/nginx.conf +0 -0
  116. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/sites-available/.gitkeep +0 -0
  117. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/sites-enabled/.gitkeep +0 -0
  118. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/static/.gitkeep +0 -0
  119. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/deploy/reverse-proxy/up.sh +0 -0
  120. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/docker-compose.dev.yml +0 -0
  121. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/docker-compose.prod.yml +0 -0
  122. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/scripts/dev/await_db.py +0 -0
  123. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/scripts/dev/local-debug-loop.sh +0 -0
  124. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/scripts/dev/start-db.sh +0 -0
  125. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/operations/scripts/dev/stop-db.sh +0 -0
  126. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/templates/tests/conftest.py +0 -0
  127. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_alembic_naming.py +0 -0
  128. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_api_router.py +0 -0
  129. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_app_factory.py +0 -0
  130. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_auth.py +0 -0
  131. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_auth_channels.py +0 -0
  132. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_auth_cookies.py +0 -0
  133. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_auth_dependencies.py +0 -0
  134. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_db_session.py +0 -0
  135. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_health_router.py +0 -0
  136. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_imports.py +0 -0
  137. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_local_mode.py +0 -0
  138. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_logging.py +0 -0
  139. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_middleware.py +0 -0
  140. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_migration_runner.py +0 -0
  141. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_migration_status.py +0 -0
  142. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_operations_templates.py +0 -0
  143. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_rbac.py +0 -0
  144. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_secure_messaging.py +0 -0
  145. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_seed_validation.py +0 -0
  146. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_settings.py +0 -0
  147. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_startup_validation.py +0 -0
  148. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/tests/test_tasks.py +0 -0
  149. {spaps_server_quickstart-0.2.2 → spaps_server_quickstart-0.2.3}/todo.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: spaps-server-quickstart
3
- Version: 0.2.2
3
+ Version: 0.2.3
4
4
  Summary: Shared FastAPI/Celery scaffolding for Sweet Potato service backends.
5
5
  Project-URL: Repository, https://github.com/sweet-potato/spaps
6
6
  Author-email: buildooor <buildooor@gmail.com>
@@ -1,5 +1,5 @@
1
1
  <?xml version="1.0" ?>
2
- <coverage version="7.13.1" timestamp="1768176158362" lines-valid="1364" lines-covered="1139" line-rate="0.835" branches-valid="328" branches-covered="202" branch-rate="0.6159" complexity="0">
2
+ <coverage version="7.13.1" timestamp="1768251139053" lines-valid="1366" lines-covered="1140" line-rate="0.8346" branches-valid="330" branches-covered="203" branch-rate="0.6152" complexity="0">
3
3
  <!-- Generated by coverage.py: https://coverage.readthedocs.io/en/7.13.1 -->
4
4
  <!-- Based on https://raw.githubusercontent.com/cobertura/web/master/htdocs/xml/coverage-04.dtd -->
5
5
  <sources>
@@ -825,9 +825,9 @@
825
825
  </class>
826
826
  </classes>
827
827
  </package>
828
- <package name="src.spaps_server_quickstart.auth" line-rate="0.8578" branch-rate="0.625" complexity="0">
828
+ <package name="src.spaps_server_quickstart.auth" line-rate="0.8547" branch-rate="0.6212" complexity="0">
829
829
  <classes>
830
- <class name="__init__.py" filename="src/spaps_server_quickstart/auth/__init__.py" complexity="0" line-rate="0.8408" branch-rate="0.6034">
830
+ <class name="__init__.py" filename="src/spaps_server_quickstart/auth/__init__.py" complexity="0" line-rate="0.8374" branch-rate="0.6">
831
831
  <methods/>
832
832
  <lines>
833
833
  <line number="5" hits="1"/>
@@ -976,61 +976,63 @@
976
976
  <line number="337" hits="1"/>
977
977
  <line number="344" hits="1"/>
978
978
  <line number="349" hits="1"/>
979
- <line number="350" hits="1" branch="true" condition-coverage="100% (2/2)"/>
980
- <line number="351" hits="1"/>
981
- <line number="353" hits="1"/>
982
- <line number="354" hits="1" branch="true" condition-coverage="100% (2/2)"/>
983
- <line number="355" hits="1"/>
984
- <line number="357" hits="1"/>
985
- <line number="358" hits="1" branch="true" condition-coverage="100% (2/2)"/>
986
- <line number="359" hits="1"/>
987
- <line number="361" hits="1"/>
979
+ <line number="352" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="353"/>
980
+ <line number="353" hits="0"/>
981
+ <line number="355" hits="1" branch="true" condition-coverage="100% (2/2)"/>
982
+ <line number="356" hits="1"/>
983
+ <line number="358" hits="1"/>
984
+ <line number="359" hits="1" branch="true" condition-coverage="100% (2/2)"/>
985
+ <line number="360" hits="1"/>
988
986
  <line number="362" hits="1"/>
989
- <line number="363" hits="1"/>
987
+ <line number="363" hits="1" branch="true" condition-coverage="100% (2/2)"/>
990
988
  <line number="364" hits="1"/>
991
989
  <line number="366" hits="1"/>
992
990
  <line number="367" hits="1"/>
991
+ <line number="368" hits="1"/>
993
992
  <line number="369" hits="1"/>
994
- <line number="370" hits="1"/>
995
- <line number="371" hits="1" branch="true" condition-coverage="100% (2/2)"/>
993
+ <line number="371" hits="1"/>
996
994
  <line number="372" hits="1"/>
997
- <line number="373" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="374"/>
998
- <line number="374" hits="0"/>
999
- <line number="376" hits="1"/>
1000
- <line number="378" hits="1"/>
1001
- <line number="379" hits="1"/>
1002
- <line number="380" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="381"/>
1003
- <line number="381" hits="0"/>
1004
- <line number="382" hits="1"/>
1005
- <line number="383" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="384"/>
1006
- <line number="384" hits="0"/>
1007
- <line number="385" hits="1"/>
995
+ <line number="374" hits="1"/>
996
+ <line number="375" hits="1"/>
997
+ <line number="376" hits="1" branch="true" condition-coverage="100% (2/2)"/>
998
+ <line number="377" hits="1"/>
999
+ <line number="378" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="379"/>
1000
+ <line number="379" hits="0"/>
1001
+ <line number="381" hits="1"/>
1002
+ <line number="383" hits="1"/>
1003
+ <line number="384" hits="1"/>
1004
+ <line number="385" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="386"/>
1005
+ <line number="386" hits="0"/>
1008
1006
  <line number="387" hits="1"/>
1009
- <line number="388" hits="1"/>
1007
+ <line number="388" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="389"/>
1010
1008
  <line number="389" hits="0"/>
1011
- <line number="390" hits="0"/>
1012
- <line number="391" hits="0"/>
1009
+ <line number="390" hits="1"/>
1010
+ <line number="392" hits="1"/>
1013
1011
  <line number="393" hits="1"/>
1014
- <line number="394" hits="1"/>
1015
- <line number="395" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="396,397"/>
1012
+ <line number="394" hits="0"/>
1013
+ <line number="395" hits="0"/>
1016
1014
  <line number="396" hits="0"/>
1017
- <line number="397" hits="0"/>
1015
+ <line number="398" hits="1"/>
1018
1016
  <line number="399" hits="1"/>
1019
- <line number="400" hits="1"/>
1020
- <line number="401" hits="1"/>
1021
- <line number="407" hits="1"/>
1022
- <line number="408" hits="1"/>
1023
- <line number="409" hits="1" branch="true" condition-coverage="100% (2/2)"/>
1024
- <line number="410" hits="1"/>
1025
- <line number="411" hits="1"/>
1026
- <line number="414" hits="1"/>
1027
- <line number="426" hits="1" branch="true" condition-coverage="100% (2/2)"/>
1028
- <line number="427" hits="1"/>
1029
- <line number="428" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="429"/>
1030
- <line number="429" hits="0"/>
1031
- <line number="430" hits="1"/>
1032
- <line number="431" hits="1"/>
1033
- <line number="443" hits="1"/>
1017
+ <line number="400" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="401,402"/>
1018
+ <line number="401" hits="0"/>
1019
+ <line number="402" hits="0"/>
1020
+ <line number="404" hits="1"/>
1021
+ <line number="405" hits="1"/>
1022
+ <line number="406" hits="1"/>
1023
+ <line number="412" hits="1"/>
1024
+ <line number="413" hits="1"/>
1025
+ <line number="414" hits="1" branch="true" condition-coverage="100% (2/2)"/>
1026
+ <line number="415" hits="1"/>
1027
+ <line number="416" hits="1"/>
1028
+ <line number="419" hits="1"/>
1029
+ <line number="431" hits="1" branch="true" condition-coverage="100% (2/2)"/>
1030
+ <line number="432" hits="1"/>
1031
+ <line number="433" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="434"/>
1032
+ <line number="434" hits="0"/>
1033
+ <line number="435" hits="1"/>
1034
+ <line number="436" hits="1"/>
1035
+ <line number="448" hits="1"/>
1034
1036
  </lines>
1035
1037
  </class>
1036
1038
  <class name="cookies.py" filename="src/spaps_server_quickstart/auth/cookies.py" complexity="0" line-rate="0.9" branch-rate="0.5">
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "spaps-server-quickstart"
7
- version = "0.2.2"
7
+ version = "0.2.3"
8
8
  description = "Shared FastAPI/Celery scaffolding for Sweet Potato service backends."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -37,7 +37,7 @@ from .schemas import HealthResponse
37
37
  from .settings import BaseServiceSettings, create_settings_loader, get_settings
38
38
  from .tasks import create_celery_app, build_notification_task, build_ping_task
39
39
 
40
- __version__ = "0.2.2"
40
+ __version__ = "0.2.3"
41
41
 
42
42
  __all__ = [
43
43
  "create_app",
@@ -347,6 +347,11 @@ class SpapsAuthMiddleware(BaseHTTPMiddleware):
347
347
  )
348
348
 
349
349
  async def dispatch(self, request: Request, call_next: RequestResponseEndpoint) -> Response:
350
+ # If already authenticated by another middleware (e.g., TrustedServiceMiddleware),
351
+ # skip authentication and pass through
352
+ if hasattr(request.state, "authenticated_user") and request.state.authenticated_user:
353
+ return await call_next(request)
354
+
350
355
  if self._is_exempt(request):
351
356
  return await call_next(request)
352
357