spaps-server-quickstart 0.5.1__tar.gz → 0.6.0__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 (898) hide show
  1. spaps_server_quickstart-0.6.0/.gitignore +202 -0
  2. spaps_server_quickstart-0.6.0/CHANGELOG.md +139 -0
  3. spaps_server_quickstart-0.6.0/PKG-INFO +308 -0
  4. spaps_server_quickstart-0.6.0/README.md +229 -0
  5. spaps_server_quickstart-0.6.0/pyproject.toml +166 -0
  6. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/__init__.py +128 -0
  7. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/alembic/naming.py +156 -0
  8. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/app_factory.py +187 -0
  9. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/auth/__init__.py +499 -0
  10. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/auth/dependencies.py +64 -0
  11. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/auth_channels.py +345 -0
  12. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/__init__.py +12 -0
  13. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_common/clients.py +121 -0
  14. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_common/pagination.py +53 -0
  15. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_db/__init__.py +7 -0
  16. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_db/model_registry.py +41 -0
  17. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_db/orm_helpers.py +28 -0
  18. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/_db/rls.py +65 -0
  19. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/affiliate_referrals/models.py +423 -0
  20. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/affiliate_referrals/repository.py +724 -0
  21. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/affiliate_referrals/router.py +459 -0
  22. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/affiliate_referrals/service.py +1126 -0
  23. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/agent_approvals/authz.py +167 -0
  24. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/agent_approvals/errors.py +185 -0
  25. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/agent_approvals/router.py +516 -0
  26. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/agent_approvals/service.py +1097 -0
  27. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/__init__.py +2 -0
  28. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/errors.py +21 -0
  29. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/models.py +65 -0
  30. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/repository.py +53 -0
  31. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/router.py +86 -0
  32. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/schemas.py +46 -0
  33. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/app_links/service.py +243 -0
  34. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/applications/blueprints.py +654 -0
  35. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/applications/router.py +140 -0
  36. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/applications/schemas.py +118 -0
  37. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/applications/service.py +303 -0
  38. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/models.py +96 -0
  39. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/repository.py +248 -0
  40. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/router.py +87 -0
  41. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/schemas.py +84 -0
  42. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/service.py +283 -0
  43. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/audit/tasks.py +68 -0
  44. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/auth/repository.py +421 -0
  45. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/auth/router.py +472 -0
  46. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/auth/schemas.py +233 -0
  47. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/auth/service.py +1600 -0
  48. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/__init__.py +5 -0
  49. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/models.py +81 -0
  50. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/repository.py +188 -0
  51. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/resolver.py +426 -0
  52. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/router.py +58 -0
  53. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/schemas.py +63 -0
  54. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/billing_accounts/service.py +172 -0
  55. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/errors.py +43 -0
  56. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/models.py +136 -0
  57. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/repository.py +268 -0
  58. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/router.py +525 -0
  59. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/schemas.py +221 -0
  60. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo/service.py +974 -0
  61. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo_roles/me_router.py +163 -0
  62. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo_roles/router.py +471 -0
  63. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/cfo_roles/service.py +807 -0
  64. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/crypto/repository.py +201 -0
  65. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/crypto/router.py +282 -0
  66. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/crypto/service.py +305 -0
  67. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/errors.py +80 -0
  68. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/pricing.py +114 -0
  69. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/repository.py +598 -0
  70. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/router.py +740 -0
  71. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/schemas.py +482 -0
  72. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dayrate/service.py +2306 -0
  73. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dev/__init__.py +2 -0
  74. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dev/router.py +65 -0
  75. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dev/schemas.py +103 -0
  76. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/dev/service.py +432 -0
  77. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/device_flow/service.py +342 -0
  78. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/docs/repository.py +323 -0
  79. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/docs/router.py +217 -0
  80. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/email/models.py +127 -0
  81. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/email/router.py +363 -0
  82. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/email/schemas.py +199 -0
  83. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/email/service.py +1200 -0
  84. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/entitlements/models.py +205 -0
  85. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/entitlements/repository.py +498 -0
  86. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/entitlements/router.py +466 -0
  87. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/entitlements/schemas.py +290 -0
  88. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/entitlements/service.py +1328 -0
  89. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/errors.py +191 -0
  90. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/hosted_assets/__init__.py +49 -0
  91. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/hosted_assets/errors.py +47 -0
  92. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/hosted_assets/models.py +259 -0
  93. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/hosted_assets/storage.py +297 -0
  94. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/errors.py +68 -0
  95. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/models.py +128 -0
  96. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/repository.py +350 -0
  97. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/router.py +455 -0
  98. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/schemas.py +149 -0
  99. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/issue_reporting_platform/service.py +1382 -0
  100. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/__init__.py +1 -0
  101. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/models.py +289 -0
  102. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/repository.py +474 -0
  103. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/router.py +190 -0
  104. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/schemas.py +155 -0
  105. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/service.py +801 -0
  106. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/notifications/tasks.py +39 -0
  107. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/policies/repository.py +135 -0
  108. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/policies/router.py +199 -0
  109. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/policies/service.py +403 -0
  110. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/realtime/__init__.py +23 -0
  111. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/realtime/router.py +45 -0
  112. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/realtime/schemas.py +13 -0
  113. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/realtime/service.py +125 -0
  114. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/redirects.py +157 -0
  115. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/secure_messages/repository.py +86 -0
  116. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/secure_messages/router.py +121 -0
  117. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/secure_messages/service.py +209 -0
  118. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/security/router.py +68 -0
  119. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/self_service/router.py +301 -0
  120. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/self_service/schemas.py +169 -0
  121. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/self_service/service.py +376 -0
  122. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/blacklist_service.py +358 -0
  123. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/jwt_service.py +365 -0
  124. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/nonce_service.py +216 -0
  125. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/password_service.py +113 -0
  126. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/repository.py +484 -0
  127. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/router.py +153 -0
  128. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/schemas.py +85 -0
  129. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/sessions/service.py +480 -0
  130. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/__init__.py +5 -0
  131. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/errors.py +104 -0
  132. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/models.py +263 -0
  133. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/repository.py +369 -0
  134. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/router.py +316 -0
  135. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/schemas.py +203 -0
  136. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/skill_evals/service.py +1671 -0
  137. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/errors.py +107 -0
  138. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/guest_checkout.py +257 -0
  139. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/models.py +340 -0
  140. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/repository.py +779 -0
  141. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/router.py +870 -0
  142. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/schemas.py +373 -0
  143. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/service.py +1361 -0
  144. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/tasks.py +195 -0
  145. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/stripe/webhook_handler.py +841 -0
  146. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/support_telemetry_platform/router.py +263 -0
  147. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/support_telemetry_platform/service.py +619 -0
  148. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/__init__.py +5 -0
  149. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/errors.py +61 -0
  150. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/models.py +85 -0
  151. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/repository.py +182 -0
  152. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/router.py +155 -0
  153. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/schemas.py +206 -0
  154. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/usage_control/service.py +755 -0
  155. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/users/models.py +137 -0
  156. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/wallets/addressing.py +31 -0
  157. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/wallets/repository.py +267 -0
  158. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/wallets/router.py +428 -0
  159. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/wallets/service.py +661 -0
  160. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/destination_security.py +63 -0
  161. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/repository.py +265 -0
  162. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/router.py +197 -0
  163. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/service.py +714 -0
  164. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/signing.py +214 -0
  165. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/webhooks/tasks.py +31 -0
  166. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/whitelist/repository.py +281 -0
  167. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/whitelist/router.py +232 -0
  168. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/whitelist/service.py +243 -0
  169. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/__init__.py +1 -0
  170. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/adapter.py +846 -0
  171. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/constants.py +42 -0
  172. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/errors.py +88 -0
  173. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/models.py +258 -0
  174. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/repository.py +393 -0
  175. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/router.py +248 -0
  176. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/schemas.py +93 -0
  177. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/security.py +44 -0
  178. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/domains/x402/service.py +1598 -0
  179. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/envelope.py +176 -0
  180. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/error_handler.py +151 -0
  181. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/jwt_auth.py +156 -0
  182. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/key_scope.py +235 -0
  183. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/local_mode.py +110 -0
  184. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/middleware/rate_limiting.py +594 -0
  185. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/money/__init__.py +72 -0
  186. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/settings.py +247 -0
  187. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/spaps_app.py +387 -0
  188. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/spaps_settings.py +225 -0
  189. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/startup.py +572 -0
  190. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/tasks/celery_factory.py +73 -0
  191. spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/tools/dependency_alignment.py +302 -0
  192. spaps_server_quickstart-0.6.0/tests/contracts/test_app_factory_contract.py +87 -0
  193. spaps_server_quickstart-0.6.0/tests/contracts/test_celery_contract.py +85 -0
  194. spaps_server_quickstart-0.6.0/tests/contracts/test_error_copy_contract.py +170 -0
  195. spaps_server_quickstart-0.6.0/tests/contracts/test_pagination_contract.py +94 -0
  196. spaps_server_quickstart-0.6.0/tests/contracts/test_sdk_docs_parity_script.py +278 -0
  197. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_devnet_prereq_script.py +734 -0
  198. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_mainnet_billing_sql_script.py +57 -0
  199. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_mainnet_db_script.py +101 -0
  200. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_mainnet_env_script.py +94 -0
  201. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_mainnet_evidence_script.py +75 -0
  202. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_mainnet_live_script.py +126 -0
  203. spaps_server_quickstart-0.6.0/tests/contracts/test_x402_production_deployment_script.py +99 -0
  204. spaps_server_quickstart-0.6.0/tests/domains/_db/test_orm_helpers.py +56 -0
  205. spaps_server_quickstart-0.6.0/tests/domains/affiliate_referrals/test_repository.py +148 -0
  206. spaps_server_quickstart-0.6.0/tests/domains/affiliate_referrals/test_service.py +1356 -0
  207. spaps_server_quickstart-0.6.0/tests/domains/agent_approvals/test_authz.py +119 -0
  208. spaps_server_quickstart-0.6.0/tests/domains/agent_approvals/test_authz_wiring.py +466 -0
  209. spaps_server_quickstart-0.6.0/tests/domains/agent_approvals/test_repository.py +176 -0
  210. spaps_server_quickstart-0.6.0/tests/domains/agent_approvals/test_router.py +923 -0
  211. spaps_server_quickstart-0.6.0/tests/domains/agent_approvals/test_service.py +2312 -0
  212. spaps_server_quickstart-0.6.0/tests/domains/app_links/__init__.py +1 -0
  213. spaps_server_quickstart-0.6.0/tests/domains/app_links/test_blueprints.py +21 -0
  214. spaps_server_quickstart-0.6.0/tests/domains/app_links/test_router.py +139 -0
  215. spaps_server_quickstart-0.6.0/tests/domains/app_links/test_service.py +336 -0
  216. spaps_server_quickstart-0.6.0/tests/domains/applications/test_blueprints.py +102 -0
  217. spaps_server_quickstart-0.6.0/tests/domains/applications/test_router.py +983 -0
  218. spaps_server_quickstart-0.6.0/tests/domains/audit/test_repository.py +335 -0
  219. spaps_server_quickstart-0.6.0/tests/domains/audit/test_router.py +302 -0
  220. spaps_server_quickstart-0.6.0/tests/domains/audit/test_service.py +397 -0
  221. spaps_server_quickstart-0.6.0/tests/domains/auth/test_refresh_token_anomaly.py +400 -0
  222. spaps_server_quickstart-0.6.0/tests/domains/auth/test_repository.py +470 -0
  223. spaps_server_quickstart-0.6.0/tests/domains/auth/test_router.py +880 -0
  224. spaps_server_quickstart-0.6.0/tests/domains/auth/test_service.py +2221 -0
  225. spaps_server_quickstart-0.6.0/tests/domains/auth/test_user_enumeration_timing.py +146 -0
  226. spaps_server_quickstart-0.6.0/tests/domains/billing_accounts/__init__.py +1 -0
  227. spaps_server_quickstart-0.6.0/tests/domains/billing_accounts/test_repository.py +342 -0
  228. spaps_server_quickstart-0.6.0/tests/domains/billing_accounts/test_resolver.py +548 -0
  229. spaps_server_quickstart-0.6.0/tests/domains/billing_accounts/test_router.py +207 -0
  230. spaps_server_quickstart-0.6.0/tests/domains/cfo/test_repository.py +395 -0
  231. spaps_server_quickstart-0.6.0/tests/domains/cfo/test_router.py +1203 -0
  232. spaps_server_quickstart-0.6.0/tests/domains/cfo/test_service.py +1560 -0
  233. spaps_server_quickstart-0.6.0/tests/domains/cfo_roles/test_router.py +880 -0
  234. spaps_server_quickstart-0.6.0/tests/domains/cfo_roles/test_service.py +1075 -0
  235. spaps_server_quickstart-0.6.0/tests/domains/crypto/test_repository.py +406 -0
  236. spaps_server_quickstart-0.6.0/tests/domains/crypto/test_router.py +439 -0
  237. spaps_server_quickstart-0.6.0/tests/domains/crypto/test_service.py +401 -0
  238. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_allotment_service.py +203 -0
  239. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_booking_routes.py +162 -0
  240. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_enhanced_booking_service.py +819 -0
  241. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_pricing.py +554 -0
  242. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_repository.py +545 -0
  243. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_router.py +1275 -0
  244. spaps_server_quickstart-0.6.0/tests/domains/dayrate/test_service.py +2064 -0
  245. spaps_server_quickstart-0.6.0/tests/domains/dev/__init__.py +2 -0
  246. spaps_server_quickstart-0.6.0/tests/domains/dev/test_router.py +168 -0
  247. spaps_server_quickstart-0.6.0/tests/domains/dev/test_service.py +66 -0
  248. spaps_server_quickstart-0.6.0/tests/domains/device_flow/test_service.py +469 -0
  249. spaps_server_quickstart-0.6.0/tests/domains/docs/test_repository.py +394 -0
  250. spaps_server_quickstart-0.6.0/tests/domains/email/test_env_safety.py +307 -0
  251. spaps_server_quickstart-0.6.0/tests/domains/email/test_service.py +1394 -0
  252. spaps_server_quickstart-0.6.0/tests/domains/entitlements/test_repository.py +576 -0
  253. spaps_server_quickstart-0.6.0/tests/domains/entitlements/test_router.py +924 -0
  254. spaps_server_quickstart-0.6.0/tests/domains/entitlements/test_service.py +1603 -0
  255. spaps_server_quickstart-0.6.0/tests/domains/hosted_assets/__init__.py +1 -0
  256. spaps_server_quickstart-0.6.0/tests/domains/hosted_assets/test_storage.py +312 -0
  257. spaps_server_quickstart-0.6.0/tests/domains/issue_reporting_platform/__init__.py +1 -0
  258. spaps_server_quickstart-0.6.0/tests/domains/issue_reporting_platform/test_repository.py +497 -0
  259. spaps_server_quickstart-0.6.0/tests/domains/issue_reporting_platform/test_router.py +816 -0
  260. spaps_server_quickstart-0.6.0/tests/domains/issue_reporting_platform/test_service.py +1669 -0
  261. spaps_server_quickstart-0.6.0/tests/domains/notifications/__init__.py +1 -0
  262. spaps_server_quickstart-0.6.0/tests/domains/notifications/test_models.py +33 -0
  263. spaps_server_quickstart-0.6.0/tests/domains/notifications/test_repository.py +141 -0
  264. spaps_server_quickstart-0.6.0/tests/domains/notifications/test_router.py +332 -0
  265. spaps_server_quickstart-0.6.0/tests/domains/notifications/test_service.py +623 -0
  266. spaps_server_quickstart-0.6.0/tests/domains/policies/test_evaluator.py +469 -0
  267. spaps_server_quickstart-0.6.0/tests/domains/policies/test_repository.py +89 -0
  268. spaps_server_quickstart-0.6.0/tests/domains/policies/test_service.py +497 -0
  269. spaps_server_quickstart-0.6.0/tests/domains/realtime/test_service.py +184 -0
  270. spaps_server_quickstart-0.6.0/tests/domains/secure_messages/test_repository.py +84 -0
  271. spaps_server_quickstart-0.6.0/tests/domains/secure_messages/test_router.py +268 -0
  272. spaps_server_quickstart-0.6.0/tests/domains/secure_messages/test_service.py +279 -0
  273. spaps_server_quickstart-0.6.0/tests/domains/self_service/test_router.py +1032 -0
  274. spaps_server_quickstart-0.6.0/tests/domains/sessions/test_router.py +391 -0
  275. spaps_server_quickstart-0.6.0/tests/domains/sessions/test_service.py +585 -0
  276. spaps_server_quickstart-0.6.0/tests/domains/skill_evals/__init__.py +1 -0
  277. spaps_server_quickstart-0.6.0/tests/domains/skill_evals/test_dogfood_workflow.py +597 -0
  278. spaps_server_quickstart-0.6.0/tests/domains/skill_evals/test_router.py +337 -0
  279. spaps_server_quickstart-0.6.0/tests/domains/skill_evals/test_service.py +1521 -0
  280. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_guest_checkout.py +708 -0
  281. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_repository.py +690 -0
  282. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_router.py +1242 -0
  283. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_service.py +1666 -0
  284. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_tasks.py +171 -0
  285. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_webhook_handler.py +1286 -0
  286. spaps_server_quickstart-0.6.0/tests/domains/stripe/test_webhook_hardening.py +448 -0
  287. spaps_server_quickstart-0.6.0/tests/domains/support_telemetry_platform/test_service.py +450 -0
  288. spaps_server_quickstart-0.6.0/tests/domains/test_redirects.py +223 -0
  289. spaps_server_quickstart-0.6.0/tests/domains/test_smoke.py +306 -0
  290. spaps_server_quickstart-0.6.0/tests/domains/usage_control/test_repository.py +95 -0
  291. spaps_server_quickstart-0.6.0/tests/domains/usage_control/test_router.py +363 -0
  292. spaps_server_quickstart-0.6.0/tests/domains/usage_control/test_service.py +543 -0
  293. spaps_server_quickstart-0.6.0/tests/domains/wallets/test_addressing.py +22 -0
  294. spaps_server_quickstart-0.6.0/tests/domains/wallets/test_repository.py +399 -0
  295. spaps_server_quickstart-0.6.0/tests/domains/wallets/test_router.py +758 -0
  296. spaps_server_quickstart-0.6.0/tests/domains/wallets/test_service.py +902 -0
  297. spaps_server_quickstart-0.6.0/tests/domains/webhooks/test_destination_security.py +72 -0
  298. spaps_server_quickstart-0.6.0/tests/domains/webhooks/test_repository.py +420 -0
  299. spaps_server_quickstart-0.6.0/tests/domains/webhooks/test_router.py +589 -0
  300. spaps_server_quickstart-0.6.0/tests/domains/webhooks/test_service.py +1181 -0
  301. spaps_server_quickstart-0.6.0/tests/domains/webhooks/test_tasks.py +25 -0
  302. spaps_server_quickstart-0.6.0/tests/domains/whitelist/__init__.py +0 -0
  303. spaps_server_quickstart-0.6.0/tests/domains/whitelist/test_repository.py +701 -0
  304. spaps_server_quickstart-0.6.0/tests/domains/whitelist/test_router.py +653 -0
  305. spaps_server_quickstart-0.6.0/tests/domains/x402/__init__.py +1 -0
  306. spaps_server_quickstart-0.6.0/tests/domains/x402/test_facilitator_adapter.py +686 -0
  307. spaps_server_quickstart-0.6.0/tests/domains/x402/test_money_contract.py +60 -0
  308. spaps_server_quickstart-0.6.0/tests/domains/x402/test_router.py +315 -0
  309. spaps_server_quickstart-0.6.0/tests/domains/x402/test_service.py +1336 -0
  310. spaps_server_quickstart-0.6.0/tests/middleware/__init__.py +0 -0
  311. spaps_server_quickstart-0.6.0/tests/middleware/test_api_key.py +387 -0
  312. spaps_server_quickstart-0.6.0/tests/middleware/test_envelope.py +116 -0
  313. spaps_server_quickstart-0.6.0/tests/middleware/test_error_envelope_v1.py +252 -0
  314. spaps_server_quickstart-0.6.0/tests/middleware/test_jwt_auth.py +319 -0
  315. spaps_server_quickstart-0.6.0/tests/middleware/test_key_scope.py +329 -0
  316. spaps_server_quickstart-0.6.0/tests/middleware/test_local_mode.py +114 -0
  317. spaps_server_quickstart-0.6.0/tests/middleware/test_origin_validation.py +227 -0
  318. spaps_server_quickstart-0.6.0/tests/middleware/test_rate_limiting.py +1160 -0
  319. spaps_server_quickstart-0.6.0/tests/test_alembic_naming.py +145 -0
  320. spaps_server_quickstart-0.6.0/tests/test_api_naming_guard.py +52 -0
  321. spaps_server_quickstart-0.6.0/tests/test_app_factory.py +298 -0
  322. spaps_server_quickstart-0.6.0/tests/test_auth.py +831 -0
  323. spaps_server_quickstart-0.6.0/tests/test_auth_dependencies.py +93 -0
  324. spaps_server_quickstart-0.6.0/tests/test_dependency_alignment.py +265 -0
  325. spaps_server_quickstart-0.6.0/tests/test_environment_safety.py +461 -0
  326. spaps_server_quickstart-0.6.0/tests/test_primitive_guardrails.py +508 -0
  327. spaps_server_quickstart-0.6.0/tests/test_sessions_blacklist.py +365 -0
  328. spaps_server_quickstart-0.6.0/tests/test_sessions_jwt.py +344 -0
  329. spaps_server_quickstart-0.6.0/tests/test_sessions_nonce.py +193 -0
  330. spaps_server_quickstart-0.6.0/tests/test_sessions_password.py +161 -0
  331. spaps_server_quickstart-0.6.0/tests/test_startup_validation.py +618 -0
  332. spaps_server_quickstart-0.5.1/.gitignore +0 -187
  333. spaps_server_quickstart-0.5.1/CHANGELOG.md +0 -128
  334. spaps_server_quickstart-0.5.1/PKG-INFO +0 -288
  335. spaps_server_quickstart-0.5.1/README.md +0 -214
  336. spaps_server_quickstart-0.5.1/pyproject.toml +0 -155
  337. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/__init__.py +0 -116
  338. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/alembic/naming.py +0 -137
  339. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/app_factory.py +0 -134
  340. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/auth/__init__.py +0 -457
  341. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/auth/dependencies.py +0 -52
  342. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/auth_channels.py +0 -368
  343. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/__init__.py +0 -8
  344. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/_db/__init__.py +0 -6
  345. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/_db/model_registry.py +0 -37
  346. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/_db/rls.py +0 -61
  347. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/affiliate_referrals/models.py +0 -417
  348. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/affiliate_referrals/repository.py +0 -691
  349. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/affiliate_referrals/router.py +0 -457
  350. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/affiliate_referrals/service.py +0 -1108
  351. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/agent_approvals/errors.py +0 -126
  352. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/agent_approvals/router.py +0 -493
  353. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/agent_approvals/service.py +0 -993
  354. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/applications/blueprints.py +0 -563
  355. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/applications/router.py +0 -138
  356. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/applications/schemas.py +0 -116
  357. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/applications/service.py +0 -293
  358. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/__init__.py +0 -9
  359. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/errors.py +0 -82
  360. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/models.py +0 -131
  361. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/repository.py +0 -80
  362. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/router.py +0 -77
  363. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/schemas.py +0 -89
  364. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/approval_authz_prod_hardening/service.py +0 -214
  365. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/audit/models.py +0 -108
  366. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/audit/repository.py +0 -171
  367. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/audit/router.py +0 -86
  368. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/audit/schemas.py +0 -81
  369. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/audit/service.py +0 -252
  370. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/auth/repository.py +0 -426
  371. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/auth/router.py +0 -465
  372. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/auth/schemas.py +0 -231
  373. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/auth/service.py +0 -1469
  374. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/billing_accounts/__init__.py +0 -5
  375. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/billing_accounts/models.py +0 -55
  376. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/billing_accounts/repository.py +0 -110
  377. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/billing_accounts/resolver.py +0 -272
  378. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/errors.py +0 -50
  379. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/models.py +0 -134
  380. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/repository.py +0 -219
  381. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/router.py +0 -501
  382. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/schemas.py +0 -210
  383. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo/service.py +0 -830
  384. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo_roles/deps.py +0 -85
  385. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo_roles/me_router.py +0 -163
  386. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo_roles/router.py +0 -481
  387. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/cfo_roles/service.py +0 -793
  388. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/crypto/repository.py +0 -182
  389. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/crypto/router.py +0 -308
  390. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/crypto/service.py +0 -310
  391. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/errors.py +0 -68
  392. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/pricing.py +0 -114
  393. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/repository.py +0 -605
  394. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/router.py +0 -618
  395. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/schemas.py +0 -422
  396. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/dayrate/service.py +0 -1858
  397. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/device_flow/service.py +0 -306
  398. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/docs/repository.py +0 -296
  399. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/docs/router.py +0 -214
  400. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/email/models.py +0 -123
  401. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/email/router.py +0 -362
  402. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/email/schemas.py +0 -198
  403. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/email/service.py +0 -1054
  404. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/entitlements/models.py +0 -202
  405. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/entitlements/repository.py +0 -417
  406. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/entitlements/router.py +0 -434
  407. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/entitlements/schemas.py +0 -290
  408. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/entitlements/service.py +0 -1118
  409. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/errors.py +0 -191
  410. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/errors.py +0 -61
  411. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/models.py +0 -70
  412. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/repository.py +0 -189
  413. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/router.py +0 -338
  414. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/schemas.py +0 -106
  415. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/issue_reporting_platform/service.py +0 -884
  416. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/policies/repository.py +0 -138
  417. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/policies/router.py +0 -198
  418. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/policies/service.py +0 -323
  419. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/redirects.py +0 -145
  420. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/secure_messages/repository.py +0 -44
  421. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/secure_messages/router.py +0 -117
  422. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/secure_messages/service.py +0 -201
  423. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/security/router.py +0 -67
  424. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/self_service/router.py +0 -299
  425. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/self_service/schemas.py +0 -171
  426. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/self_service/service.py +0 -367
  427. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/blacklist_service.py +0 -325
  428. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/jwt_service.py +0 -367
  429. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/nonce_service.py +0 -214
  430. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/password_service.py +0 -105
  431. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/repository.py +0 -484
  432. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/router.py +0 -152
  433. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/schemas.py +0 -85
  434. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/sessions/service.py +0 -581
  435. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/errors.py +0 -102
  436. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/guest_checkout.py +0 -236
  437. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/models.py +0 -318
  438. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/repository.py +0 -666
  439. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/router.py +0 -835
  440. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/schemas.py +0 -350
  441. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/service.py +0 -1064
  442. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/stripe/webhook_handler.py +0 -561
  443. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/support_telemetry_platform/router.py +0 -263
  444. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/support_telemetry_platform/service.py +0 -529
  445. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/users/models.py +0 -134
  446. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/wallets/repository.py +0 -241
  447. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/wallets/router.py +0 -425
  448. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/wallets/service.py +0 -596
  449. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/webhooks/destination_security.py +0 -41
  450. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/webhooks/repository.py +0 -202
  451. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/webhooks/router.py +0 -194
  452. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/webhooks/service.py +0 -686
  453. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/webhooks/signing.py +0 -179
  454. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/whitelist/repository.py +0 -267
  455. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/whitelist/router.py +0 -232
  456. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/domains/whitelist/service.py +0 -244
  457. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/envelope.py +0 -169
  458. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/error_handler.py +0 -101
  459. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/jwt_auth.py +0 -109
  460. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/key_scope.py +0 -169
  461. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/local_mode.py +0 -107
  462. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/middleware/rate_limiting.py +0 -491
  463. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/settings.py +0 -240
  464. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/spaps_app.py +0 -340
  465. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/spaps_settings.py +0 -186
  466. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/startup.py +0 -478
  467. spaps_server_quickstart-0.5.1/src/spaps_server_quickstart/tasks/celery_factory.py +0 -40
  468. spaps_server_quickstart-0.5.1/tests/contracts/test_app_factory_contract.py +0 -83
  469. spaps_server_quickstart-0.5.1/tests/contracts/test_celery_contract.py +0 -79
  470. spaps_server_quickstart-0.5.1/tests/domains/affiliate_referrals/test_service.py +0 -1226
  471. spaps_server_quickstart-0.5.1/tests/domains/agent_approvals/test_repository.py +0 -77
  472. spaps_server_quickstart-0.5.1/tests/domains/agent_approvals/test_router.py +0 -911
  473. spaps_server_quickstart-0.5.1/tests/domains/agent_approvals/test_service.py +0 -2162
  474. spaps_server_quickstart-0.5.1/tests/domains/applications/test_router.py +0 -948
  475. spaps_server_quickstart-0.5.1/tests/domains/approval_authz_prod_hardening/conftest.py +0 -54
  476. spaps_server_quickstart-0.5.1/tests/domains/approval_authz_prod_hardening/test_router.py +0 -322
  477. spaps_server_quickstart-0.5.1/tests/domains/approval_authz_prod_hardening/test_service.py +0 -380
  478. spaps_server_quickstart-0.5.1/tests/domains/approval_authz_prod_hardening/test_wiring.py +0 -439
  479. spaps_server_quickstart-0.5.1/tests/domains/audit/test_repository.py +0 -297
  480. spaps_server_quickstart-0.5.1/tests/domains/audit/test_router.py +0 -296
  481. spaps_server_quickstart-0.5.1/tests/domains/audit/test_service.py +0 -359
  482. spaps_server_quickstart-0.5.1/tests/domains/auth/test_refresh_token_anomaly.py +0 -359
  483. spaps_server_quickstart-0.5.1/tests/domains/auth/test_repository.py +0 -436
  484. spaps_server_quickstart-0.5.1/tests/domains/auth/test_router.py +0 -863
  485. spaps_server_quickstart-0.5.1/tests/domains/auth/test_service.py +0 -1945
  486. spaps_server_quickstart-0.5.1/tests/domains/billing_accounts/test_repository.py +0 -251
  487. spaps_server_quickstart-0.5.1/tests/domains/billing_accounts/test_resolver.py +0 -211
  488. spaps_server_quickstart-0.5.1/tests/domains/cfo/test_repository.py +0 -350
  489. spaps_server_quickstart-0.5.1/tests/domains/cfo/test_router.py +0 -1024
  490. spaps_server_quickstart-0.5.1/tests/domains/cfo/test_service.py +0 -1398
  491. spaps_server_quickstart-0.5.1/tests/domains/cfo_roles/test_router.py +0 -829
  492. spaps_server_quickstart-0.5.1/tests/domains/cfo_roles/test_service.py +0 -1040
  493. spaps_server_quickstart-0.5.1/tests/domains/crypto/test_repository.py +0 -373
  494. spaps_server_quickstart-0.5.1/tests/domains/crypto/test_router.py +0 -465
  495. spaps_server_quickstart-0.5.1/tests/domains/crypto/test_service.py +0 -359
  496. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_allotment_service.py +0 -205
  497. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_booking_routes.py +0 -146
  498. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_enhanced_booking_service.py +0 -809
  499. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_pricing.py +0 -458
  500. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_repository.py +0 -479
  501. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_router.py +0 -1118
  502. spaps_server_quickstart-0.5.1/tests/domains/dayrate/test_service.py +0 -1441
  503. spaps_server_quickstart-0.5.1/tests/domains/device_flow/test_service.py +0 -402
  504. spaps_server_quickstart-0.5.1/tests/domains/docs/test_repository.py +0 -365
  505. spaps_server_quickstart-0.5.1/tests/domains/email/test_env_safety.py +0 -306
  506. spaps_server_quickstart-0.5.1/tests/domains/email/test_service.py +0 -1245
  507. spaps_server_quickstart-0.5.1/tests/domains/entitlements/test_repository.py +0 -341
  508. spaps_server_quickstart-0.5.1/tests/domains/entitlements/test_router.py +0 -770
  509. spaps_server_quickstart-0.5.1/tests/domains/entitlements/test_service.py +0 -1215
  510. spaps_server_quickstart-0.5.1/tests/domains/issue_reporting_platform/test_router.py +0 -566
  511. spaps_server_quickstart-0.5.1/tests/domains/issue_reporting_platform/test_service.py +0 -813
  512. spaps_server_quickstart-0.5.1/tests/domains/policies/test_evaluator.py +0 -375
  513. spaps_server_quickstart-0.5.1/tests/domains/policies/test_service.py +0 -324
  514. spaps_server_quickstart-0.5.1/tests/domains/secure_messages/test_router.py +0 -263
  515. spaps_server_quickstart-0.5.1/tests/domains/secure_messages/test_service.py +0 -233
  516. spaps_server_quickstart-0.5.1/tests/domains/self_service/test_router.py +0 -1000
  517. spaps_server_quickstart-0.5.1/tests/domains/sessions/test_router.py +0 -362
  518. spaps_server_quickstart-0.5.1/tests/domains/sessions/test_service.py +0 -667
  519. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_guest_checkout.py +0 -643
  520. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_repository.py +0 -425
  521. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_router.py +0 -1168
  522. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_service.py +0 -975
  523. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_webhook_handler.py +0 -929
  524. spaps_server_quickstart-0.5.1/tests/domains/stripe/test_webhook_hardening.py +0 -336
  525. spaps_server_quickstart-0.5.1/tests/domains/support_telemetry_platform/test_service.py +0 -361
  526. spaps_server_quickstart-0.5.1/tests/domains/test_smoke.py +0 -233
  527. spaps_server_quickstart-0.5.1/tests/domains/wallets/test_repository.py +0 -403
  528. spaps_server_quickstart-0.5.1/tests/domains/wallets/test_router.py +0 -758
  529. spaps_server_quickstart-0.5.1/tests/domains/wallets/test_service.py +0 -776
  530. spaps_server_quickstart-0.5.1/tests/domains/webhooks/test_repository.py +0 -371
  531. spaps_server_quickstart-0.5.1/tests/domains/webhooks/test_router.py +0 -562
  532. spaps_server_quickstart-0.5.1/tests/domains/webhooks/test_service.py +0 -940
  533. spaps_server_quickstart-0.5.1/tests/domains/whitelist/test_repository.py +0 -635
  534. spaps_server_quickstart-0.5.1/tests/domains/whitelist/test_router.py +0 -656
  535. spaps_server_quickstart-0.5.1/tests/middleware/test_api_key.py +0 -389
  536. spaps_server_quickstart-0.5.1/tests/middleware/test_envelope.py +0 -115
  537. spaps_server_quickstart-0.5.1/tests/middleware/test_jwt_auth.py +0 -290
  538. spaps_server_quickstart-0.5.1/tests/middleware/test_key_scope.py +0 -234
  539. spaps_server_quickstart-0.5.1/tests/middleware/test_local_mode.py +0 -102
  540. spaps_server_quickstart-0.5.1/tests/middleware/test_origin_validation.py +0 -173
  541. spaps_server_quickstart-0.5.1/tests/middleware/test_rate_limiting.py +0 -808
  542. spaps_server_quickstart-0.5.1/tests/test_alembic_naming.py +0 -52
  543. spaps_server_quickstart-0.5.1/tests/test_app_factory.py +0 -159
  544. spaps_server_quickstart-0.5.1/tests/test_auth.py +0 -740
  545. spaps_server_quickstart-0.5.1/tests/test_auth_dependencies.py +0 -77
  546. spaps_server_quickstart-0.5.1/tests/test_environment_safety.py +0 -446
  547. spaps_server_quickstart-0.5.1/tests/test_sessions_blacklist.py +0 -344
  548. spaps_server_quickstart-0.5.1/tests/test_sessions_jwt.py +0 -345
  549. spaps_server_quickstart-0.5.1/tests/test_sessions_nonce.py +0 -182
  550. spaps_server_quickstart-0.5.1/tests/test_sessions_password.py +0 -140
  551. spaps_server_quickstart-0.5.1/tests/test_startup_validation.py +0 -618
  552. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/.python-version +0 -0
  553. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/TM-002-IMPLEMENTATION.md +0 -0
  554. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/MIGRATION_GUIDE.md +0 -0
  555. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/TDD_PLAN.md +0 -0
  556. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/TM-ENV-001-checklist.md +0 -0
  557. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/TM-ENV-001-email-environment-safety.md +0 -0
  558. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/UPGRADING.md +0 -0
  559. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/INDEX.md +0 -0
  560. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/_archived/diff-mvp-plan.md +0 -0
  561. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/AUDIT_REPORT.md +0 -0
  562. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/README.md +0 -0
  563. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/backend.md +0 -0
  564. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/flows.md +0 -0
  565. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/frontend.md +0 -0
  566. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/plan.md +0 -0
  567. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/schema.mmd +0 -0
  568. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/security-audit-remediation-2026q1/shared.md +0 -0
  569. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/README.md +0 -0
  570. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/backend.md +0 -0
  571. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/describe-wave-1-principal-proxy-reuse.md +0 -0
  572. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/flows.md +0 -0
  573. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/frontend.md +0 -0
  574. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/plan.md +0 -0
  575. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/schema.mmd +0 -0
  576. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/feature-plans/trust-invariants-kernel/shared.md +0 -0
  577. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/messaging-broker-plan.md +0 -0
  578. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/docs/security-audit-remediation-2026q1-tm007-tm008.md +0 -0
  579. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/scripts/release.sh +0 -0
  580. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/alembic/__init__.py +0 -0
  581. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/__init__.py +0 -0
  582. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/dependencies.py +0 -0
  583. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/domains/__init__.py +0 -0
  584. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/domains/health_router.py +0 -0
  585. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/domains/metrics_router.py +0 -0
  586. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/health.py +0 -0
  587. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/api/router.py +0 -0
  588. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/auth/cookies.py +0 -0
  589. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/db/__init__.py +0 -0
  590. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/db/alembic_status.py +0 -0
  591. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/db/migration_runner.py +0 -0
  592. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/db/session.py +0 -0
  593. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/_db/base.py +0 -0
  594. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/_db/types.py +0 -0
  595. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/affiliate_referrals/__init__.py +0 -0
  596. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/affiliate_referrals/errors.py +0 -0
  597. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/affiliate_referrals/schemas.py +0 -0
  598. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/agent_approvals/__init__.py +0 -0
  599. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/agent_approvals/models.py +0 -0
  600. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/agent_approvals/repository.py +0 -0
  601. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/agent_approvals/schemas.py +0 -0
  602. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/applications/__init__.py +0 -0
  603. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/applications/models.py +0 -0
  604. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/applications/repository.py +0 -0
  605. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/audit/__init__.py +0 -0
  606. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/audit/errors.py +0 -0
  607. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/audit/retention.py +0 -0
  608. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/auth/__init__.py +0 -0
  609. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/cfo/__init__.py +0 -0
  610. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/cfo/quickbooks.py +0 -0
  611. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/cfo_roles/__init__.py +0 -0
  612. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/cfo_roles/errors.py +0 -0
  613. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/cfo_roles/schemas.py +0 -0
  614. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/crypto/__init__.py +0 -0
  615. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/crypto/errors.py +0 -0
  616. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/crypto/models.py +0 -0
  617. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/crypto/schemas.py +0 -0
  618. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/dayrate/__init__.py +0 -0
  619. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/dayrate/models.py +0 -0
  620. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/device_flow/__init__.py +0 -0
  621. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/device_flow/repository.py +0 -0
  622. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/device_flow/router.py +0 -0
  623. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/device_flow/schemas.py +0 -0
  624. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/device_flow/store.py +0 -0
  625. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/__init__.py +0 -0
  626. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/discovery.py +0 -0
  627. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/errors.py +0 -0
  628. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/models.py +0 -0
  629. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/schemas.py +0 -0
  630. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/docs/service.py +0 -0
  631. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/email/__init__.py +0 -0
  632. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/email/config.py +0 -0
  633. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/email/errors.py +0 -0
  634. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/email/mailgun.py +0 -0
  635. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/email/repository.py +0 -0
  636. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/entitlements/__init__.py +0 -0
  637. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/entitlements/errors.py +0 -0
  638. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/events.py +0 -0
  639. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/issue_reporting_platform/__init__.py +0 -0
  640. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/policies/__init__.py +0 -0
  641. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/policies/errors.py +0 -0
  642. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/policies/evaluator.py +0 -0
  643. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/policies/models.py +0 -0
  644. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/policies/schemas.py +0 -0
  645. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/secure_messages/__init__.py +0 -0
  646. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/secure_messages/encryption.py +0 -0
  647. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/secure_messages/errors.py +0 -0
  648. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/secure_messages/models.py +0 -0
  649. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/secure_messages/schemas.py +0 -0
  650. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/__init__.py +0 -0
  651. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/errors.py +0 -0
  652. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/models.py +0 -0
  653. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/repository.py +0 -0
  654. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/schemas.py +0 -0
  655. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/security/service.py +0 -0
  656. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/self_service/__init__.py +0 -0
  657. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/self_service/errors.py +0 -0
  658. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/sessions/__init__.py +0 -0
  659. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/sessions/admin_detection.py +0 -0
  660. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/sessions/models.py +0 -0
  661. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/stripe/__init__.py +0 -0
  662. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/support_telemetry_platform/__init__.py +0 -0
  663. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/support_telemetry_platform/errors.py +0 -0
  664. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/support_telemetry_platform/models.py +0 -0
  665. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/support_telemetry_platform/repository.py +0 -0
  666. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/support_telemetry_platform/schemas.py +0 -0
  667. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/users/__init__.py +0 -0
  668. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/users/repository.py +0 -0
  669. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/users/router.py +0 -0
  670. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/users/schemas.py +0 -0
  671. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/users/service.py +0 -0
  672. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/__init__.py +0 -0
  673. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/chains/__init__.py +0 -0
  674. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/chains/dispatcher.py +0 -0
  675. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/chains/ethereum.py +0 -0
  676. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/chains/solana.py +0 -0
  677. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/models.py +0 -0
  678. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/wallets/schemas.py +0 -0
  679. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/webhooks/__init__.py +0 -0
  680. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/webhooks/delivery.py +0 -0
  681. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/webhooks/errors.py +0 -0
  682. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/webhooks/models.py +0 -0
  683. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/webhooks/schemas.py +0 -0
  684. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/whitelist/__init__.py +0 -0
  685. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/whitelist/models.py +0 -0
  686. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/domains/whitelist/schemas.py +0 -0
  687. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/local_mode/__init__.py +0 -0
  688. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/local_mode/middleware.py +0 -0
  689. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/local_mode/personas.py +0 -0
  690. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/logging.py +0 -0
  691. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/__init__.py +0 -0
  692. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/api_key.py +0 -0
  693. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/client_ip.py +0 -0
  694. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/origin_validation.py +0 -0
  695. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/security_headers.py +0 -0
  696. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware/spaps_deps.py +0 -0
  697. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/middleware.py +0 -0
  698. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/rbac/__init__.py +0 -0
  699. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/schemas/__init__.py +0 -0
  700. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/schemas/health.py +0 -0
  701. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/__init__.py +0 -0
  702. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/_ttl_cache.py +0 -0
  703. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/admin_token_cache.py +0 -0
  704. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/feature_evaluator.py +0 -0
  705. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/role_hierarchy.py +0 -0
  706. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/server_clients.py +0 -0
  707. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/sdk/trusted_service_middleware.py +0 -0
  708. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/secure_messaging.py +0 -0
  709. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/seeds/__init__.py +0 -0
  710. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/seeds/cli.py +0 -0
  711. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/seeds/schemas.py +0 -0
  712. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/seeds/validator.py +0 -0
  713. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/tasks/__init__.py +0 -0
  714. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/tasks/health.py +0 -0
  715. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/tasks/notifications.py +0 -0
  716. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/.pre-commit-config.yaml +0 -0
  717. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/__init__.py +0 -0
  718. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/alembic/env.py +0 -0
  719. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/alembic/script.py.mako +0 -0
  720. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/alembic/versions/.gitkeep +0 -0
  721. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/alembic.ini +0 -0
  722. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/docs/templates/API_DOCUMENTATION_TEMPLATE.md +0 -0
  723. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/docs/templates/DEBUG_REPORT_TEMPLATE.md +0 -0
  724. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/docs/templates/OPERATIONS_PLAYBOOK_TEMPLATE.md +0 -0
  725. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/__init__.py +0 -0
  726. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/admin/router.py +0 -0
  727. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/auth/local_routes.py +0 -0
  728. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/__init__.py +0 -0
  729. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/models.py +0 -0
  730. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/repository.py +0 -0
  731. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/router.py +0 -0
  732. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/schemas.py +0 -0
  733. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/domains/users/service.py +0 -0
  734. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/.env.production.example +0 -0
  735. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/.githooks/pre-push +0 -0
  736. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/.github/workflows/deploy.yml +0 -0
  737. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/.github/workflows/rollback.yml +0 -0
  738. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/Makefile +0 -0
  739. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/deploy/deploy.sh +0 -0
  740. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/deploy/docker-compose.migration.yml +0 -0
  741. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/deploy/post-deploy-verify.sh +0 -0
  742. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/deploy/pre-deploy-checks.sh +0 -0
  743. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/docker-compose.prod.yml +0 -0
  744. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/backup-db.sh +0 -0
  745. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/dev/await_db.py +0 -0
  746. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/dev/fetch-prod-db.sh +0 -0
  747. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/dev/local-debug-loop.sh +0 -0
  748. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/dev/start-db.sh +0 -0
  749. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/dev/stop-db.sh +0 -0
  750. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/new-migration.sh +0 -0
  751. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/prepush.sh +0 -0
  752. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/operations/scripts/restore-db.sh +0 -0
  753. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/scripts/__init__.py +0 -0
  754. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/scripts/seeds/__init__.py +0 -0
  755. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/scripts/seeds/data/users.yaml +0 -0
  756. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/scripts/seeds/schemas/__init__.py +0 -0
  757. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/scripts/seeds/schemas/users.py +0 -0
  758. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/README.md +0 -0
  759. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/__init__.py +0 -0
  760. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/api/__init__.py +0 -0
  761. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/api/test_health.py +0 -0
  762. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/api/test_users_auth.py +0 -0
  763. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/conftest.py +0 -0
  764. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/domains/__init__.py +0 -0
  765. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/domains/example/__init__.py +0 -0
  766. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/domains/example/conftest.py +0 -0
  767. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/domains/users/__init__.py +0 -0
  768. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/domains/users/conftest.py +0 -0
  769. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/integration/__init__.py +0 -0
  770. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/integration/test_db_connectivity.py +0 -0
  771. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/unit/__init__.py +0 -0
  772. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/templates/tests/unit/test_settings.py +0 -0
  773. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/src/spaps_server_quickstart/testing.py +0 -0
  774. {spaps_server_quickstart-0.5.1/tests/contracts → spaps_server_quickstart-0.6.0/src/spaps_server_quickstart/tools}/__init__.py +0 -0
  775. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/Makefile +0 -0
  776. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/docker-compose.yml +0 -0
  777. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/.env.production.example +0 -0
  778. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/.github/workflows/deploy.yml +0 -0
  779. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/Makefile +0 -0
  780. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/deploy.sh +0 -0
  781. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/post-deploy-verify.sh +0 -0
  782. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/pre-deploy-checks.sh +0 -0
  783. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/README.md +0 -0
  784. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/certs/.gitkeep +0 -0
  785. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/docker-compose.yml +0 -0
  786. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/nginx.conf +0 -0
  787. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/sites-available/.gitkeep +0 -0
  788. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/sites-enabled/.gitkeep +0 -0
  789. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/static/.gitkeep +0 -0
  790. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/deploy/reverse-proxy/up.sh +0 -0
  791. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/docker-compose.dev.yml +0 -0
  792. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/docker-compose.prod.yml +0 -0
  793. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/scripts/dev/await_db.py +0 -0
  794. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/scripts/dev/local-debug-loop.sh +0 -0
  795. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/scripts/dev/start-db.sh +0 -0
  796. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/operations/scripts/dev/stop-db.sh +0 -0
  797. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/templates/tests/conftest.py +0 -0
  798. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/conftest.py +0 -0
  799. {spaps_server_quickstart-0.5.1/tests/domains/affiliate_referrals → spaps_server_quickstart-0.6.0/tests/contracts}/__init__.py +0 -0
  800. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_auth_contract.py +0 -0
  801. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_db_contract.py +0 -0
  802. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_dependencies_contract.py +0 -0
  803. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_golden_app_pack.py +0 -0
  804. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_health_contract.py +0 -0
  805. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_manifest_parity.py +0 -0
  806. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_oss_hygiene_script.py +0 -0
  807. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_router_contract.py +0 -0
  808. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/contracts/test_settings_contract.py +0 -0
  809. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/__init__.py +0 -0
  810. {spaps_server_quickstart-0.5.1/tests/domains/agent_approvals → spaps_server_quickstart-0.6.0/tests/domains/_db}/__init__.py +0 -0
  811. {spaps_server_quickstart-0.5.1/tests/domains/applications → spaps_server_quickstart-0.6.0/tests/domains/affiliate_referrals}/__init__.py +0 -0
  812. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/affiliate_referrals/test_router.py +0 -0
  813. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/affiliate_referrals/test_schemas.py +0 -0
  814. {spaps_server_quickstart-0.5.1/tests/domains/approval_authz_prod_hardening → spaps_server_quickstart-0.6.0/tests/domains/agent_approvals}/__init__.py +0 -0
  815. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/agent_approvals/test_callback_url_validation.py +0 -0
  816. {spaps_server_quickstart-0.5.1/tests/domains/audit → spaps_server_quickstart-0.6.0/tests/domains/applications}/__init__.py +0 -0
  817. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/applications/test_repository.py +0 -0
  818. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/applications/test_service.py +0 -0
  819. {spaps_server_quickstart-0.5.1/tests/domains/auth → spaps_server_quickstart-0.6.0/tests/domains/audit}/__init__.py +0 -0
  820. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/audit/test_retention.py +0 -0
  821. {spaps_server_quickstart-0.5.1/tests/domains/cfo → spaps_server_quickstart-0.6.0/tests/domains/auth}/__init__.py +0 -0
  822. {spaps_server_quickstart-0.5.1/tests/domains/crypto → spaps_server_quickstart-0.6.0/tests/domains/cfo}/__init__.py +0 -0
  823. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/cfo_roles/__init__.py +0 -0
  824. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/conftest.py +0 -0
  825. {spaps_server_quickstart-0.5.1/tests/domains/dayrate → spaps_server_quickstart-0.6.0/tests/domains/crypto}/__init__.py +0 -0
  826. {spaps_server_quickstart-0.5.1/tests/domains/device_flow → spaps_server_quickstart-0.6.0/tests/domains/dayrate}/__init__.py +0 -0
  827. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/dayrate/test_booking_policy_service.py +0 -0
  828. {spaps_server_quickstart-0.5.1/tests/domains/docs → spaps_server_quickstart-0.6.0/tests/domains/device_flow}/__init__.py +0 -0
  829. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/device_flow/test_router.py +0 -0
  830. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/device_flow/test_store.py +0 -0
  831. {spaps_server_quickstart-0.5.1/tests/domains/email → spaps_server_quickstart-0.6.0/tests/domains/docs}/__init__.py +0 -0
  832. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/docs/test_router.py +0 -0
  833. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/docs/test_service.py +0 -0
  834. {spaps_server_quickstart-0.5.1/tests/domains/entitlements → spaps_server_quickstart-0.6.0/tests/domains/email}/__init__.py +0 -0
  835. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/email/test_config.py +0 -0
  836. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/email/test_repository.py +0 -0
  837. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/email/test_router.py +0 -0
  838. {spaps_server_quickstart-0.5.1/tests/domains/policies → spaps_server_quickstart-0.6.0/tests/domains/entitlements}/__init__.py +0 -0
  839. {spaps_server_quickstart-0.5.1/tests/domains/secure_messages → spaps_server_quickstart-0.6.0/tests/domains/policies}/__init__.py +0 -0
  840. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/policies/test_router.py +0 -0
  841. {spaps_server_quickstart-0.5.1/tests/domains/security → spaps_server_quickstart-0.6.0/tests/domains/realtime}/__init__.py +0 -0
  842. {spaps_server_quickstart-0.5.1/tests/domains/self_service → spaps_server_quickstart-0.6.0/tests/domains/secure_messages}/__init__.py +0 -0
  843. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/secure_messages/test_encryption.py +0 -0
  844. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/secure_messages/test_tm013_security.py +0 -0
  845. {spaps_server_quickstart-0.5.1/tests/domains/sessions → spaps_server_quickstart-0.6.0/tests/domains/security}/__init__.py +0 -0
  846. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/security/test_repository.py +0 -0
  847. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/security/test_router.py +0 -0
  848. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/security/test_service.py +0 -0
  849. {spaps_server_quickstart-0.5.1/tests/domains/stripe → spaps_server_quickstart-0.6.0/tests/domains/self_service}/__init__.py +0 -0
  850. {spaps_server_quickstart-0.5.1/tests/domains/users → spaps_server_quickstart-0.6.0/tests/domains/sessions}/__init__.py +0 -0
  851. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/sessions/test_admin_detection.py +0 -0
  852. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/sessions/test_repository.py +0 -0
  853. {spaps_server_quickstart-0.5.1/tests/domains/wallets → spaps_server_quickstart-0.6.0/tests/domains/stripe}/__init__.py +0 -0
  854. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/stripe/test_subscription_application_scoping.py +0 -0
  855. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/support_telemetry_platform/__init__.py +0 -0
  856. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/support_telemetry_platform/test_repository.py +0 -0
  857. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/support_telemetry_platform/test_router.py +0 -0
  858. {spaps_server_quickstart-0.5.1/tests/domains/webhooks → spaps_server_quickstart-0.6.0/tests/domains/users}/__init__.py +0 -0
  859. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/users/test_repository.py +0 -0
  860. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/users/test_router.py +0 -0
  861. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/users/test_service.py +0 -0
  862. {spaps_server_quickstart-0.5.1/tests/domains/whitelist → spaps_server_quickstart-0.6.0/tests/domains/wallets}/__init__.py +0 -0
  863. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/wallets/test_chains.py +0 -0
  864. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/wallets/test_legacy_routes_tenant_binding.py +0 -0
  865. {spaps_server_quickstart-0.5.1/tests/middleware → spaps_server_quickstart-0.6.0/tests/domains/webhooks}/__init__.py +0 -0
  866. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/webhooks/test_delivery.py +0 -0
  867. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/webhooks/test_signing.py +0 -0
  868. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/domains/whitelist/test_service.py +0 -0
  869. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/middleware/test_client_ip.py +0 -0
  870. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/middleware/test_security_headers.py +0 -0
  871. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/middleware/test_spaps_deps.py +0 -0
  872. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/seeds/test_cli.py +0 -0
  873. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_alembic_path_bootstrap.py +0 -0
  874. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_api_router.py +0 -0
  875. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_auth_channels.py +0 -0
  876. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_auth_cookies.py +0 -0
  877. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_bcrypt_compat.py +0 -0
  878. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_db_session.py +0 -0
  879. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_dev_data_pipeline.py +0 -0
  880. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_health_router.py +0 -0
  881. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_imports.py +0 -0
  882. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_local_mode.py +0 -0
  883. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_logging.py +0 -0
  884. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_middleware.py +0 -0
  885. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_migration_runner.py +0 -0
  886. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_migration_status.py +0 -0
  887. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_operations_templates.py +0 -0
  888. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_package_metadata.py +0 -0
  889. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_rbac.py +0 -0
  890. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_readme_snippets.py +0 -0
  891. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_sdk.py +0 -0
  892. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_secure_messaging.py +0 -0
  893. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_seed_validation.py +0 -0
  894. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_session_autocommit.py +0 -0
  895. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_settings.py +0 -0
  896. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_spaps_app.py +0 -0
  897. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/tests/test_tasks.py +0 -0
  898. {spaps_server_quickstart-0.5.1 → spaps_server_quickstart-0.6.0}/todo.md +0 -0
