GeneralManager 0.57.1__tar.gz → 0.57.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. {generalmanager-0.57.1/src/GeneralManager.egg-info → generalmanager-0.57.3}/PKG-INFO +1 -1
  2. {generalmanager-0.57.1 → generalmanager-0.57.3}/pyproject.toml +1 -1
  3. {generalmanager-0.57.1 → generalmanager-0.57.3/src/GeneralManager.egg-info}/PKG-INFO +1 -1
  4. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_search.py +31 -7
  5. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/factory/auto_factory.py +20 -17
  6. {generalmanager-0.57.1 → generalmanager-0.57.3}/LICENSE +0 -0
  7. {generalmanager-0.57.1 → generalmanager-0.57.3}/README.md +0 -0
  8. {generalmanager-0.57.1 → generalmanager-0.57.3}/setup.cfg +0 -0
  9. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/GeneralManager.egg-info/SOURCES.txt +0 -0
  10. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/GeneralManager.egg-info/dependency_links.txt +0 -0
  11. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/GeneralManager.egg-info/requires.txt +0 -0
  12. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/GeneralManager.egg-info/top_level.txt +0 -0
  13. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/__init__.py +0 -0
  14. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/__init__.py +0 -0
  15. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/api.py +0 -0
  16. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/bucket.py +0 -0
  17. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/cache.py +0 -0
  18. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/factory.py +0 -0
  19. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/general_manager.py +0 -0
  20. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/interface.py +0 -0
  21. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/manager.py +0 -0
  22. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/measurement.py +0 -0
  23. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/permission.py +0 -0
  24. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/rule.py +0 -0
  25. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/search.py +0 -0
  26. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/_types/utils.py +0 -0
  27. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/__init__.py +0 -0
  28. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql.py +0 -0
  29. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_errors.py +0 -0
  30. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_mutations.py +0 -0
  31. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_prefetch.py +0 -0
  32. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_resolvers.py +0 -0
  33. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_subscription_consumer.py +0 -0
  34. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_subscriptions.py +0 -0
  35. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_view.py +0 -0
  36. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_warmup.py +0 -0
  37. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_warmup_registry.py +0 -0
  38. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/graphql_warmup_tasks.py +0 -0
  39. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/mutation.py +0 -0
  40. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/property.py +0 -0
  41. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/registry.py +0 -0
  42. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/remote_api.py +0 -0
  43. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/remote_invalidation.py +0 -0
  44. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/api/remote_invalidation_client.py +0 -0
  45. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/apps.py +0 -0
  46. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bootstrap.py +0 -0
  47. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/__init__.py +0 -0
  48. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/base_bucket.py +0 -0
  49. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/calculation_bucket.py +0 -0
  50. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/database_bucket.py +0 -0
  51. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/group_bucket.py +0 -0
  52. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/indexing.py +0 -0
  53. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/bucket/request_bucket.py +0 -0
  54. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/__init__.py +0 -0
  55. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/cache_decorator.py +0 -0
  56. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/cache_tracker.py +0 -0
  57. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/dependency_cache.py +0 -0
  58. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/dependency_index.py +0 -0
  59. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/dependency_matching.py +0 -0
  60. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/dependency_publish.py +0 -0
  61. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/dependency_shards.py +0 -0
  62. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/model_dependency_collector.py +0 -0
  63. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/run_context.py +0 -0
  64. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/cache/signals.py +0 -0
  65. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/__init__.py +0 -0
  66. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/audit.py +0 -0
  67. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/bootstrap.py +0 -0
  68. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/checks.py +0 -0
  69. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/consumer.py +0 -0
  70. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/errors.py +0 -0
  71. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/__init__.py +0 -0
  72. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/__main__.py +0 -0
  73. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/baseline.py +0 -0
  74. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/diagnostics.py +0 -0
  75. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/fingerprints.py +0 -0
  76. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/fixtures.py +0 -0
  77. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/judges/__init__.py +0 -0
  78. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/judges/answer_quality.py +0 -0
  79. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/judges/contract.py +0 -0
  80. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/judges/result_accuracy.py +0 -0
  81. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/judges/tool_sequence.py +0 -0
  82. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/readiness.py +0 -0
  83. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/runner.py +0 -0
  84. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/evals/traces.py +0 -0
  85. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/grounding.py +0 -0
  86. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/models.py +0 -0
  87. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/__init__.py +0 -0
  88. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/_shared.py +0 -0
  89. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/anthropic.py +0 -0
  90. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/base.py +0 -0
  91. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/google.py +0 -0
  92. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/ollama.py +0 -0
  93. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/providers/openai.py +0 -0
  94. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/rate_limits.py +0 -0
  95. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/routing.py +0 -0
  96. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/schema_index.py +0 -0
  97. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/settings.py +0 -0
  98. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/signals.py +0 -0
  99. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/system_prompt.py +0 -0
  100. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/tool_metadata.py +0 -0
  101. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/tools.py +0 -0
  102. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/chat/views.py +0 -0
  103. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/conf.py +0 -0
  104. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/factory/__init__.py +0 -0
  105. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/factory/factories.py +0 -0
  106. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/factory/factory_methods.py +0 -0
  107. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/__init__.py +0 -0
  108. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/base_interface.py +0 -0
  109. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/bundles/__init__.py +0 -0
  110. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/bundles/calculation.py +0 -0
  111. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/bundles/database.py +0 -0
  112. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/bundles/remote_manager.py +0 -0
  113. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/bundles/request.py +0 -0
  114. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/__init__.py +0 -0
  115. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/base.py +0 -0
  116. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/builtin.py +0 -0
  117. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/calculation/__init__.py +0 -0
  118. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/calculation/_compat.py +0 -0
  119. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/calculation/lifecycle.py +0 -0
  120. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/configuration.py +0 -0
  121. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/core/observability.py +0 -0
  122. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/core/utils.py +0 -0
  123. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/exceptions.py +0 -0
  124. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/existing_model/__init__.py +0 -0
  125. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/existing_model/_compat.py +0 -0
  126. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/existing_model/resolution.py +0 -0
  127. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/factory.py +0 -0
  128. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/__init__.py +0 -0
  129. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/_compat.py +0 -0
  130. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/history.py +0 -0
  131. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/lifecycle.py +0 -0
  132. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/mutations.py +0 -0
  133. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm/support.py +0 -0
  134. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm_utils/__init__.py +0 -0
  135. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm_utils/django_manager_utils.py +0 -0
  136. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm_utils/field_descriptors.py +0 -0
  137. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/orm_utils/payload_normalizer.py +0 -0
  138. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/read_only/__init__.py +0 -0
  139. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/read_only/_compat.py +0 -0
  140. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/read_only/_types.py +0 -0
  141. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/read_only/lifecycle.py +0 -0
  142. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/read_only/management.py +0 -0
  143. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/registry.py +0 -0
  144. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/remote_manager.py +0 -0
  145. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/capabilities/request/__init__.py +0 -0
  146. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/infrastructure/__init__.py +0 -0
  147. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/infrastructure/startup_hooks.py +0 -0
  148. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/infrastructure/system_checks.py +0 -0
  149. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/__init__.py +0 -0
  150. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/calculation.py +0 -0
  151. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/database.py +0 -0
  152. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/existing_model.py +0 -0
  153. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/read_only.py +0 -0
  154. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/remote_manager.py +0 -0
  155. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/interfaces/request.py +0 -0
  156. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/manifests/__init__.py +0 -0
  157. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/manifests/capability_builder.py +0 -0
  158. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/manifests/capability_manifest.py +0 -0
  159. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/manifests/capability_models.py +0 -0
  160. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/orm_interface.py +0 -0
  161. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/requests.py +0 -0
  162. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/utils/__init__.py +0 -0
  163. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/utils/database_interface_protocols.py +0 -0
  164. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/utils/errors.py +0 -0
  165. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/interface/utils/models.py +0 -0
  166. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/logging.py +0 -0
  167. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/chat_cleanup.py +0 -0
  168. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/graphql_warmup.py +0 -0
  169. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/graphql_warmup_refresh_due.py +0 -0
  170. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/search_index.py +0 -0
  171. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/search_reconcile.py +0 -0
  172. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/seed_manager_landscape.py +0 -0
  173. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/shell.py +0 -0
  174. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/workflow_drain_outbox.py +0 -0
  175. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/management/commands/workflow_replay_dead_letters.py +0 -0
  176. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/manager/__init__.py +0 -0
  177. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/manager/general_manager.py +0 -0
  178. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/manager/group_manager.py +0 -0
  179. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/manager/input.py +0 -0
  180. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/manager/meta.py +0 -0
  181. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/measurement/__init__.py +0 -0
  182. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/measurement/measurement.py +0 -0
  183. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/measurement/measurement_field.py +0 -0
  184. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/metrics/__init__.py +0 -0
  185. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/metrics/graphql.py +0 -0
  186. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0001_initial.py +0 -0
  187. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0002_workflow_outbox_scaling_indexes.py +0 -0
  188. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0003_workflow_execution_correlation_constraint.py +0 -0
  189. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0004_chat_persistence_models.py +0 -0
  190. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0004_search_index_state.py +0 -0
  191. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0005_merge_chat_search.py +0 -0
  192. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/0006_chat_pending_confirmation_scoped_ids.py +0 -0
  193. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/migrations/__init__.py +0 -0
  194. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/models.py +0 -0
  195. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/__init__.py +0 -0
  196. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/audit.py +0 -0
  197. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/base_permission.py +0 -0
  198. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/graphql_capabilities.py +0 -0
  199. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/manager_based_permission.py +0 -0
  200. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/mutation_permission.py +0 -0
  201. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/permission_checks.py +0 -0
  202. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/permission_data_manager.py +0 -0
  203. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/permission/utils.py +0 -0
  204. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/public_api_registry.py +0 -0
  205. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/py.typed +0 -0
  206. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/rule/__init__.py +0 -0
  207. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/rule/handler.py +0 -0
  208. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/rule/rule.py +0 -0
  209. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/__init__.py +0 -0
  210. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/async_tasks.py +0 -0
  211. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backend.py +0 -0
  212. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backend_registry.py +0 -0
  213. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backends/__init__.py +0 -0
  214. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backends/dev.py +0 -0
  215. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backends/meilisearch.py +0 -0
  216. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backends/opensearch.py +0 -0
  217. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/backends/typesense.py +0 -0
  218. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/config.py +0 -0
  219. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/indexer.py +0 -0
  220. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/models.py +0 -0
  221. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/reconciliation.py +0 -0
  222. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/registry.py +0 -0
  223. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/tasks.py +0 -0
  224. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/search/utils.py +0 -0
  225. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/seeding/__init__.py +0 -0
  226. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/seeding/manager_landscape.py +0 -0
  227. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/__init__.py +0 -0
  228. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/args_to_kwargs.py +0 -0
  229. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/filter_parser.py +0 -0
  230. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/format_string.py +0 -0
  231. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/json_encoder.py +0 -0
  232. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/make_cache_key.py +0 -0
  233. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/none_to_zero.py +0 -0
  234. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/path_mapping.py +0 -0
  235. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/public_api.py +0 -0
  236. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/testing.py +0 -0
  237. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/utils/type_checks.py +0 -0
  238. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/__init__.py +0 -0
  239. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/actions.py +0 -0
  240. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/backend_registry.py +0 -0
  241. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/backends/__init__.py +0 -0
  242. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/backends/celery.py +0 -0
  243. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/backends/local.py +0 -0
  244. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/backends/n8n.py +0 -0
  245. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/config.py +0 -0
  246. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/engine.py +0 -0
  247. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/event_registry.py +0 -0
  248. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/events.py +0 -0
  249. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/models.py +0 -0
  250. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/signal_bridge.py +0 -0
  251. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/tasks.py +0 -0
  252. {generalmanager-0.57.1 → generalmanager-0.57.3}/src/general_manager/workflow/telemetry.py +0 -0
  253. {generalmanager-0.57.1 → generalmanager-0.57.3}/tests/test_settings.py +0 -0
  254. {generalmanager-0.57.1 → generalmanager-0.57.3}/tests/test_urls.py +0 -0
  255. {generalmanager-0.57.1 → generalmanager-0.57.3}/tests/testing_asgi.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GeneralManager
