GeneralManager 0.86.14__tar.gz → 0.87.1__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 (388) hide show
  1. {generalmanager-0.86.14/src/GeneralManager.egg-info → generalmanager-0.87.1}/PKG-INFO +2 -2
  2. {generalmanager-0.86.14 → generalmanager-0.87.1}/pyproject.toml +2 -2
  3. {generalmanager-0.86.14 → generalmanager-0.87.1/src/GeneralManager.egg-info}/PKG-INFO +2 -2
  4. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/GeneralManager.egg-info/SOURCES.txt +30 -1
  5. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/GeneralManager.egg-info/requires.txt +1 -1
  6. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql.py +42 -15
  7. generalmanager-0.87.1/src/general_manager/api/graphql_filter_contract.py +682 -0
  8. generalmanager-0.87.1/src/general_manager/api/graphql_query_permissions.py +168 -0
  9. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_resolvers.py +428 -47
  10. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_search.py +331 -60
  11. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_subscription_consumer.py +63 -3
  12. generalmanager-0.87.1/src/general_manager/api/graphql_units.py +87 -0
  13. generalmanager-0.87.1/src/general_manager/api/graphql_value_contract.py +238 -0
  14. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bootstrap.py +8 -0
  15. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/audit.py +44 -18
  16. generalmanager-0.87.1/src/general_manager/chat/audit_identity.py +10 -0
  17. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/consumer.py +72 -55
  18. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/context.py +26 -15
  19. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/__main__.py +9 -10
  20. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/baseline.py +61 -2
  21. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/edge_cases.yaml +1 -2
  22. generalmanager-0.87.1/src/general_manager/chat/evals/datasets/follow_ups.yaml +180 -0
  23. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/large_schema.yaml +1 -1
  24. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/multi_hop.yaml +9 -6
  25. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/planned_orchestration.yaml +25 -37
  26. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/diagnostics.py +80 -4
  27. generalmanager-0.87.1/src/general_manager/chat/evals/execution.py +157 -0
  28. generalmanager-0.87.1/src/general_manager/chat/evals/fingerprints.py +133 -0
  29. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/fixtures.py +101 -38
  30. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/judges/answer_quality.py +9 -4
  31. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/judges/contract.py +179 -0
  32. generalmanager-0.87.1/src/general_manager/chat/evals/judges/result_set.py +107 -0
  33. generalmanager-0.87.1/src/general_manager/chat/evals/outcomes.py +127 -0
  34. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/readiness.py +43 -6
  35. generalmanager-0.87.1/src/general_manager/chat/evals/runner.py +1380 -0
  36. generalmanager-0.87.1/src/general_manager/chat/graphql_contract.py +1069 -0
  37. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/models.py +25 -1
  38. generalmanager-0.87.1/src/general_manager/chat/mutation_inputs.py +60 -0
  39. generalmanager-0.87.1/src/general_manager/chat/planned/action_contract.py +268 -0
  40. generalmanager-0.87.1/src/general_manager/chat/planned/binding_diagnostics.py +121 -0
  41. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/budget.py +32 -14
  42. generalmanager-0.87.1/src/general_manager/chat/planned/calculation_scope.py +424 -0
  43. generalmanager-0.87.1/src/general_manager/chat/planned/calculations.py +483 -0
  44. generalmanager-0.87.1/src/general_manager/chat/planned/category_binding.py +588 -0
  45. generalmanager-0.87.1/src/general_manager/chat/planned/choice_context.py +586 -0
  46. generalmanager-0.87.1/src/general_manager/chat/planned/clarification.py +87 -0
  47. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/config.py +27 -16
  48. generalmanager-0.87.1/src/general_manager/chat/planned/contract.py +523 -0
  49. generalmanager-0.87.1/src/general_manager/chat/planned/conversion.py +384 -0
  50. generalmanager-0.87.1/src/general_manager/chat/planned/cross_query.py +576 -0
  51. generalmanager-0.87.1/src/general_manager/chat/planned/deferred_calculations.py +69 -0
  52. generalmanager-0.87.1/src/general_manager/chat/planned/deferred_schema.py +54 -0
  53. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/events.py +8 -1
  54. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/evidence.py +152 -3
  55. generalmanager-0.87.1/src/general_manager/chat/planned/evidence_selection.py +140 -0
  56. generalmanager-0.87.1/src/general_manager/chat/planned/group_actions.py +118 -0
  57. generalmanager-0.87.1/src/general_manager/chat/planned/models.py +464 -0
  58. generalmanager-0.87.1/src/general_manager/chat/planned/planner.py +587 -0
  59. generalmanager-0.87.1/src/general_manager/chat/planned/planner_context.py +149 -0
  60. generalmanager-0.87.1/src/general_manager/chat/planned/provider_calls.py +271 -0
  61. generalmanager-0.87.1/src/general_manager/chat/planned/scheduler.py +3047 -0
  62. generalmanager-0.87.1/src/general_manager/chat/planned/schema_projection.py +1782 -0
  63. generalmanager-0.87.1/src/general_manager/chat/planned/selector_clarification.py +150 -0
  64. generalmanager-0.87.1/src/general_manager/chat/planned/selector_question.py +177 -0
  65. generalmanager-0.87.1/src/general_manager/chat/planned/synthesis.py +761 -0
  66. generalmanager-0.87.1/src/general_manager/chat/planned/validation.py +730 -0
  67. generalmanager-0.87.1/src/general_manager/chat/providers/_shared.py +168 -0
  68. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/providers/anthropic.py +102 -55
  69. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/providers/base.py +32 -1
  70. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/providers/google.py +52 -24
  71. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/providers/ollama.py +19 -12
  72. generalmanager-0.87.1/src/general_manager/chat/providers/openai.py +273 -0
  73. generalmanager-0.87.1/src/general_manager/chat/schema_index.py +162 -0
  74. generalmanager-0.87.1/src/general_manager/chat/schema_inspection.py +170 -0
  75. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/settings.py +8 -9
  76. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/signals.py +16 -0
  77. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/system_prompt.py +27 -22
  78. generalmanager-0.87.1/src/general_manager/chat/tool_metadata.py +291 -0
  79. generalmanager-0.87.1/src/general_manager/chat/tools.py +816 -0
  80. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/views.py +39 -62
  81. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/base_interface.py +52 -0
  82. generalmanager-0.87.1/src/general_manager/interface/unit_contract.py +175 -0
  83. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/general_manager.py +15 -0
  84. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/input.py +8 -0
  85. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/meta.py +85 -3
  86. generalmanager-0.87.1/src/general_manager/utils/executable_contract.py +130 -0
  87. generalmanager-0.86.14/src/general_manager/chat/evals/datasets/follow_ups.yaml +0 -95
  88. generalmanager-0.86.14/src/general_manager/chat/evals/fingerprints.py +0 -45
  89. generalmanager-0.86.14/src/general_manager/chat/evals/runner.py +0 -3502
  90. generalmanager-0.86.14/src/general_manager/chat/planned/calculations.py +0 -234
  91. generalmanager-0.86.14/src/general_manager/chat/planned/models.py +0 -79
  92. generalmanager-0.86.14/src/general_manager/chat/planned/planner.py +0 -393
  93. generalmanager-0.86.14/src/general_manager/chat/planned/provider_calls.py +0 -130
  94. generalmanager-0.86.14/src/general_manager/chat/planned/routing.py +0 -57
  95. generalmanager-0.86.14/src/general_manager/chat/planned/scheduler.py +0 -1361
  96. generalmanager-0.86.14/src/general_manager/chat/planned/synthesis.py +0 -296
  97. generalmanager-0.86.14/src/general_manager/chat/planned/validation.py +0 -455
  98. generalmanager-0.86.14/src/general_manager/chat/providers/_shared.py +0 -82
  99. generalmanager-0.86.14/src/general_manager/chat/providers/openai.py +0 -194
  100. generalmanager-0.86.14/src/general_manager/chat/schema_index.py +0 -275
  101. generalmanager-0.86.14/src/general_manager/chat/tool_metadata.py +0 -180
  102. generalmanager-0.86.14/src/general_manager/chat/tools.py +0 -702
  103. {generalmanager-0.86.14 → generalmanager-0.87.1}/LICENSE +0 -0
  104. {generalmanager-0.86.14 → generalmanager-0.87.1}/README.md +0 -0
  105. {generalmanager-0.86.14 → generalmanager-0.87.1}/setup.cfg +0 -0
  106. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/GeneralManager.egg-info/dependency_links.txt +0 -0
  107. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/GeneralManager.egg-info/top_level.txt +0 -0
  108. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/__init__.py +0 -0
  109. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/__init__.py +0 -0
  110. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/api.py +0 -0
  111. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/bucket.py +0 -0
  112. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/cache.py +0 -0
  113. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/dataframes.py +0 -0
  114. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/factory.py +0 -0
  115. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/general_manager.py +0 -0
  116. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/interface.py +0 -0
  117. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/manager.py +0 -0
  118. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/measurement.py +0 -0
  119. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/permission.py +0 -0
  120. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/rule.py +0 -0
  121. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/search.py +0 -0
  122. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/_types/utils.py +0 -0
  123. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/__init__.py +0 -0
  124. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_as_of.py +0 -0
  125. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_errors.py +0 -0
  126. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_groups.py +0 -0
  127. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_identifiers.py +0 -0
  128. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_mutations.py +0 -0
  129. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_ordering.py +0 -0
  130. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_output.py +0 -0
  131. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_prefetch.py +0 -0
  132. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_relations.py +0 -0
  133. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_subscriptions.py +0 -0
  134. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_type.py +0 -0
  135. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_view.py +0 -0
  136. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_warmup.py +0 -0
  137. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_warmup_registry.py +0 -0
  138. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/graphql_warmup_tasks.py +0 -0
  139. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/mutation.py +0 -0
  140. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/mutation_controls.py +0 -0
  141. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/notification_batching.py +0 -0
  142. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/property.py +0 -0
  143. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/registry.py +0 -0
  144. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/remote_api.py +0 -0
  145. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/remote_invalidation.py +0 -0
  146. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/api/remote_invalidation_client.py +0 -0
  147. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/apps.py +0 -0
  148. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/as_of.py +0 -0
  149. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/__init__.py +0 -0
  150. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/_materialized_bucket.py +0 -0
  151. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/_ordering.py +0 -0
  152. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/base_bucket.py +0 -0
  153. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/calculation_bucket.py +0 -0
  154. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/database_bucket.py +0 -0
  155. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/excel_bucket.py +0 -0
  156. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/group_bucket.py +0 -0
  157. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/indexing.py +0 -0
  158. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/projection.py +0 -0
  159. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/bucket/request_bucket.py +0 -0
  160. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/__init__.py +0 -0
  161. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/_dependency_graph.py +0 -0
  162. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/batch_refresh.py +0 -0
  163. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/cache_decorator.py +0 -0
  164. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/cache_tracker.py +0 -0
  165. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/data_change_context.py +0 -0
  166. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/dependency_cache.py +0 -0
  167. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/dependency_index.py +0 -0
  168. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/dependency_matching.py +0 -0
  169. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/dependency_publish.py +0 -0
  170. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/dependency_shards.py +0 -0
  171. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/model_dependency_collector.py +0 -0
  172. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/run_context.py +0 -0
  173. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/run_context_lru.py +0 -0
  174. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/signals.py +0 -0
  175. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/cache/transaction_barrier.py +0 -0
  176. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/__init__.py +0 -0
  177. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/bootstrap.py +0 -0
  178. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/checks.py +0 -0
  179. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/errors.py +0 -0
  180. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/__init__.py +0 -0
  181. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/basic_queries.yaml +0 -0
  182. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/datasets/demo_readiness.yaml +0 -0
  183. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/judges/__init__.py +0 -0
  184. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/judges/result_accuracy.py +0 -0
  185. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/judges/tool_sequence.py +0 -0
  186. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/evals/traces.py +0 -0
  187. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/grounding.py +0 -0
  188. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/__init__.py +0 -0
  189. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/catalog.py +0 -0
  190. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/planned/resolver.py +0 -0
  191. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/providers/__init__.py +0 -0
  192. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/rate_limits.py +0 -0
  193. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/routing.py +0 -0
  194. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/chat/turns.py +0 -0
  195. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/conf.py +0 -0
  196. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/dataframes/__init__.py +0 -0
  197. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/dataframes/measurements.py +0 -0
  198. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/factory/__init__.py +0 -0
  199. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/factory/auto_factory.py +0 -0
  200. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/factory/factories.py +0 -0
  201. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/factory/factory_methods.py +0 -0
  202. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/__init__.py +0 -0
  203. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/__init__.py +0 -0
  204. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/calculation.py +0 -0
  205. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/database.py +0 -0
  206. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/excel.py +0 -0
  207. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/remote_manager.py +0 -0
  208. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/bundles/request.py +0 -0
  209. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/__init__.py +0 -0
  210. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/base.py +0 -0
  211. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/builtin.py +0 -0
  212. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/calculation/__init__.py +0 -0
  213. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/calculation/_compat.py +0 -0
  214. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/calculation/input_resolution.py +0 -0
  215. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/calculation/lifecycle.py +0 -0
  216. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/configuration.py +0 -0
  217. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/core/observability.py +0 -0
  218. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/core/utils.py +0 -0
  219. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/excel/__init__.py +0 -0
  220. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/exceptions.py +0 -0
  221. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/existing_model/__init__.py +0 -0
  222. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/existing_model/_compat.py +0 -0
  223. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/existing_model/resolution.py +0 -0
  224. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/factory.py +0 -0
  225. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/__init__.py +0 -0
  226. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/_compat.py +0 -0
  227. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/bulk.py +0 -0
  228. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/create_many.py +0 -0
  229. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/history.py +0 -0
  230. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/lifecycle.py +0 -0
  231. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/mutations.py +0 -0
  232. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm/support.py +0 -0
  233. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm_utils/__init__.py +0 -0
  234. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm_utils/django_manager_utils.py +0 -0
  235. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm_utils/field_descriptors.py +0 -0
  236. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm_utils/payload_normalizer.py +0 -0
  237. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/orm_utils/update_state.py +0 -0
  238. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/read_only/__init__.py +0 -0
  239. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/read_only/_compat.py +0 -0
  240. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/read_only/_types.py +0 -0
  241. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/read_only/lifecycle.py +0 -0
  242. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/read_only/management.py +0 -0
  243. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/registry.py +0 -0
  244. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/remote_manager.py +0 -0
  245. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/capabilities/request/__init__.py +0 -0
  246. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/excel.py +0 -0
  247. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/excel_store.py +0 -0
  248. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/excel_workbook.py +0 -0
  249. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/infrastructure/__init__.py +0 -0
  250. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/infrastructure/startup_hooks.py +0 -0
  251. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/infrastructure/system_checks.py +0 -0
  252. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/__init__.py +0 -0
  253. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/calculation.py +0 -0
  254. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/database.py +0 -0
  255. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/excel.py +0 -0
  256. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/existing_model.py +0 -0
  257. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/read_only.py +0 -0
  258. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/remote_manager.py +0 -0
  259. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/interfaces/request.py +0 -0
  260. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/manifests/__init__.py +0 -0
  261. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/manifests/capability_builder.py +0 -0
  262. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/manifests/capability_manifest.py +0 -0
  263. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/manifests/capability_models.py +0 -0
  264. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/orm_interface.py +0 -0
  265. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/requests.py +0 -0
  266. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/utils/__init__.py +0 -0
  267. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/utils/database_interface_protocols.py +0 -0
  268. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/utils/errors.py +0 -0
  269. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/utils/history.py +0 -0
  270. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/interface/utils/models.py +0 -0
  271. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/logging.py +0 -0
  272. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/chat_cleanup.py +0 -0
  273. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/cleanup_upload_intents.py +0 -0
  274. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/graphql_warmup.py +0 -0
  275. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/graphql_warmup_refresh_due.py +0 -0
  276. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/search_index.py +0 -0
  277. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/search_reconcile.py +0 -0
  278. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/seed_manager_landscape.py +0 -0
  279. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/shell.py +0 -0
  280. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/sync_read_only.py +0 -0
  281. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/workflow_drain_outbox.py +0 -0
  282. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/management/commands/workflow_replay_dead_letters.py +0 -0
  283. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/__init__.py +0 -0
  284. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/bulk_create.py +0 -0
  285. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/manager/group_manager.py +0 -0
  286. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/measurement/__init__.py +0 -0
  287. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/measurement/measurement.py +0 -0
  288. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/measurement/measurement_field.py +0 -0
  289. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/metrics/__init__.py +0 -0
  290. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/metrics/graphql.py +0 -0
  291. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0001_initial.py +0 -0
  292. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0002_workflow_outbox_scaling_indexes.py +0 -0
  293. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0003_workflow_execution_correlation_constraint.py +0 -0
  294. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0004_chat_persistence_models.py +0 -0
  295. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0004_search_index_state.py +0 -0
  296. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0005_merge_chat_search.py +0 -0
  297. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0006_chat_pending_confirmation_scoped_ids.py +0 -0
  298. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0007_upload_intent.py +0 -0
  299. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0008_upload_finalization_versions.py +0 -0
  300. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0009_upload_cleanup_state.py +0 -0
  301. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0010_chat_pending_confirmation_portable_uniqueness.py +0 -0
  302. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0011_search_index_state_dirty_generation.py +0 -0
  303. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/0012_chat_context_watermarks.py +0 -0
  304. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/migrations/__init__.py +0 -0
  305. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/models.py +0 -0
  306. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/__init__.py +0 -0
  307. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/audit.py +0 -0
  308. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/base_permission.py +0 -0
  309. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/graphql_capabilities.py +0 -0
  310. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/manager_based_permission.py +0 -0
  311. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/mutation_permission.py +0 -0
  312. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/permission_checks.py +0 -0
  313. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/permission_data_manager.py +0 -0
  314. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/permission/utils.py +0 -0
  315. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/public_api_registry.py +0 -0
  316. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/py.typed +0 -0
  317. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/rule/__init__.py +0 -0
  318. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/rule/handler.py +0 -0
  319. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/rule/rule.py +0 -0
  320. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/__init__.py +0 -0
  321. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/async_tasks.py +0 -0
  322. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backend.py +0 -0
  323. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backend_registry.py +0 -0
  324. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backends/__init__.py +0 -0
  325. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backends/dev.py +0 -0
  326. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backends/meilisearch.py +0 -0
  327. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backends/opensearch.py +0 -0
  328. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/backends/typesense.py +0 -0
  329. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/checks.py +0 -0
  330. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/config.py +0 -0
  331. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/identity.py +0 -0
  332. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/indexer.py +0 -0
  333. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/invalidation.py +0 -0
  334. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/m2m_invalidation.py +0 -0
  335. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/models.py +0 -0
  336. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/reconciliation.py +0 -0
  337. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/registry.py +0 -0
  338. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/tasks.py +0 -0
  339. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/search/utils.py +0 -0
  340. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/seeding/__init__.py +0 -0
  341. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/seeding/manager_landscape.py +0 -0
  342. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/__init__.py +0 -0
  343. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/adapters.py +0 -0
  344. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/checks.py +0 -0
  345. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/config.py +0 -0
  346. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/errors.py +0 -0
  347. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/finalization.py +0 -0
  348. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/graphql.py +0 -0
  349. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/graphql_types.py +0 -0
  350. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/metrics.py +0 -0
  351. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/models.py +0 -0
  352. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/public.py +0 -0
  353. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/s3.py +0 -0
  354. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/services.py +0 -0
  355. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/tokens.py +0 -0
  356. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/types.py +0 -0
  357. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/urls.py +0 -0
  358. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/uploads/views.py +0 -0
  359. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/__init__.py +0 -0
  360. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/_args_to_kwargs.py +0 -0
  361. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/_cache_key_encoder.py +0 -0
  362. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/_make_cache_key.py +0 -0
  363. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/_none_to_zero.py +0 -0
  364. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/filter_parser.py +0 -0
  365. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/format_string.py +0 -0
  366. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/json_encoder.py +0 -0
  367. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/path_mapping.py +0 -0
  368. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/public_api.py +0 -0
  369. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/testing.py +0 -0
  370. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/utils/type_checks.py +0 -0
  371. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/__init__.py +0 -0
  372. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/actions.py +0 -0
  373. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/backend_registry.py +0 -0
  374. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/backends/__init__.py +0 -0
  375. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/backends/celery.py +0 -0
  376. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/backends/local.py +0 -0
  377. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/backends/n8n.py +0 -0
  378. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/config.py +0 -0
  379. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/engine.py +0 -0
  380. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/event_registry.py +0 -0
  381. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/events.py +0 -0
  382. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/models.py +0 -0
  383. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/signal_bridge.py +0 -0
  384. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/tasks.py +0 -0
  385. {generalmanager-0.86.14 → generalmanager-0.87.1}/src/general_manager/workflow/telemetry.py +0 -0
  386. {generalmanager-0.86.14 → generalmanager-0.87.1}/tests/test_settings.py +0 -0
  387. {generalmanager-0.86.14 → generalmanager-0.87.1}/tests/test_urls.py +0 -0
  388. {generalmanager-0.86.14 → generalmanager-0.87.1}/tests/testing_asgi.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GeneralManager
