dialectical-framework 1.5.0__tar.gz → 1.5.2__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 (187) hide show
  1. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/PKG-INFO +1 -1
  2. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/pyproject.toml +1 -1
  3. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/tools/create_nexus.py +3 -3
  4. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/create_nexus.py +7 -5
  5. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/statement_classification.py +12 -10
  6. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/thesis_extraction.py +8 -7
  7. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/nexus.py +2 -2
  8. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/settings.py +2 -2
  9. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/LICENSE +0 -0
  10. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/README.md +0 -0
  11. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/__init__.py +0 -0
  12. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/__init__.py +0 -0
  13. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/__init__.py +0 -0
  14. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/advisor.py +0 -0
  15. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/system_prompts.py +0 -0
  16. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/tools/__init__.py +0 -0
  17. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/tools/anchor.py +0 -0
  18. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/tools/explore.py +0 -0
  19. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/tools/ingest.py +0 -0
  20. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/advisor/tools/sync.py +0 -0
  21. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/agent_context.py +0 -0
  22. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/__init__.py +0 -0
  23. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/analyst.py +0 -0
  24. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/__init__.py +0 -0
  25. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/anchor_theses.py +0 -0
  26. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/edit_perspective.py +0 -0
  27. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/expand_polarities.py +0 -0
  28. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/find_polarities.py +0 -0
  29. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/introduce_polarity.py +0 -0
  30. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/skills/surface_theses.py +0 -0
  31. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/system_prompts.py +0 -0
  32. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/tools/__init__.py +0 -0
  33. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/tools/create_dx_input.py +0 -0
  34. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/analyst/tools/place_statement.py +0 -0
  35. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/apps.py +0 -0
  36. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/conversation_facilitator.py +0 -0
  37. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/execution_report.py +0 -0
  38. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/__init__.py +0 -0
  39. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/explorer.py +0 -0
  40. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/skills/__init__.py +0 -0
  41. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/skills/build_wheels.py +0 -0
  42. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/skills/explore_transformations.py +0 -0
  43. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/skills/generate_synthesis.py +0 -0
  44. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/system_prompts.py +0 -0
  45. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/tools/__init__.py +0 -0
  46. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/tools/expand_nexus.py +0 -0
  47. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/tools/generate_synthesis.py +0 -0
  48. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/explorer/tools/present_exploration.py +0 -0
  49. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/__init__.py +0 -0
  50. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/__init__.py +0 -0
  51. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/add_input.py +0 -0
  52. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/digest_input.py +0 -0
  53. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/discard.py +0 -0
  54. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/get_schema.py +0 -0
  55. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/inspect_node.py +0 -0
  56. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/present_analysis.py +0 -0
  57. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/query_graph.py +0 -0
  58. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/read_digest.py +0 -0
  59. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/orchestrator/tools/read_input.py +0 -0
  60. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/reasonable_concern.py +0 -0
  61. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/agents/stream_events.py +0 -0
  62. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/__init__.py +0 -0
  63. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/ac_re_taxonomy.py +0 -0
  64. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/action_extraction.py +0 -0
  65. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/add_input.py +0 -0
  66. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/ai_dto/__init__.py +0 -0
  67. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/ai_dto/statement_dto.py +0 -0
  68. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/ai_dto/statements_deck_dto.py +0 -0
  69. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/antithesis_classification.py +0 -0
  70. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/antithesis_extraction.py +0 -0
  71. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/aspect_classification.py +0 -0
  72. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/aspect_generation.py +0 -0
  73. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/__init__.py +0 -0
  74. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator.py +0 -0
  75. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator_balanced.py +0 -0
  76. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator_criteria.py +0 -0
  77. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator_desirable.py +0 -0
  78. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator_feasible.py +0 -0
  79. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_estimator_realistic.py +0 -0
  80. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/causality_normalizer.py +0 -0
  81. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality/estimator_resolver.py +0 -0
  82. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/causality_estimation.py +0 -0
  83. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/control_statements_check.py +0 -0
  84. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/create_dx_input.py +0 -0
  85. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/diagonal_oppositions_check.py +0 -0
  86. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/dialectical_context.py +0 -0
  87. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/discard.py +0 -0
  88. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/display_text_edit.py +0 -0
  89. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/expand_nexus.py +0 -0
  90. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/perspective_combination.py +0 -0
  91. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/perspective_validation.py +0 -0
  92. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/positive_ac_re_apex_derivation.py +0 -0
  93. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/source_digest.py +0 -0
  94. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/statement_deduplication.py +0 -0
  95. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/statement_placement.py +0 -0
  96. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/synthesis_generation.py +0 -0
  97. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/transformation_audit.py +0 -0
  98. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/concerns/transformation_generation.py +0 -0
  99. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/dialectical_reasoning.py +0 -0
  100. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/enums/__init__.py +0 -0
  101. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/enums/causality_preset.py +0 -0
  102. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/enums/di.py +0 -0
  103. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/events/__init__.py +0 -0
  104. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/events/graph_event.py +0 -0
  105. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/events/graph_event_bus.py +0 -0
  106. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/exceptions/__init__.py +0 -0
  107. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/exceptions/node_errors.py +0 -0
  108. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/exceptions/resolver_errors.py +0 -0
  109. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/__init__.py +0 -0
  110. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/composite_input_resolver.py +0 -0
  111. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/dialexity_input_resolver.py +0 -0
  112. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/estimation_manager.py +0 -0
  113. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/mixins/__init__.py +0 -0
  114. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/mixins/incremental_build_mixin.py +0 -0
  115. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/mixins/intent_mixin.py +0 -0
  116. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/mixins/persistable_mixin.py +0 -0
  117. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/__init__.py +0 -0
  118. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/assessable_entity.py +0 -0
  119. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/base_node.py +0 -0
  120. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/case.py +0 -0
  121. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/cycle.py +0 -0
  122. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/estimation.py +0 -0
  123. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/ideas.py +0 -0
  124. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/input.py +0 -0
  125. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/perspective.py +0 -0
  126. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/polarity.py +0 -0
  127. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/rationale.py +0 -0
  128. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/statement.py +0 -0
  129. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/synthesis.py +0 -0
  130. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/transformation.py +0 -0
  131. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/transition.py +0 -0
  132. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/nodes/wheel.py +0 -0
  133. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationship_manager.py +0 -0
  134. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/__init__.py +0 -0
  135. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/action_reflection_relationship.py +0 -0
  136. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/belongs_to_cycle_relationship.py +0 -0
  137. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/belongs_to_nexus_relationship.py +0 -0
  138. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/changed_to_relationship.py +0 -0
  139. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/contradiction_of_relationship.py +0 -0
  140. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/critiques_relationship.py +0 -0
  141. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/distilled_to_relationship.py +0 -0
  142. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/estimates_relationship.py +0 -0
  143. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/explains_relationship.py +0 -0
  144. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/has_input_relationship.py +0 -0
  145. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/has_statement_relationship.py +0 -0
  146. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/has_wheel_relationship.py +0 -0
  147. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/immutable_structure.py +0 -0
  148. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/is_source_of_relationship.py +0 -0
  149. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/is_target_of_relationship.py +0 -0
  150. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/negative_side_of_relationship.py +0 -0
  151. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/opposite_direction_relationship.py +0 -0
  152. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/opposite_of_relationship.py +0 -0
  153. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/polarity_relationship.py +0 -0
  154. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/positive_side_of_relationship.py +0 -0
  155. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/provides_relationship.py +0 -0
  156. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/relationships/synthesis_of_relationship.py +0 -0
  157. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/rendering.py +0 -0
  158. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/__init__.py +0 -0
  159. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/case_repository.py +0 -0
  160. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/cycle_repository.py +0 -0
  161. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/input_repository.py +0 -0
  162. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/nexus_repository.py +0 -0
  163. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/node_repository.py +0 -0
  164. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/perspective_repository.py +0 -0
  165. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/polarity_repository.py +0 -0
  166. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/schema_repository.py +0 -0
  167. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/statement_repository.py +0 -0
  168. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/transformation_repository.py +0 -0
  169. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/repositories/wheel_repository.py +0 -0
  170. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/scope_context.py +0 -0
  171. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/verbatim_input_resolver.py +0 -0
  172. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/wheel_segment.py +0 -0
  173. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/graph/wheel_segment_polar_pair.py +0 -0
  174. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/protocols/__init__.py +0 -0
  175. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/protocols/has_config.py +0 -0
  176. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/protocols/input_resolver.py +0 -0
  177. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/__init__.py +0 -0
  178. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/bedrock_provider.py +0 -0
  179. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/concurrency.py +0 -0
  180. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/dc_replace.py +0 -0
  181. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/decompose_probability_uniformly.py +0 -0
  182. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/edge_context.py +0 -0
  183. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/effect_logger.py +0 -0
  184. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/input_context.py +0 -0
  185. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/order_transitions.py +0 -0
  186. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/sequence_generation.py +0 -0
  187. {dialectical_framework-1.5.0 → dialectical_framework-1.5.2}/src/dialectical_framework/utils/use_brain.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dialectical-framework