@@ -0,0 +1,202 @@
1
+ # Dependencies
2
+ node_modules/
3
+ *.log
4
+ npm-debug.log*
5
+ yarn-debug.log*
6
+ yarn-error.log*
7
+ lerna-debug.log*
8
+
9
+ sweet-potato-threat-model.md
10
+
11
+ # Python
12
+ **/__pycache__/
13
+ *.py[cod]
14
+ *.pyo
15
+ *.pyd
16
+ .venv/
17
+ *.egg-info/
18
+
19
+ # Testing
20
+ coverage/
21
+ coverage-*/
22
+ **/coverage/
23
+ **/coverage-*/
24
+ **/.coverage
25
+ **/.coverage.*
26
+ **/.pytest_cache/
27
+ **/.mypy_cache/
28
+ **/.ruff_cache/
29
+ **/.hypothesis/
30
+ **/.testmondata
31
+ **/.testmondata-shm
32
+ **/.testmondata-wal
33
+ *.lcov
34
+ **/lcov.info
35
+ **/lcov-report/
36
+ .nyc_output
37
+ packages/python-client/.coverage
38
+
39
+ # Production builds
40
+ dist/
41
+ **/dist/
42
+ build/
43
+ out/
44
+ *.tsbuildinfo
45
+
46
+ # Storybook
47
+ storybook-static/
48
+ *.storybook
49
+
50
+ # Environment files
51
+ .env
52
+ .env.*
53
+ *.env
54
+ *.env.draft
55
+ **/.env
56
+ **/.env.*
57
+ .env.development
58
+ .env.production
59
+ .env.staging
60
+ .env.deploy
61
+ .env.local
62
+ .env.development.local
63
+ .env.test.local
64
+ .env.production.local
65
+ # Allow committed templates/examples
66
+ !*.env.example
67
+ !*.env.sample
68
+ !*.env.template
69
+ !**/.env.example
70
+ !**/.env.sample
71
+ !**/.env.template
72
+ !**/.env.*.example
73
+ !**/.env.*.sample
74
+ !**/.env.*.template
75
+ !**/*.env.example
76
+ !**/*.env.sample
77
+ !**/*.env.template
78
+
79
+ # IDE
80
+ .vscode/
81
+ .idea/
82
+ .codex/
83
+ .mcp.json
84
+ .claude/settings.local.json
85
+ .claude/skills/
86
+ .beads/*.db
87
+ .beads/*.db-shm
88
+ .beads/*.db-wal
89
+ *.swp
90
+ *.swo
91
+ *.swn
92
+ .DS_Store
93
+
94
+ # Debug
95
+ debug.log
96
+ *.log
97
+
98
+ # Temporary files
99
+ tmp/
100
+ temp/
101
+ *.tmp
102
+ packages/python-client/**/__pycache__/
103
+
104
+ # Package manager files
105
+ .pnp.*
106
+ .yarn/*
107
+ !.yarn/patches
108
+ !.yarn/plugins
109
+ !.yarn/releases
110
+ !.yarn/sdks
111
+ !.yarn/versions
112
+
113
+ # Next.js specific
114
+ .next/
115
+ next-env.d.ts
116
+ .vercel/
117
+
118
+ # Example projects - ignore build artifacts
119
+ examples/**/.next/
120
+ examples/**/node_modules/
121
+ examples/**/dist/
122
+ examples/**/build/
123
+ examples/**/*.log
124
+ examples/**/.env
125
+ examples/**/.env.local
126
+
127
+ # MCP/Sweetpotato docs build
128
+ mcp-sweetpotato-docs/node_modules/
129
+ mcp-sweetpotato-docs/dist/
130
+ mcp-sweetpotato-docs/build/
131
+ mcp-sweetpotato-docs/.next/
132
+
133
+ # Large test files
134
+ *.jpg
135
+ *.jpeg
136
+ *.png
137
+ *.gif
138
+ *.bmp
139
+ *.mp4
140
+ *.mov
141
+ *.avi
142
+ *.zip
143
+ *.tar
144
+ *.gz
145
+ *.rar
146
+
147
+ # Database files
148
+ *.sqlite
149
+ *.sqlite3
150
+ *.db
151
+
152
+ # Supabase production backups (contain real user data)
153
+ schema.sql
154
+ roles.sql
155
+ data.sql
156
+ backup-feb8.sql
157
+
158
+ # Stripe CLI
159
+ .stripe-listen.pid
160
+
161
+ # Local Solana Devnet keypairs
162
+ *-devnet.json
163
+
164
+ # Local modes/swarm artifacts
165
+ .ntm/
166
+ .skillbox/
167
+ MODES_ANALYSIS_PROGRESS.md
168
+ MODES_OF_REASONING_REPORT_AND_ANALYSIS_OF_PROJECT.md
169
+ MODE_OUTPUT_*.md
170
+ MODES_SWARM/
171
+
172
+ # OS files
173
+ Thumbs.db
174
+ Desktop.ini
175
+
176
+ # Backup files
177
+ *.bak
178
+ *.backup
179
+ *.old
180
+
181
+ # Test output
182
+ test-results/
183
+ playwright-report/
184
+ playwright/.cache/
185
+ tests/artifacts/
186
+
187
+ # Lock files that shouldn't be committed for libraries
188
+ # (keep package-lock.json for applications)
189
+ # yarn.lock
190
+ # pnpm-lock.yaml*.tgz
191
+
192
+ **/coverage.xml
193
+
194
+ context.yaml
195
+ MODES_OF_REASONING_SECOND_PASS_REPORT.md
196
+ skillbox-config/
197
+
198
+ # Simplify/refactor tool run artifacts
199
+ refactor/
200
+
201
+ # bv (beads viewer) local config and caches
202
+ .bv/
@@ -0,0 +1,139 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project are documented in this file.
4
+
5
+ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [Unreleased]
8
+
9
+ ## [0.6.0] - 2026-05-29
10
+
11
+ ### Added
12
+
13
+ - Shared WebSocket connect-auth: `mint_ws_ticket`, `consume_ws_ticket`, and the `resolve_ws_identity` WebSocket helper, plus a `POST /realtime/ws-ticket` route. Browsers cannot set the WebSocket `Authorization` header, so apps mint a short-lived, single-use connection ticket over authenticated HTTP and present it on the socket query string. Built on the existing one-time `AuthToken` primitive (`type="ws_connect"`) — no new table.
14
+ - Added reusable hosted-asset storage adapters and issue-reporting screenshot attachment routes backed by private hosted objects.
15
+
16
+ ## [0.5.1] - 2026-04-25
17
+
18
+ ### Fixed
19
+
20
+ - Hardened request middleware for API keys, key scopes, origin validation, rate limiting, webhook delivery, and self-service access paths.
21
+
22
+ ## [0.5.0] - 2026-03-29
23
+
24
+ ### Added
25
+
26
+ - End-user issue-reporting flows, runtime token admin support, and support-telemetry helpers for downstream FastAPI services.
27
+ - Browser-friendly device-flow verification and expanded reusable database helper surface.
28
+
29
+ ### Fixed
30
+
31
+ - Magic-link redirect handling, stale session admin-email behavior, and related auth/session hardening.
32
+ - Hotspot complexity and coverage gaps across webhook, auth, and session paths.
33
+
34
+ ## [0.4.0] - 2026-02-11
35
+
36
+ ### Added
37
+
38
+ - Full domain rewrite covering auth, sessions, users, wallets, payments, entitlements, dayrate, agent approvals, affiliate referrals, email templates, and related operational domains.
39
+ - Approval capability gates and governance health endpoint.
40
+
41
+ ### Changed
42
+
43
+ - Production cutover to Python SPAPS stack (CI/CD, Docker Compose, deploy scripts).
44
+ - Consolidated SPAPS integration patterns into published packages.
45
+
46
+ ### Security
47
+
48
+ - Rate limiting by client IP.
49
+ - PII encryption startup checks.
50
+ - Webhook authentication hardening.
51
+ - Row-level locking on refresh tokens.
52
+ - Fail-closed settings defaults.
53
+
54
+ ## [0.3.0] - 2026-02-08
55
+
56
+ ### Added
57
+
58
+ - Contract tests and shared testing module.
59
+ - Health endpoint enhancements.
60
+
61
+ ### Changed
62
+
63
+ - Expanded coverage across settings, middleware, database, Celery, and auth helpers.
64
+
65
+ ## [0.2.3] - 2026-01-12
66
+
67
+ ### Fixed
68
+
69
+ - `SpapsAuthMiddleware` now skips execution when `authenticated_user` is already populated.
70
+
71
+ ## [0.2.2] - 2026-01-11
72
+
73
+ ### Added
74
+
75
+ - `fnmatch` glob support for `spaps_auth_exempt_paths`.
76
+ - Set-password endpoint support for authenticated users.
77
+ - Stripe webhook admin tooling for entitlement workflows.
78
+ - Tier 3 templates: seeds, tests, domain examples, docs.
79
+ - Startup validation, Alembic templates, and CI/CD workflow scaffolding.
80
+
81
+ ## [0.2.1] - 2025-12-01
82
+
83
+ ### Added
84
+
85
+ - Shared pgvector dev scripts: `start-db.sh`, `stop-db.sh`, `await_db.py`.
86
+ - Dynamic DNS resolver support for Docker reverse-proxy setups.
87
+
88
+ ### Fixed
89
+
90
+ - nginx DNS caching behavior.
91
+ - HTMA rate-limiting exemption handling.
92
+
93
+ ## [0.2.0] - 2025-10-15
94
+
95
+ ### Added
96
+
97
+ - Local auth bypass mode with pre-configured admin/user personas.
98
+ - Deployment check scripts (`pre-deploy`, `post-deploy`).
99
+ - Database caching workflow for local debug loops.
100
+ - Operational templates (Makefile, GHCR deploy, compose/reverse-proxy stubs).
101
+
102
+ ### Security
103
+
104
+ - Production guardrails for local-auth bypass mode.
105
+
106
+ ## [0.1.2] - 2025-10-15
107
+
108
+ ### Fixed
109
+
110
+ - CI pipeline trigger scoping and quickstart build stability.
111
+
112
+ ## [0.1.1] - 2025-10-14
113
+
114
+ ### Changed
115
+
116
+ - Maintenance release to unblock automated PyPI publishing workflow.
117
+
118
+ ## [0.1.0] - 2025-10-14
119
+
120
+ ### Added
121
+
122
+ - FastAPI lifespan handling for SPAPS auth cleanup.
123
+ - Migration and upgrading guidance for downstream services.
124
+ - Shared refresh-cookie configuration and browser helper exports.
125
+ - Expanded package exports for auth helpers and operational templates.
126
+ - RBAC role helpers and sample domain routers.
127
+ - Comprehensive unit tests across settings, middleware, DB, Celery, and auth helpers.
128
+
129
+ ## [0.0.2] - 2025-10-12
130
+
131
+ ### Added
132
+
133
+ - Declared the `spaps` Python client dependency for downstream installs and CI runs.
134
+
135
+ ## [0.0.1] - 2025-10-14
136
+
137
+ ### Added
138
+
139
+ - Initial `spaps-server-quickstart` scaffold with shared FastAPI/Celery/database utilities.
@@ -0,0 +1,308 @@
1
+ Metadata-Version: 2.4
2
+ Name: spaps-server-quickstart
3
+ Version: 0.6.0
4
+ Summary: Shared FastAPI/Celery scaffolding for Sweet Potato service backends.
5
+ Project-URL: Homepage, https://api.sweetpotato.dev
6
+ Project-URL: Repository, https://github.com/sweet-potato/spaps
7
+ Author-email: buildooor <buildooor@gmail.com>
8
+ License: MIT
9
+ Keywords: celery,fastapi,quickstart,spaps,sweet-potato
10
+ Classifier: Framework :: FastAPI
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Topic :: Internet :: WWW/HTTP
17
+ Requires-Python: >=3.12
18
+ Requires-Dist: aioboto3<14.0,>=13.3.0
19
+ Requires-Dist: alembic<2.0,>=1.13.1
20
+ Requires-Dist: asyncpg<0.31,>=0.30.0
21
+ Requires-Dist: bcrypt<6.0,>=4.0.0
22
+ Requires-Dist: botocore<2.0,>=1.35.0
23
+ Requires-Dist: celery<6.0,>=5.5.3
24
+ Requires-Dist: cryptography<45.0,>=42.0.0
25
+ Requires-Dist: email-validator<3.0,>=2.1.0
26
+ Requires-Dist: eth-account<1.0,>=0.13.0
27
+ Requires-Dist: fastapi<0.119,>=0.118.0
28
+ Requires-Dist: greenlet<4.0,>=3.0.3
29
+ Requires-Dist: httpx<0.29,>=0.28.1
30
+ Requires-Dist: orjson<4.0,>=3.10.0
31
+ Requires-Dist: packaging<27.0,>=23.0
32
+ Requires-Dist: pgvector<0.5,>=0.4.1
33
+ Requires-Dist: psycopg[binary]<3.3,>=3.2.10
34
+ Requires-Dist: pydantic-settings<3.0,>=2.3.0
35
+ Requires-Dist: pydantic<3.0,>=2.8.0
36
+ Requires-Dist: pyjwt<3.0,>=2.8.0
37
+ Requires-Dist: python-dotenv<2.0,>=1.0.1
38
+ Requires-Dist: python-multipart<0.1,>=0.0.20
39
+ Requires-Dist: redis<7.0,>=6.4.0
40
+ Requires-Dist: slowapi<1.0,>=0.1.9
41
+ Requires-Dist: solders<1.0,>=0.21.0
42
+ Requires-Dist: spaps>=0.1.2
43
+ Requires-Dist: sqlalchemy<3.0,>=2.0.30
44
+ Requires-Dist: stripe<12.0,>=8.0.0
45
+ Requires-Dist: structlog<26.0,>=25.4.0
46
+ Requires-Dist: uvicorn[standard]<0.38,>=0.37.0
47
+ Requires-Dist: x402[extensions,fastapi,svm]==2.9.0
48
+ Provides-Extra: dev
49
+ Requires-Dist: anyio<5.0,>=4.4.0; extra == 'dev'
50
+ Requires-Dist: bcrypt<6.0,>=4.0.0; extra == 'dev'
51
+ Requires-Dist: coverage<8.0,>=7.4.0; extra == 'dev'
52
+ Requires-Dist: docker<8.0,>=7.0.0; extra == 'dev'
53
+ Requires-Dist: filelock<4.0,>=3.12.0; extra == 'dev'
54
+ Requires-Dist: httpx<0.29,>=0.28.1; extra == 'dev'
55
+ Requires-Dist: mypy<1.12,>=1.10.0; extra == 'dev'
56
+ Requires-Dist: pytest-asyncio<0.24,>=0.23.0; extra == 'dev'
57
+ Requires-Dist: pytest-cov<6.0,>=5.0.0; extra == 'dev'
58
+ Requires-Dist: pytest-testmon<3.0,>=2.1.0; extra == 'dev'
59
+ Requires-Dist: pytest-xdist<4.0,>=3.6.1; extra == 'dev'
60
+ Requires-Dist: pytest<9.0,>=8.2.0; extra == 'dev'
61
+ Requires-Dist: respx<0.23,>=0.22.0; extra == 'dev'
62
+ Requires-Dist: ruff<0.5,>=0.4.1; extra == 'dev'
63
+ Requires-Dist: testcontainers[postgres]<5.0,>=4.0.0; extra == 'dev'
64
+ Requires-Dist: types-pyyaml<7.0,>=6.0.0; extra == 'dev'
65
+ Provides-Extra: release
66
+ Requires-Dist: build<2.0,>=1.2.1; extra == 'release'
67
+ Requires-Dist: twine<6.0,>=5.0.0; extra == 'release'
68
+ Provides-Extra: testing
69
+ Requires-Dist: docker<8.0,>=7.0.0; extra == 'testing'
70
+ Requires-Dist: filelock<4.0,>=3.12.0; extra == 'testing'
71
+ Requires-Dist: httpx<0.29,>=0.28.1; extra == 'testing'
72
+ Requires-Dist: pytest-asyncio<0.24,>=0.23.0; extra == 'testing'
73
+ Requires-Dist: pytest-testmon<3.0,>=2.1.0; extra == 'testing'
74
+ Requires-Dist: pytest-xdist<4.0,>=3.6.1; extra == 'testing'
75
+ Requires-Dist: pytest<9.0,>=8.2.0; extra == 'testing'
76
+ Requires-Dist: respx<0.23,>=0.22.0; extra == 'testing'
77
+ Requires-Dist: testcontainers[postgres]<5.0,>=4.0.0; extra == 'testing'
78
+ Description-Content-Type: text/markdown
79
+
80
+ # spaps-server-quickstart
81
+
82
+ Reusable FastAPI, SQLAlchemy, Celery, auth, and operational scaffolding for SPAPS-aligned Python services. This is the active backend package in this repository.
83
+
84
+ Examples in this README use placeholders such as `https://api.example.test` and local-only database URLs. Replace them with values from your own environment.
85
+
86
+ ## Install
87
+
88
+ ```bash
89
+ pip install spaps-server-quickstart
90
+ ```
91
+
92
+ This package targets Python 3.12+.
93
+
94
+ ## When It Fits
95
+
96
+ | Need | Package gives you |
97
+ | --- | --- |
98
+ | A real FastAPI starting point | `create_app`, settings loaders, request logging, and startup checks |
99
+ | Shared auth and RBAC | SPAPS auth middleware, auth channels, cookies, and role dependencies |
100
+ | Async database plumbing | SQLAlchemy 2 async session helpers and Alembic support |
101
+ | Operational scaffolding | Celery setup, deploy templates, local-mode helpers, and service SDK utilities |
102
+
103
+ ## Quick Start
104
+
105
+ ```python
106
+ from fastapi import APIRouter
107
+
108
+ from spaps_server_quickstart import create_app
109
+ from spaps_server_quickstart.settings import (
110
+ BaseServiceSettings,
111
+ create_settings_loader,
112
+ )
113
+
114
+
115
+ class ExampleSettings(BaseServiceSettings):
116
+ app_name: str = "Example Service"
117
+ spaps_auth_enabled: bool = False
118
+
119
+
120
+ router = APIRouter()
121
+
122
+
123
+ @router.get("/health")
124
+ async def health() -> dict[str, bool]:
125
+ return {"ok": True}
126
+
127
+
128
+ app = create_app(
129
+ settings_loader=create_settings_loader(ExampleSettings),
130
+ api_router=router,
131
+ )
132
+ ```
133
+
134
+ ## What the Package Ships
135
+
136
+ | Area | Highlights |
137
+ | --- | --- |
138
+ | App lifecycle | `create_app`, startup validation, logging, CORS wiring |
139
+ | Auth | `SpapsAuthMiddleware`, auth cookies, auth channel service, local mode |
140
+ | Routing and RBAC | Base router builder, authenticated-user dependencies, `require_roles`, `has_required_roles` |
141
+ | Database | Async sessionmaker factory, migration runner, Alembic helpers |
142
+ | Tasks | Celery app factory plus notification and ping task helpers |
143
+ | Service SDK helpers | Admin token cache, server-side SPAPS clients, trusted-service middleware, feature evaluation |
144
+ | Templates | Domain examples, tests, deployment scaffolding, and local operations helpers |
145
+ | Reference contract | The `golden_path` app blueprint, seeded paid-access policy, and downstream runbook for the core auth -> billing -> entitlement -> access loop |
146
+
147
+ ## Golden App Pack
148
+
149
+ If you want one SPAPS-native reference contract instead of a blank scaffold, start with the `golden_path` blueprint.
150
+
151
+ It is the canonical pack for:
152
+
153
+ - browser auth and session bootstrap
154
+ - Stripe checkout or subscription flows
155
+ - entitlement projection into `paid_access`
156
+ - policy-gated access through the seeded `access-paid-features` rule
157
+ - an operator runbook under `docs/downstream_apps/golden-path-reference/`
158
+
159
+ ## Local Development Mode
160
+
161
+ Set `DEVELOPMENT_ENVIRONMENT=local` to enable local auth bypass in development and tests.
162
+
163
+ ```python
164
+ from spaps_server_quickstart.local_mode import (
165
+ LocalAuthMiddleware,
166
+ get_default_registry,
167
+ )
168
+ from spaps_server_quickstart.settings import BaseServiceSettings
169
+
170
+ settings = BaseServiceSettings(development_environment="local")
171
+
172
+ if settings.is_local_development:
173
+ app.add_middleware(LocalAuthMiddleware, registry=get_default_registry())
174
+ ```
175
+
176
+ Default personas:
177
+
178
+ | Persona | Token | Roles |
179
+ | --- | --- | --- |
180
+ | Admin | `local-admin` | `admin`, `user` |
181
+ | User | `local-user` | `user` |
182
+
183
+ ## Configuration
184
+
185
+ Common settings exposed through `BaseServiceSettings`:
186
+
187
+ | Setting | Purpose |
188
+ | --- | --- |
189
+ | `development_environment` | Enables local bypass mode when set to `local` |
190
+ | `spaps_auth_enabled` | Turns SPAPS auth middleware on or off |
191
+ | `spaps_auth_exempt_paths` | Comma-separated paths that skip SPAPS auth |
192
+ | `cors_allow_origins` | Shared CORS configuration |
193
+ | `database_url` | Async SQLAlchemy database URL |
194
+ | `redis_url` | Redis URL used by Celery defaults |
195
+ | `secure_messages_enabled` | Enables secure-messaging gateway support |
196
+
197
+ For per-process local origins that should not live in environment settings,
198
+ pass them to the app factory:
199
+
200
+ ```python
201
+ app = create_app(
202
+ settings_loader=create_settings_loader(ExampleSettings),
203
+ api_router=router,
204
+ extra_cors_origins=["http://localhost:5173"],
205
+ )
206
+ ```
207
+
208
+ When settings origins are empty, `extra_cors_origins` enables CORS only for
209
+ those explicit origins. It does not add the wildcard origin unless CORS is
210
+ enabled manually without any configured origins.
211
+
212
+ Example environment:
213
+
214
+ ```bash
215
+ DEVELOPMENT_ENVIRONMENT=local
216
+ SPAPS_API_URL=https://api.example.test
217
+ SPAPS_API_KEY=spaps_sec_example
218
+ DATABASE_URL=postgresql+asyncpg://postgres:postgres@localhost:5432/service
219
+ SPAPS_AUTH_EXEMPT_PATHS=/health,/docs
220
+ CORS_ALLOW_ORIGINS=http://localhost:3000,http://localhost:5173
221
+ ```
222
+
223
+ ## Validation
224
+
225
+ From the repository root, the `Makefile` is the canonical workflow:
226
+
227
+ ```bash
228
+ make install
229
+ make pytest
230
+ make lint
231
+ make typecheck
232
+ make pytest-cov
233
+ make test
234
+ ```
235
+
236
+ Useful additional commands:
237
+
238
+ ```bash
239
+ make pytest-full
240
+ make migrate
241
+ make new-migration MSG="add_example_table"
242
+ make local-up
243
+ ```
244
+
245
+ ## Troubleshooting
246
+
247
+ ### `make pytest` reports no affected tests
248
+
249
+ That is expected when testmon sees no impacted tests. Use `make pytest-full` when you need a full run.
250
+
251
+ ### Local auth bypass is not active
252
+
253
+ Confirm `DEVELOPMENT_ENVIRONMENT=local` is set before application startup and that `LocalAuthMiddleware` is wired into the app.
254
+
255
+ ### Unauthenticated routes still require auth
256
+
257
+ Check `spaps_auth_exempt_paths` and make sure the configured paths match the router paths exactly.
258
+
259
+ ### Startup fails on environment validation
260
+
261
+ Review the required settings and any safety checks triggered during startup.
262
+
263
+ ### I need a new service quickly
264
+
265
+ Start from the included templates, then keep the repo-root validation path intact while adapting domain code and settings.
266
+
267
+ ## Limitations
268
+
269
+ - This package is a scaffold, not a finished application.
270
+ - Downstream services still need their own routers, schemas, repositories, and deployment settings.
271
+ - Some operational templates intentionally need environment-specific edits before production use.
272
+
273
+ ## FAQ
274
+
275
+ ### Is this the active backend package in this repo?
276
+
277
+ Yes. This package replaces the old Node/Express stack as the active backend surface.
278
+
279
+ ### Does it include local auth bypass support?
280
+
281
+ Yes. Set `DEVELOPMENT_ENVIRONMENT=local` and wire in the local-mode helpers.
282
+
283
+ ### Can I use it without Celery?
284
+
285
+ Yes. Celery helpers are included, but you can compose only the pieces your service needs.
286
+
287
+ ### Does it include RBAC helpers?
288
+
289
+ Yes. Use `require_roles`, `has_required_roles`, and the authenticated-user dependencies.
290
+
291
+ ### What is the recommended validation path here?
292
+
293
+ From the repository root: `make pytest`, `make lint`, `make typecheck`, `make pytest-cov`, and `make test`.
294
+
295
+ ## Metadata
296
+
297
+ - `package_name`: `spaps-server-quickstart`
298
+ - `latest_version`: `0.5.1`
299
+ - `minimum_runtime`: `Python >=3.12`
300
+ - `api_base_url`: `https://api.sweetpotato.dev`
301
+
302
+ ## About Contributions
303
+
304
+ > *About Contributions:* Please don't take this the wrong way, but I do not accept outside contributions for any of my projects. I simply don't have the mental bandwidth to review anything, and it's my name on the thing, so I'm responsible for any problems it causes; thus, the risk-reward is highly asymmetric from my perspective. I'd also have to worry about other "stakeholders," which seems unwise for tools I mostly make for myself for free. Feel free to submit issues, and even PRs if you want to illustrate a proposed fix, but know I won't merge them directly. Instead, I'll have Claude or Codex review submissions via `gh` and independently decide whether and how to address them. Bug reports in particular are welcome. Sorry if this offends, but I want to avoid wasted time and hurt feelings. I understand this isn't in sync with the prevailing open-source ethos that seeks community contributions, but it's the only way I can move at this velocity and keep my sanity.
305
+
306
+ ## License
307
+
308
+ MIT