3
- Version: 0.86.14
3
+ Version: 0.87.1
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
@@ -58,7 +58,7 @@ Requires-Dist: gitdb>=4.0.12
58
58
  Requires-Dist: GitPython>=3.1.58
59
59
  Requires-Dist: graphene>=3.4.3
60
60
  Requires-Dist: graphene-django>=3.2.3
61
- Requires-Dist: graphql-core>=3.2.6
61
+ Requires-Dist: graphql-core>=3.2.13
62
62
  Requires-Dist: graphql-relay>=3.2.0
63
63
  Requires-Dist: numpy>=2.2.5
64
64
  Requires-Dist: openpyxl<3.2.0,>=3.1.5
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "GeneralManager"
7
- version = "0.86.14"
7
+ version = "0.87.1"
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" }]
@@ -46,7 +46,7 @@ dependencies = [
46
46
  "GitPython>=3.1.58",
47
47
  "graphene>=3.4.3",
48
48
  "graphene-django>=3.2.3",
49
- "graphql-core>=3.2.6",
49
+ "graphql-core>=3.2.13",
50
50
  "graphql-relay>=3.2.0",
51
51
  "numpy>=2.2.5",
52
52
  "openpyxl>=3.1.5,<3.2.0", # Excel workbook IO
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GeneralManager
3
- Version: 0.86.14
3
+ Version: 0.87.1
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
@@ -58,7 +58,7 @@ Requires-Dist: gitdb>=4.0.12
58
58
  Requires-Dist: GitPython>=3.1.58
59
59
  Requires-Dist: graphene>=3.4.3
60
60
  Requires-Dist: graphene-django>=3.2.3
61
- Requires-Dist: graphql-core>=3.2.6
61
+ Requires-Dist: graphql-core>=3.2.13
62
62
  Requires-Dist: graphql-relay>=3.2.0
63
63
  Requires-Dist: numpy>=2.2.5
64
64
  Requires-Dist: openpyxl<3.2.0,>=3.1.5
@@ -33,18 +33,22 @@ src/general_manager/api/__init__.py
33
33
  src/general_manager/api/graphql.py
34
34
  src/general_manager/api/graphql_as_of.py
35
35
  src/general_manager/api/graphql_errors.py
36
+ src/general_manager/api/graphql_filter_contract.py
36
37
  src/general_manager/api/graphql_groups.py
37
38
  src/general_manager/api/graphql_identifiers.py
38
39
  src/general_manager/api/graphql_mutations.py
39
40
  src/general_manager/api/graphql_ordering.py
40
41
  src/general_manager/api/graphql_output.py
41
42
  src/general_manager/api/graphql_prefetch.py
43
+ src/general_manager/api/graphql_query_permissions.py
42
44
  src/general_manager/api/graphql_relations.py
43
45
  src/general_manager/api/graphql_resolvers.py
44
46
  src/general_manager/api/graphql_search.py
45
47
  src/general_manager/api/graphql_subscription_consumer.py
46
48
  src/general_manager/api/graphql_subscriptions.py
47
49
  src/general_manager/api/graphql_type.py
50
+ src/general_manager/api/graphql_units.py
51
+ src/general_manager/api/graphql_value_contract.py
48
52
  src/general_manager/api/graphql_view.py
49
53
  src/general_manager/api/graphql_warmup.py
50
54
  src/general_manager/api/graphql_warmup_registry.py
@@ -86,16 +90,20 @@ src/general_manager/cache/signals.py
86
90
  src/general_manager/cache/transaction_barrier.py
87
91
  src/general_manager/chat/__init__.py
88
92
  src/general_manager/chat/audit.py
93
+ src/general_manager/chat/audit_identity.py
89
94
  src/general_manager/chat/bootstrap.py
90
95
  src/general_manager/chat/checks.py
91
96
  src/general_manager/chat/consumer.py
92
97
  src/general_manager/chat/context.py
93
98
  src/general_manager/chat/errors.py
99
+ src/general_manager/chat/graphql_contract.py
94
100
  src/general_manager/chat/grounding.py
95
101
  src/general_manager/chat/models.py
102
+ src/general_manager/chat/mutation_inputs.py
96
103
  src/general_manager/chat/rate_limits.py
97
104
  src/general_manager/chat/routing.py
98
105
  src/general_manager/chat/schema_index.py
106
+ src/general_manager/chat/schema_inspection.py
99
107
  src/general_manager/chat/settings.py
100
108
  src/general_manager/chat/signals.py
101
109
  src/general_manager/chat/system_prompt.py
@@ -107,8 +115,10 @@ src/general_manager/chat/evals/__init__.py
107
115
  src/general_manager/chat/evals/__main__.py
108
116
  src/general_manager/chat/evals/baseline.py
109
117
  src/general_manager/chat/evals/diagnostics.py
118
+ src/general_manager/chat/evals/execution.py
110
119
  src/general_manager/chat/evals/fingerprints.py
111
120
  src/general_manager/chat/evals/fixtures.py
121
+ src/general_manager/chat/evals/outcomes.py
112
122
  src/general_manager/chat/evals/readiness.py
113
123
  src/general_manager/chat/evals/runner.py
114
124
  src/general_manager/chat/evals/traces.py
@@ -123,20 +133,37 @@ src/general_manager/chat/evals/judges/__init__.py
123
133
  src/general_manager/chat/evals/judges/answer_quality.py
124
134
  src/general_manager/chat/evals/judges/contract.py
125
135
  src/general_manager/chat/evals/judges/result_accuracy.py
136
+ src/general_manager/chat/evals/judges/result_set.py
126
137
  src/general_manager/chat/evals/judges/tool_sequence.py
127
138
  src/general_manager/chat/planned/__init__.py
139
+ src/general_manager/chat/planned/action_contract.py
140
+ src/general_manager/chat/planned/binding_diagnostics.py
128
141
  src/general_manager/chat/planned/budget.py
142
+ src/general_manager/chat/planned/calculation_scope.py
129
143
  src/general_manager/chat/planned/calculations.py
130
144
  src/general_manager/chat/planned/catalog.py
145
+ src/general_manager/chat/planned/category_binding.py
146
+ src/general_manager/chat/planned/choice_context.py
147
+ src/general_manager/chat/planned/clarification.py
131
148
  src/general_manager/chat/planned/config.py
149
+ src/general_manager/chat/planned/contract.py
150
+ src/general_manager/chat/planned/conversion.py
151
+ src/general_manager/chat/planned/cross_query.py
152
+ src/general_manager/chat/planned/deferred_calculations.py
153
+ src/general_manager/chat/planned/deferred_schema.py
132
154
  src/general_manager/chat/planned/events.py
133
155
  src/general_manager/chat/planned/evidence.py
156
+ src/general_manager/chat/planned/evidence_selection.py
157
+ src/general_manager/chat/planned/group_actions.py
134
158
  src/general_manager/chat/planned/models.py
135
159
  src/general_manager/chat/planned/planner.py
160
+ src/general_manager/chat/planned/planner_context.py
136
161
  src/general_manager/chat/planned/provider_calls.py
137
162
  src/general_manager/chat/planned/resolver.py
138
- src/general_manager/chat/planned/routing.py
139
163
  src/general_manager/chat/planned/scheduler.py
164
+ src/general_manager/chat/planned/schema_projection.py
165
+ src/general_manager/chat/planned/selector_clarification.py
166
+ src/general_manager/chat/planned/selector_question.py
140
167
  src/general_manager/chat/planned/synthesis.py
141
168
  src/general_manager/chat/planned/validation.py
142
169
  src/general_manager/chat/providers/__init__.py
@@ -159,6 +186,7 @@ src/general_manager/interface/excel_store.py
159
186
  src/general_manager/interface/excel_workbook.py
160
187
  src/general_manager/interface/orm_interface.py
161
188
  src/general_manager/interface/requests.py
189
+ src/general_manager/interface/unit_contract.py
162
190
  src/general_manager/interface/bundles/__init__.py
163
191
  src/general_manager/interface/bundles/calculation.py
164
192
  src/general_manager/interface/bundles/database.py
@@ -314,6 +342,7 @@ src/general_manager/utils/_args_to_kwargs.py
314
342
  src/general_manager/utils/_cache_key_encoder.py
315
343
  src/general_manager/utils/_make_cache_key.py
316
344
  src/general_manager/utils/_none_to_zero.py
345
+ src/general_manager/utils/executable_contract.py
317
346
  src/general_manager/utils/filter_parser.py
318
347
  src/general_manager/utils/format_string.py
319
348
  src/general_manager/utils/json_encoder.py
@@ -12,7 +12,7 @@ gitdb>=4.0.12
12
12
  GitPython>=3.1.58
13
13
  graphene>=3.4.3
14
14
  graphene-django>=3.2.3
15
- graphql-core>=3.2.6
15
+ graphql-core>=3.2.13
16
16
  graphql-relay>=3.2.0
17
17
  numpy>=2.2.5
18
18
  openpyxl<3.2.0,>=3.1.5
@@ -11,6 +11,7 @@ import re
11
11
  from time import perf_counter
12
12
  from types import UnionType
13
13
  from typing import (
14
+ Any,
14
15
  AsyncIterator,
15
16
  Callable,
16
17
  ClassVar,
@@ -35,6 +36,9 @@ import graphene
35
36
  from asgiref.sync import async_to_sync
36
37
  from channels.layers import BaseChannelLayer
37
38
  from django.core.exceptions import ObjectDoesNotExist
39
+
40
+ from general_manager.interface.requests import RequestNotFoundError
41
+ from general_manager.manager.meta import AttributeEvaluationError
38
42
  from django.db import DEFAULT_DB_ALIAS, models, transaction
39
43
  from django.utils.module_loading import import_string
40
44
 
@@ -119,6 +123,7 @@ from general_manager.api.graphql_resolvers import (
119
123
  check_read_permission as _check_read_permission_fn,
120
124
  check_read_permission_for_user as _check_read_permission_for_user_fn,
121
125
  can_read_instance_for_user as _can_read_instance_for_user_fn,
126
+ can_read_class_for_user as _can_read_class_for_user_fn,
122
127
  create_measurement_resolver as _create_measurement_resolver_fn,
123
128
  create_normal_resolver as _create_normal_resolver_fn,
124
129
  create_list_resolver as _create_list_resolver_fn,
@@ -1838,6 +1843,7 @@ class GraphQL:
1838
1843
  "pageInfo": graphene.Field(PageInfo, required=True),
1839
1844
  },
1840
1845
  )
1846
+ cast(Any, page_type)._general_manager_group_owner = general_manager_class
1841
1847
  cls._group_page_type_registry[name] = page_type
1842
1848
  return page_type
1843
1849
 
@@ -2034,6 +2040,7 @@ class GraphQL:
2034
2040
  )