3
- Version: 1.5.0
3
+ Version: 1.5.2
4
4
  Summary: A dialectical framework for augmented intelligence. AI reasoning powered with dialectics supports humans in: system optimization (psychology, engineering, business, politics, etc.); dispute resolution (mediation, conflicts, negotiations, etc.); decision-making (dilemmas, challenging situations, win-win, etc.).
5
5
  License: MIT
6
6
  Keywords: dialectics,dialectical-reasoning,synthesis,thesis-antithesis,ai,artificial-intelligence,llm,reasoning-framework,philosophy,logic,argumentation,conflict-resolution,decision-making,critical-thinking,semantic-graph,mirascope,pydantic,perspectives,polarity-reasoning
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "dialectical-framework"
3
- version = "1.5.0"
3
+ version = "1.5.2"
4
4
  description = "A dialectical framework for augmented intelligence. AI reasoning powered with dialectics supports humans in: system optimization (psychology, engineering, business, politics, etc.); dispute resolution (mediation, conflicts, negotiations, etc.); decision-making (dilemmas, challenging situations, win-win, etc.)."
5
5
  authors = ["Evaldas Taroza <evaldas@dialexity.com>"]
6
6
  readme = "README.md"
@@ -27,11 +27,11 @@ async def create_nexus(
27
27
  ),