3
- Version: 0.57.1
3
+ Version: 0.57.3
4
4
  Summary: Modular Django-based data management framework with ORM, GraphQL, fine-grained permissions, rule validation, calculations and caching.
5
5
  Author-email: Tim Kleindick <tkleindick@yahoo.de>
6
6
  License: MIT License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "GeneralManager"
7
- version = "0.57.1"
7
+ version = "0.57.3"
8
8
  description = "Modular Django-based data management framework with ORM, GraphQL, fine-grained permissions, rule validation, calculations and caching."
9
9
  readme = "README.md"
10
10
  authors = [{ name = "Tim Kleindick", email = "tkleindick@yahoo.de" }]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GeneralManager
3
- Version: 0.57.1
3
+ Version: 0.57.3
4
4
  Summary: Modular Django-based data management framework with ORM, GraphQL, fine-grained permissions, rule validation, calculations and caching.
5
5
  Author-email: Tim Kleindick <tkleindick@yahoo.de>
6
6
  License: MIT License
@@ -69,6 +69,31 @@ GrapheneReadMapper = Callable[
69
69
  SearchResolverPayload = dict[str, object]
70
70
  SearchHitEntry = tuple[float | None, SearchHit, GeneralManager]
71
71
  SortableValue = float | datetime | str | None
72
+ _BAD_USER_INPUT_CODE = "BAD_USER_INPUT"
73
+ _PAGE_MUST_BE_POSITIVE = "page must be a positive integer."
74
+ _PAGE_SIZE_MUST_BE_POSITIVE = "pageSize must be a positive integer."
75
+
76
+
77
+ def _resolve_search_pagination(
78
+ page: int | None,
79
+ page_size: int | None,
80
+ ) -> tuple[int, int]:
81
+ """
82
+ Resolve omitted search pagination arguments and reject non-positive values.
83
+ """
84
+ current_page = 1 if page is None else page
85
+ limit = 10 if page_size is None else page_size
86
+ if current_page <= 0:
87
+ raise GraphQLError(
88
+ _PAGE_MUST_BE_POSITIVE,
89
+ extensions={"code": _BAD_USER_INPUT_CODE},
90
+ )
91
+ if limit <= 0:
92
+ raise GraphQLError(
93
+ _PAGE_SIZE_MUST_BE_POSITIVE,
94
+ extensions={"code": _BAD_USER_INPUT_CODE},
95
+ )
96
+ return current_page, limit
72
97
 
73
98
 
74
99
  # ---------------------------------------------------------------------------
@@ -803,15 +828,14 @@ def register_search_query(
803
828
  The resolver parses user filters, validates configured filter keys,
804
829
  searches each selected manager type, instantiates manager objects from
805
830
  hit identification, applies read permission filters/instance checks, and
806
- returns paginated authorized manager instances. ``page`` and
807
- ``page_size`` values that are ``None`` or falsey fall back to ``1`` and
808
- ``10`` respectively. Backend raw payloads are collected once per backend
809
- request in the ``raw`` list.
831
+ returns paginated authorized manager instances. Omitted ``page`` and
832
+ ``page_size`` values default to ``1`` and ``10`` respectively. Supplied
833
+ non-positive values raise a ``GraphQLError``. Backend raw payloads are
834
+ collected once per backend request in the ``raw`` list.
810
835
  """
811
836
  index_name = index or "global"
812
- limit = page_size or 10
813
- current_page = page or 1
814
- offset = max(current_page - 1, 0) * limit
837
+ current_page, limit = _resolve_search_pagination(page, page_size)
838
+ offset = (current_page - 1) * limit
815
839
  parsed_filters = parse_search_filters(filters)
816
840
  if parsed_filters:
817
841
  try:
@@ -105,12 +105,12 @@ class AutoFactory(DjangoModelFactory[modelsModel]):
105
105
 
106
106
  The factory inspects the bound ORM interface, fills missing model fields with
107
107
  generated values or declared defaults, applies many-to-many relations after
108
- model construction, and wraps created objects back into GeneralManager
109
- instances. Build strategy returns Django model instances; create strategy
110
- returns manager wrappers. Subclasses are generated with an ORM interface that
111
- provides ``handle_custom_fields()``, ``input_fields``,
112
- ``format_identification()``, and ``_parent_class`` for created-object
113
- wrapping.
108
+ saved creation, and wraps created objects back into GeneralManager instances.
109
+ Build strategy returns unsaved Django model instances and skips
110
+ many-to-many assignment; create strategy returns manager wrappers.
111
+ Subclasses are generated with an ORM interface that provides
112
+ ``handle_custom_fields()``, ``input_fields``, ``format_identification()``,
113
+ and ``_parent_class`` for created-object wrapping.
114
114
  """
115
115
 
116
116
  interface: type[OrmInterfaceBase[models.Model]]
@@ -127,14 +127,11 @@ class AutoFactory(DjangoModelFactory[modelsModel]):
127
127
  caller-supplied values already present in `params` win. factory_boy then
128
128
  dispatches to `_build()` or `_create()`, where many-to-many values are
129
129
  stripped from constructor kwargs and foreign-key/one-to-one values are
130
- coerced before `_adjustmentMethod` is called. After model construction,
131
- this hook applies many-to-many assignments from the original `params`
132
- and wraps created models into manager instances for create strategy.
133
-
134
- Many-to-many assignment is attempted for both build and create strategy.
135
- Django requires saved instances for many-to-many `.set(...)`; therefore
136
- build calls with explicit or generated many-to-many values are
137
- unsupported and may raise Django's unsaved-instance relation error.
130
+ coerced before `_adjustmentMethod` is called. Create strategy then
131
+ applies many-to-many assignments from the original `params` to saved
132
+ models and wraps them into manager instances. Build strategy returns the
133
+ unsaved model instance(s) without attempting many-to-many assignment,
134
+ even when explicit or declared many-to-many values were supplied.
138
135
 
139
136
  Parameters:
140
137
  strategy (Literal["build", "create"]): "build" returns unsaved model instance(s); "create" saves model instance(s) and returns GeneralManager wrapper(s).
@@ -202,8 +199,10 @@ class AutoFactory(DjangoModelFactory[modelsModel]):
202
199
  for item in obj:
203
200
  if not isinstance(item, models.Model):
204
201
  raise InvalidGeneratedObjectError()
205
- cls._handle_many_to_many_fields_after_creation(item, params)
206
- else:
202
+ if strategy == "create":
203
+ for item in obj:
204
+ cls._handle_many_to_many_fields_after_creation(item, params)
205
+ elif strategy == "create":
207
206
  cls._handle_many_to_many_fields_after_creation(obj, params)
208
207
  if strategy == "create":
209
208
  return cls._wrap_generated_objects(obj)
@@ -214,7 +213,11 @@ class AutoFactory(DjangoModelFactory[modelsModel]):
214
213
  cls, obj: models.Model, attrs: FactoryParams
215
214
  ) -> None:
216
215
  """
217
- Assign related objects to many-to-many fields after creation/building.
216
+ Assign related objects to many-to-many fields after saved creation.
217
+
218
+ Build strategy returns unsaved models and must skip this method because
219
+ Django many-to-many managers require the source instance to have a
220
+ primary key before `.set(...)` can be used.
218
221
 
219
222
  Parameters:
220
223
  obj (models.Model): Instance whose many-to-many relations should be populated.
File without changes