2035
2041
 
2036
2042
  group_type = type(f"{name}GroupType", (graphene.ObjectType,), fields)
2043
+ cast(Any, group_type)._general_manager_group_owner = general_manager_class
2037
2044
  cls._group_type_registry[name] = group_type
2038
2045
  return group_type
2039
2046
 
@@ -2216,20 +2223,19 @@ class GraphQL:
2216
2223
  list_field = graphene.Field(page_type, **attributes)
2217
2224
 
2218
2225
  def _all_items(
2219
- _: object,
2220
- include_inactive: bool,
2226
+ _: object, include_inactive: bool
2221
2227
  ) -> Bucket[GeneralManager] | None:
2222
- """
2223
- Return all instances for the associated GeneralManager class.
2228
+ return (
2229
+ generalManagerClass.filter(include_inactive=True)
2230
+ if include_inactive
2231
+ else generalManagerClass.all()
2232
+ )
2224
2233
 
2225
- Returns:
2226
- All instances for the associated GeneralManager class, typically provided as a Bucket/QuerySet-like iterable.
2227
- """
2228
- if include_inactive:
2229
- return generalManagerClass.filter(include_inactive=True)
2230
- return generalManagerClass.all()
2234
+ from general_manager.api.graphql_resolvers import create_root_list_resolver
2231
2235
 