28
28
  ] = None,
29
29
  preset: Annotated[
30
- str,
30
+ Optional[str],
31
31
  Field(
32
- description="Estimation strategy: 'preset:auto', 'preset:balanced', 'preset:realistic', 'preset:desirable', 'preset:feasible'"
32
+ description="Estimation strategy: 'preset:auto', 'preset:balanced', 'preset:realistic', 'preset:desirable', 'preset:feasible'. Omit for settings default."
33
33
  ),
34
- ] = "preset:auto",
34
+ ] = None,
35
35
  ) -> str:
36
36
  """Create a Nexus — an exploration container that groups Perspectives for structural combination into Cycles and Wheels. The intent describes what to explore or navigate."""
37
37
  concern = CreateNexus()
@@ -8,11 +8,11 @@ from dataclasses import dataclass
8
8
  from typing import Optional
9
9
 
10
10
  from dialectical_framework.agents.reasonable_concern import ReasonableConcern
11
- from dialectical_framework.enums.causality_preset import CausalityPreset
12
11
  from dialectical_framework.graph.nodes.nexus import Nexus
13
12
  from dialectical_framework.graph.nodes.perspective import Perspective
14
13
  from dialectical_framework.graph.repositories.node_repository import \
15
14
  NodeRepository
15
+ from dialectical_framework.protocols.has_config import SettingsAware
16
16
 
17
17
 
18
18
  @dataclass
@@ -21,7 +21,7 @@ class CreateNexusResult:
21
21
  perspectives: list[Perspective]
22
22
 
23
23
 
24
- class CreateNexus(ReasonableConcern[CreateNexusResult]):
24
+ class CreateNexus(SettingsAware, ReasonableConcern[CreateNexusResult]):
25
25
  """
26
26
  Creates an exploration container (Nexus) and connects Perspectives to it.
27
27
 
@@ -38,12 +38,14 @@ class CreateNexus(ReasonableConcern[CreateNexusResult]):
38
38
  self,
39
39
  intent: str,
40
40
  perspective_hashes: list[str],
41
- preset: str = CausalityPreset.AUTO,
41
+ preset: Optional[str] = None,
42
42
  title: Optional[str] = None,
43
43
  ) -> CreateNexusResult:
44
44
  if not perspective_hashes:
45
45
  raise ValueError("At least one Perspective hash is required.")
46
46
 
47
+ effective_preset = preset if preset is not None else self.settings.cycle_preset
48
+
47
49
  repo = NodeRepository()
48
50
  perspectives: list[Perspective] = []
49
51
  for pp_hash in perspective_hashes:
@@ -52,7 +54,7 @@ class CreateNexus(ReasonableConcern[CreateNexusResult]):
52
54
  raise ValueError(f"Perspective not found: {pp_hash}")
53
55
  perspectives.append(node)
54
56
 
55
- nexus = Nexus(intent=intent, preset=preset)
57
+ nexus = Nexus(intent=intent, preset=effective_preset)
56
58
  nexus.commit()
57
59
 
58
60
  if title:
@@ -71,6 +73,6 @@ class CreateNexus(ReasonableConcern[CreateNexusResult]):
71
73
  )
72
74
  self._report.artifacts["nexus_hash"] = nexus.short_hash
73
75
  self._report.artifacts["perspective_count"] = len(perspectives)
74
- self._report.artifacts["preset"] = preset
76
+ self._report.artifacts["preset"] = effective_preset
75
77
 
76
78
  return CreateNexusResult(nexus=nexus, perspectives=perspectives)
@@ -183,17 +183,17 @@ Your task is to classify statements and anchor them in taxonomy.
183
183
  ## Statement Classification
184
184
 
185
185
  **SIMPLE/BINARY** - is_simple = true
186
- - Can be directly true/false, yes/no, present/absent
187
- - Has literal, binary nature
188
- - Examples: "The sky is blue", "Water boils at 100C", "API is stateless"
186
+ - Verifiable by direct observation or logical identity
187
+ - No trade-offs, no systemic dynamics, no causal chains
188
+ - Examples: "The sky is blue", "Water boils at 100C", "API is stateless", "The repository has 3 branches"
189
189
 
190
190
  **COMPLEX/SYSTEMIC** - is_simple = false
191
- - Involves relationships, processes, or functional roles
192
- - Concerns viability, health, or functioning of systems
193
- - Has trade-offs, tensions, or dynamic aspects
194
- - Examples: "Trust", "Data consistency", "Love", "User experience"
191
+ - Involves causal dynamics, trade-offs, or systemic relationships
192
+ - Describes how one thing affects another, or how a process shapes outcomes
193
+ - Concerns viability, health, functioning, or governance of systems
194
+ - Examples: "Trust", "Data consistency", "Open markets promote innovation", "Centralization enables coordination", "Distributed systems trade consistency for availability"
195
195
 
196
- Heuristic: If statement involves relationship, process, or functional role → Complex
196
+ Heuristic: If the statement describes a causal relationship (X causes/enables/prevents Y), a trade-off, or a systemic dynamic → Complex. If it is a bare fact verifiable by inspection → Simple.
197
197
 
198
198
  ## Taxonomy for Complex Statements
199
199
 
@@ -534,8 +534,10 @@ Use this text to understand the intended meaning of the statement.
534
534
  Statement: "{self._statement}"
535
535
  {text_section}
536
536
  Using the classification criteria from the system prompt, classify as:
537
- - SIMPLE/BINARY (is_simple = true): literal, binary nature
538
- - COMPLEX/SYSTEMIC (is_simple = false): involves relationships, processes, functional roles
537
+ - SIMPLE/BINARY (is_simple = true): verifiable by direct observation, no causal dynamics
538
+ - COMPLEX/SYSTEMIC (is_simple = false): describes causal relationships, trade-offs, or systemic dynamics
539
+
540
+ A statement like "X prevents/enables/eliminates Y" describes a causal dynamic and is COMPLEX, even if one could argue the causal claim is "either true or false." The test is whether the statement embeds a systemic relationship, not whether one can assign it a truth value.
539
541
 
540
542
  Provide your reasoning."""
541
543
 