2232
- list_resolver = cls._create_list_resolver(_all_items, generalManagerClass)
2236
+ list_resolver = create_root_list_resolver(
2237
+ generalManagerClass, resolver_factory=cls._create_list_resolver
2238
+ )
2233
2239
  cls._query_fields[list_field_name] = list_field
2234
2240
  cls._query_fields[f"resolve_{list_field_name}"] = list_resolver
2235
2241
 
@@ -2258,17 +2264,32 @@ class GraphQL:
2258
2264
 
2259
2265
  def resolver(
2260
2266
  self: GeneralManager, info: GraphQLResolveInfo, **identification: object
2261
- ) -> GeneralManager:
2267
+ ) -> GeneralManager | None:
2262
2268
  """
2263
- Instantiate and return a GeneralManager for the provided identification arguments.
2269
+ Instantiate and authorize a manager before exposing its existence.
2264
2270
 
2265
2271
  Parameters:
2266
2272
  identification (dict): Mapping of identification argument names to values passed to the manager constructor.
2267
2273
 
2268
2274
  Returns:
2269
- GeneralManager: The manager instance identified by the provided arguments.
2275
+ GeneralManager | None: The readable manager, or None for missing
2276
+ or unreadable targets.
2270
2277
  """
2271
- return generalManagerClass(**identification)
2278
+ try:
2279
+ instance = generalManagerClass(**identification)
2280
+ except (ObjectDoesNotExist, RequestNotFoundError):
2281
+ # Missing and unreadable targets share the same public response.
2282
+ return None
2283
+ try:
2284
+ readable = _can_read_instance_for_user_fn(instance, info.context.user)
2285
+ except RequestNotFoundError:
2286
+ return None
2287
+ except AttributeEvaluationError as error:
2288
+ # Request-backed fields hydrate lazily during the row gate.
2289
+ if isinstance(error.__cause__, RequestNotFoundError):
2290
+ return None
2291
+ raise
2292
+ return instance if readable else None
2272
2293
 
2273
2294
  cls._query_fields[item_field_name] = item_field
2274
2295
  cls._query_fields[f"resolve_{item_field_name}"] = resolver
@@ -2656,6 +2677,12 @@ class GraphQL:
2656
2677
  continue
2657
2678
  identification = message.get("identification")
2658
2679
  if action == "refresh" and identification is None:
2680
+ if not await asyncio.to_thread(
2681
+ _can_read_class_for_user_fn,
2682
+ generalManagerClass,
2683
+ subscription_user,
2684
+ ):
2685
+ continue
2659
2686
  clear_capability_context(info)
2660
2687
  yield SubscriptionEvent(item=None, action=action)
2661
2688
  continue