@@ -43,17 +43,18 @@ SYSTEM_PROMPT = """You are a dialectical thesis extractor.
43
43
  Your task is to extract assertable content from source text and identify thesis candidates.
44
44
 
45
45
  Extract content that could be theses:
46
- - Claims/Assertions: "The system should...", "We use X because..."
46
+ - Systemic claims: "Centralization enables X", "Openness promotes Y"
47
47
  - Values/Principles: "Security is paramount", "User experience first"
48
- - Goals/Objectives: Desired outcomes, success criteria
49
- - Constraints: "Must not exceed...", "Cannot allow..."
48
+ - Causal dynamics: "X leads to Y", "Without X, Y collapses"
50
49
  - Design Decisions: Architecture choices, trade-offs made
51
- - Assumptions: Implicit or explicit premises
50
+ - Structural tensions: Opposing forces, dilemmas, governance trade-offs
51
+
52
+ Prefer theses that capture systemic dynamics (how things relate, what enables/prevents what) over isolated factual claims. A thesis about a causal relationship or trade-off is more dialectically productive than a bare assertion of fact.
52
53
 
53
54
  A valid thesis candidate must be:
54
55
  - ASSERTABLE: Can be evaluated as true/false, good/bad, present/absent
55
56
  - SUBSTANTIVE: Not trivial or tautological
56
- - ATOMIC: Single concept, not compound (if compound, decompose)
57
+ - ATOMIC: Single concept or causal relationship (not multiple unrelated claims joined)
57
58
 
58
59
  Respond with structured output matching the requested format."""
59
60
 
@@ -245,9 +246,9 @@ Type: {content_type}
245
246
  Check if this is a valid thesis candidate:
246
247
  1. Is it ASSERTABLE? (Can be evaluated as true/false, good/bad, present/absent)
247
248
  2. Is it SUBSTANTIVE? (Not trivial or tautological)
248
- 3. Is it ATOMIC? (Single concept, not compound)
249
+ 3. Is it ATOMIC? (Single concept or causal relationship, not multiple unrelated claims joined)
249
250
 
250
- If compound (multiple concepts joined), decompose into atomic theses.
251
+ If compound (multiple unrelated claims joined), decompose. A single causal relationship ("X enables Y") is atomic — do not split it into "X exists" and "Y exists."
251
252
  Each atomic thesis should be 1-{max_words} words.
252
253
 
253
254
  Return:
@@ -65,7 +65,7 @@ class Nexus(IntentMixin, BaseNode, label="Nexus"):
65
65
  nexus = Nexus(
66
66
  sid=case.sid,
67
67
  intent="I want to understand the deep meaning of love",
68
- preset=CausalityPreset.BALANCED,
68
+ preset=CausalityPreset.AUTO,
69
69
  )
70
70
  nexus.commit()
71
71
 
@@ -74,7 +74,7 @@ class Nexus(IntentMixin, BaseNode, label="Nexus"):
74
74
  """
75
75
 
76
76
  # Prompt strategy for causality estimation (preset selector)
77
- preset: str = CausalityPreset.BALANCED
77
+ preset: str = CausalityPreset.AUTO
78
78
 
79
79
  # Display title (not part of hash — purely metadata).
80
80
  # NOTE: Cannot use Optional[str] here due to GQLAlchemy metaclass + future annotations.
@@ -16,7 +16,7 @@ class Settings(BaseModel):
16
16
 
17
17
  ai_model: str = Field(..., description="AI model in 'provider/model' format (e.g., 'bedrock/global.anthropic.claude-haiku-4-5-20251001-v1:0').")
18
18
  component_length: int = Field(default=7, description="Approximate length in words of the statement.")
19
- cycle_preset: str = Field(default=CausalityPreset.BALANCED, description="Default preset for causality estimation (e.g., preset:realistic, preset:desirable, preset:feasible, preset:balanced).")
19
+ cycle_preset: str = Field(default=CausalityPreset.AUTO, description="Default preset for causality estimation (e.g., preset:auto, preset:realistic, preset:desirable, preset:feasible, preset:balanced).")
20
20
 
21
21
  # Graph database configuration (Memgraph or Neo4j)
22
22
  graph_db_vendor: str = Field(default="memgraph", description="Graph database vendor: 'memgraph' or 'neo4j'")
@@ -84,7 +84,7 @@ class Settings(BaseModel):
84
84
  return cls(
85
85
  ai_model=model,
86
86
  component_length=int(os.getenv("DIALEXITY_DEFAULT_COMPONENT_LENGTH", 7)),
87
- cycle_preset=os.getenv("DIALEXITY_DEFAULT_CYCLE_PRESET", CausalityPreset.BALANCED),
87
+ cycle_preset=CausalityPreset.AUTO,
88
88
  graph_db_vendor=os.getenv("DIALEXITY_GRAPH_DB_VENDOR", "memgraph"),
89
89
  graph_db_host=os.getenv("DIALEXITY_GRAPH_DB_HOST", "127.0.0.1"),
90
90
  graph_db_port=int(os.getenv("DIALEXITY_GRAPH_DB_PORT", 7687)),