thundergraph-model 1.3.3__tar.gz → 1.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/PKG-INFO +1 -1
  2. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/api/api_model.doctree +0 -0
  3. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/concepts_behavior.doctree +0 -0
  4. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/drafts/concepts_behavior_internal.doctree +0 -0
  5. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/environment.pickle +0 -0
  6. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/index.doctree +0 -0
  7. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/user/concepts_behavior.doctree +0 -0
  8. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/concepts_evaluation.doctree +0 -0
  9. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/concepts_external_compute.doctree +0 -0
  10. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/concepts_parts.doctree +0 -0
  11. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/concepts_requirements.doctree +0 -0
  12. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/concepts_system.doctree +0 -0
  13. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/faq.doctree +0 -0
  14. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/user/mental_model.doctree +0 -0
  15. thundergraph_model-1.4.0/docs/user_docs/_build/html/.doctrees/user/overview.doctree +0 -0
  16. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/index.html +2 -0
  17. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/configured_model.html +68 -30
  18. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/graph_compiler.html +18 -7
  19. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/model/definition_context.html +66 -15
  20. thundergraph_model-1.4.0/docs/user_docs/_build/html/_sources/drafts/concepts_behavior_internal.md.txt +449 -0
  21. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/index.md.txt +2 -0
  22. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/concepts_evaluation.md.txt +27 -10
  23. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/concepts_external_compute.md.txt +7 -4
  24. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/concepts_parts.md.txt +1 -0
  25. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/concepts_requirements.md.txt +1 -0
  26. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/concepts_system.md.txt +42 -2
  27. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/faq.md.txt +17 -6
  28. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/mental_model.md.txt +5 -5
  29. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/overview.md.txt +1 -1
  30. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/api_analysis.html +1 -0
  31. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/api_execution.html +1 -0
  32. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/api_integrations.html +1 -0
  33. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/api_model.html +33 -10
  34. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/api_root.html +1 -0
  35. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/api/index.html +1 -0
  36. thundergraph_model-1.4.0/docs/user_docs/_build/html/concepts_behavior.html +920 -0
  37. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/architecture.html +1 -0
  38. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/contributing.html +1 -0
  39. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/extension_playbook.html +1 -0
  40. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/releasing.html +1 -0
  41. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/repository_map.html +1 -0
  42. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/developer/testing.html +1 -0
  43. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/docstring_style.html +1 -0
  44. thundergraph_model-1.4.0/docs/user_docs/_build/html/drafts/concepts_behavior_internal.html +902 -0
  45. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/drafts/execution_pipeline.html +1 -0
  46. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/drafts/glossary.html +1 -0
  47. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/drafts/repository_map.html +1 -0
  48. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/drafts/what_is_thundergraph_model.html +1 -0
  49. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/genindex.html +2 -0
  50. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/index.html +20 -0
  51. thundergraph_model-1.4.0/docs/user_docs/_build/html/objects.inv +0 -0
  52. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/py-modindex.html +2 -0
  53. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/search.html +2 -0
  54. thundergraph_model-1.4.0/docs/user_docs/_build/html/searchindex.js +1 -0
  55. thundergraph_model-1.4.0/docs/user_docs/_build/html/user/concepts_behavior.html +816 -0
  56. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/concepts_evaluation.html +43 -13
  57. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/concepts_external_compute.html +11 -7
  58. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/concepts_parts.html +6 -1
  59. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/concepts_requirements.html +6 -2
  60. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/concepts_system.html +43 -8
  61. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/end_to_end_guide.html +1 -0
  62. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/faq.html +17 -5
  63. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/install.html +1 -0
  64. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/mental_model.html +4 -3
  65. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/overview.html +2 -1
  66. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/user/quickstart.html +1 -0
  67. thundergraph_model-1.4.0/docs/user_docs/drafts/concepts_behavior_internal.md +449 -0
  68. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/index.md +1 -0
  69. thundergraph_model-1.4.0/docs/user_docs/user/concepts_behavior.md +400 -0
  70. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/concepts_evaluation.md +27 -10
  71. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/concepts_external_compute.md +7 -4
  72. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/concepts_parts.md +1 -0
  73. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/concepts_requirements.md +1 -0
  74. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/concepts_system.md +38 -0
  75. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/faq.md +17 -6
  76. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/mental_model.md +5 -5
  77. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/overview.md +1 -1
  78. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/pyproject.toml +1 -1
  79. thundergraph_model-1.4.0/tests/unit/execution/test_evaluation_phase0.py +499 -0
  80. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/__init__.py +8 -2
  81. thundergraph_model-1.4.0/tg_model/execution/evaluation.py +244 -0
  82. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/evaluator.py +190 -40
  83. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/graph_compiler.py +73 -7
  84. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/run_context.py +52 -8
  85. thundergraph_model-1.4.0/tg_model/execution/stable_ids.py +89 -0
  86. thundergraph_model-1.4.0/tg_model/model/evaluation_context.py +160 -0
  87. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/uv.lock +1 -1
  88. thundergraph_model-1.3.3/docs/user_docs/_build/html/.doctrees/api/api_model.doctree +0 -0
  89. thundergraph_model-1.3.3/docs/user_docs/_build/html/.doctrees/environment.pickle +0 -0
  90. thundergraph_model-1.3.3/docs/user_docs/_build/html/.doctrees/user/mental_model.doctree +0 -0
  91. thundergraph_model-1.3.3/docs/user_docs/_build/html/.doctrees/user/overview.doctree +0 -0
  92. thundergraph_model-1.3.3/docs/user_docs/_build/html/objects.inv +0 -0
  93. thundergraph_model-1.3.3/docs/user_docs/_build/html/searchindex.js +0 -1
  94. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/ISSUE_TEMPLATE/01-bug_report.yml +0 -0
  95. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/ISSUE_TEMPLATE/02-feature_request.yml +0 -0
  96. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/ISSUE_TEMPLATE/03-documentation.yml +0 -0
  97. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  98. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/pull_request_template.md +0 -0
  99. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.github/workflows/publish.yml +0 -0
  100. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/.gitignore +0 -0
  101. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/CHANGELOG.md +0 -0
  102. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/LICENSE +0 -0
  103. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/PYPI.md +0 -0
  104. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/README.md +0 -0
  105. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/behavior_methodology.md +0 -0
  106. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/behavioral_projection_plan.md +0 -0
  107. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/brainstorm.md +0 -0
  108. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/conceptual_requirements.md +0 -0
  109. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/evaluation_api_facade_implementation_plan.md +0 -0
  110. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/execution_methodology.md +0 -0
  111. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/graph_compiler_nested_requirement_owner_fix_plan.md +0 -0
  112. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/implementation_plan.md +0 -0
  113. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/logical_architecture.md +0 -0
  114. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/model_prototype_sketch.py +0 -0
  115. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/requirement_composition_and_naming_implementation_plan.md +0 -0
  116. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/system_authoring_restrictions_implementation_plan.md +0 -0
  117. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/use_cases.md +0 -0
  118. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/generation_docs/v0_api.md +0 -0
  119. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/release/v1.2.0.md +0 -0
  120. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/release/v1.2.1.md +0 -0
  121. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/IMPLEMENTATION_PLAN.md +0 -0
  122. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/README.md +0 -0
  123. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.buildinfo +0 -0
  124. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.buildinfo.bak +0 -0
  125. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/api/api_analysis.doctree +0 -0
  126. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/api/api_execution.doctree +0 -0
  127. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/api/api_integrations.doctree +0 -0
  128. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/api/api_root.doctree +0 -0
  129. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/api/index.doctree +0 -0
  130. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/architecture.doctree +0 -0
  131. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/contributing.doctree +0 -0
  132. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/extension_playbook.doctree +0 -0
  133. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/releasing.doctree +0 -0
  134. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/repository_map.doctree +0 -0
  135. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/developer/testing.doctree +0 -0
  136. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/docstring_style.doctree +0 -0
  137. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/drafts/execution_pipeline.doctree +0 -0
  138. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/drafts/glossary.doctree +0 -0
  139. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/drafts/repository_map.doctree +0 -0
  140. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/drafts/what_is_thundergraph_model.doctree +0 -0
  141. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/end_to_end_guide.doctree +0 -0
  142. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/install.doctree +0 -0
  143. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/.doctrees/user/quickstart.doctree +0 -0
  144. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/analysis/compare_variants.html +0 -0
  145. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/analysis/impact.html +0 -0
  146. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/analysis/sweep.html +0 -0
  147. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/behavior.html +0 -0
  148. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/connection_bindings.html +0 -0
  149. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/dependency_graph.html +0 -0
  150. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/evaluator.html +0 -0
  151. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/instances.html +0 -0
  152. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/requirements.html +0 -0
  153. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/run_context.html +0 -0
  154. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/validation.html +0 -0
  155. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/execution/value_slots.html +0 -0
  156. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/integrations/external_compute.html +0 -0
  157. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/model/elements.html +0 -0
  158. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/model/expr.html +0 -0
  159. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_modules/tg_model/model/refs.html +0 -0
  160. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/api_analysis.rst.txt +0 -0
  161. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/api_execution.rst.txt +0 -0
  162. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/api_integrations.rst.txt +0 -0
  163. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/api_model.rst.txt +0 -0
  164. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/api_root.rst.txt +0 -0
  165. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/api/index.md.txt +0 -0
  166. /thundergraph_model-1.3.3/docs/user_docs/concepts_behavior.md → /thundergraph_model-1.4.0/docs/user_docs/_build/html/_sources/concepts_behavior.md.txt +0 -0
  167. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/architecture.md.txt +0 -0
  168. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/contributing.md.txt +0 -0
  169. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/extension_playbook.md.txt +0 -0
  170. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/releasing.md.txt +0 -0
  171. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/repository_map.md.txt +0 -0
  172. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/developer/testing.md.txt +0 -0
  173. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/docstring_style.md.txt +0 -0
  174. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/drafts/execution_pipeline.md.txt +0 -0
  175. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/drafts/glossary.md.txt +0 -0
  176. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/drafts/repository_map.md.txt +0 -0
  177. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/drafts/what_is_thundergraph_model.md.txt +0 -0
  178. /thundergraph_model-1.3.3/docs/user_docs/user/concepts_behavior.md → /thundergraph_model-1.4.0/docs/user_docs/_build/html/_sources/user/concepts_behavior.md.txt +0 -0
  179. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/end_to_end_guide.md.txt +0 -0
  180. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/install.md.txt +0 -0
  181. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_sources/user/quickstart.md.txt +0 -0
  182. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/base-stemmer.js +0 -0
  183. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/basic.css +0 -0
  184. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/debug.css +0 -0
  185. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/doctools.js +0 -0
  186. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/documentation_options.js +0 -0
  187. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/english-stemmer.js +0 -0
  188. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/file.png +0 -0
  189. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/language_data.js +0 -0
  190. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/minus.png +0 -0
  191. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/plus.png +0 -0
  192. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/pygments.css +0 -0
  193. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/scripts/furo-extensions.js +0 -0
  194. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/scripts/furo.js +0 -0
  195. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/scripts/furo.js.LICENSE.txt +0 -0
  196. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/scripts/furo.js.map +0 -0
  197. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/searchtools.js +0 -0
  198. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/skeleton.css +0 -0
  199. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/sphinx_highlight.js +0 -0
  200. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/styles/furo-extensions.css +0 -0
  201. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/styles/furo-extensions.css.map +0 -0
  202. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/styles/furo.css +0 -0
  203. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/_build/html/_static/styles/furo.css.map +0 -0
  204. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/api_analysis.rst +0 -0
  205. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/api_execution.rst +0 -0
  206. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/api_integrations.rst +0 -0
  207. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/api_model.rst +0 -0
  208. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/api_root.rst +0 -0
  209. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/api/index.md +0 -0
  210. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/conf.py +0 -0
  211. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/architecture.md +0 -0
  212. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/contributing.md +0 -0
  213. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/extension_playbook.md +0 -0
  214. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/releasing.md +0 -0
  215. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/repository_map.md +0 -0
  216. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/developer/testing.md +0 -0
  217. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/docstring_style.md +0 -0
  218. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/drafts/README.md +0 -0
  219. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/drafts/execution_pipeline.md +0 -0
  220. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/drafts/glossary.md +0 -0
  221. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/drafts/repository_map.md +0 -0
  222. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/drafts/what_is_thundergraph_model.md +0 -0
  223. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/end_to_end_guide.md +0 -0
  224. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/install.md +0 -0
  225. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/docs/user_docs/user/quickstart.md +0 -0
  226. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/__init__.py +0 -0
  227. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/IMPLEMENTATION_PLAN.md +0 -0
  228. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/README.md +0 -0
  229. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/__init__.py +0 -0
  230. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/integrations/__init__.py +0 -0
  231. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/integrations/adapters.py +0 -0
  232. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/integrations/bindings.py +0 -0
  233. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/product/__init__.py +0 -0
  234. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/product/aircraft.py +0 -0
  235. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/product/major_assemblies/__init__.py +0 -0
  236. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/product/major_assemblies/parts.py +0 -0
  237. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/program/__init__.py +0 -0
  238. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/program/cargo_jet_program.py +0 -0
  239. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/program/l1_requirement_packages.py +0 -0
  240. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/program/mission_context.py +0 -0
  241. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/reporting/__init__.py +0 -0
  242. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/reporting/extract.py +0 -0
  243. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/commercial_aircraft/reporting/snapshot.py +0 -0
  244. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/hpc_datacenter/README.md +0 -0
  245. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/hpc_datacenter/__init__.py +0 -0
  246. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/hpc_datacenter/program.py +0 -0
  247. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/__init__.py +0 -0
  248. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/integrations/__init__.py +0 -0
  249. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/integrations/adapters.py +0 -0
  250. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/integrations/bindings.py +0 -0
  251. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/integrations/preset_inputs.py +0 -0
  252. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/reporting/__init__.py +0 -0
  253. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/reporting/extract.py +0 -0
  254. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/reporting/snapshot.py +0 -0
  255. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/examples/mars_ntp_tug/tug_model.py +0 -0
  256. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/implementation_plan_instructions.md +0 -0
  257. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/logo.png +0 -0
  258. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/notebooks/_gen_leo_notebook.py +0 -0
  259. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/notebooks/aev_architecture.mmd +0 -0
  260. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/notebooks/cargo_jet_program.ipynb +0 -0
  261. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/notebooks/hpc_datacenter_parameter_sweep.ipynb +0 -0
  262. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/notebooks/mars_ntp_nuclear_tug.ipynb +0 -0
  263. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/reviewer_architype.md +0 -0
  264. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/__init__.py +0 -0
  265. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/__init__.py +0 -0
  266. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/analysis/__init__.py +0 -0
  267. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/analysis/test_analysis_workflows.py +0 -0
  268. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/behavior/__init__.py +0 -0
  269. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/behavior/test_behavior_e2e.py +0 -0
  270. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/__init__.py +0 -0
  271. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_allocate_parameter_wiring.py +0 -0
  272. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_evaluation_e2e.py +0 -0
  273. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_external_compute.py +0 -0
  274. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_requirement_acceptance.py +0 -0
  275. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_system_in_system_requirements.py +0 -0
  276. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/evaluation/test_unitflow_evaluation.py +0 -0
  277. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/structural_models/__init__.py +0 -0
  278. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/structural_models/test_citations.py +0 -0
  279. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/structural_models/test_drive_system.py +0 -0
  280. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/structural_models/test_instantiation.py +0 -0
  281. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/test_commercial_aircraft_smoke.py +0 -0
  282. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/test_hpc_datacenter_smoke.py +0 -0
  283. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/integration/test_mars_ntp_tug_smoke.py +0 -0
  284. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/__init__.py +0 -0
  285. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/analysis/__init__.py +0 -0
  286. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/analysis/test_sweep_planning.py +0 -0
  287. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/__init__.py +0 -0
  288. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_behavior_runtime.py +0 -0
  289. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_behavior_scope.py +0 -0
  290. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_configured_model.py +0 -0
  291. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_configured_model_evaluate.py +0 -0
  292. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_dependency_graph.py +0 -0
  293. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_evaluator.py +0 -0
  294. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_graph_compiler.py +0 -0
  295. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_instances.py +0 -0
  296. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_phase6_runtime.py +0 -0
  297. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_run_context.py +0 -0
  298. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/execution/test_validation.py +0 -0
  299. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/export/__init__.py +0 -0
  300. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/integrations/__init__.py +0 -0
  301. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/__init__.py +0 -0
  302. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_attribute_ref.py +0 -0
  303. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_behavior_declarations.py +0 -0
  304. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_compile_types.py +0 -0
  305. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_definition_context.py +0 -0
  306. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_elements.py +0 -0
  307. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_example_system_authoring_policy.py +0 -0
  308. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_expr.py +0 -0
  309. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_identity.py +0 -0
  310. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_new_api_validators.py +0 -0
  311. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_parameter_ref.py +0 -0
  312. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_phase6_ontology.py +0 -0
  313. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_refs.py +0 -0
  314. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_requirement_block.py +0 -0
  315. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tests/unit/model/test_system_authoring_restrictions.py +0 -0
  316. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/__init__.py +0 -0
  317. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/analysis/__init__.py +0 -0
  318. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/analysis/_coherence.py +0 -0
  319. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/analysis/compare_variants.py +0 -0
  320. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/analysis/impact.py +0 -0
  321. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/analysis/sweep.py +0 -0
  322. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/behavior.py +0 -0
  323. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/configured_model.py +0 -0
  324. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/connection_bindings.py +0 -0
  325. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/dependency_graph.py +0 -0
  326. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/external_ops.py +0 -0
  327. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/instances.py +0 -0
  328. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/requirements.py +0 -0
  329. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/rollups.py +0 -0
  330. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/solve_groups.py +0 -0
  331. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/validation.py +0 -0
  332. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/execution/value_slots.py +0 -0
  333. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/export/__init__.py +0 -0
  334. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/integrations/__init__.py +0 -0
  335. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/integrations/external_compute.py +0 -0
  336. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/__init__.py +0 -0
  337. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/compile_types.py +0 -0
  338. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/declarations/__init__.py +0 -0
  339. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/declarations/behavior.py +0 -0
  340. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/declarations/values.py +0 -0
  341. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/definition_context.py +0 -0
  342. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/elements.py +0 -0
  343. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/expr.py +0 -0
  344. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/identity.py +0 -0
  345. {thundergraph_model-1.3.3 → thundergraph_model-1.4.0}/tg_model/model/refs.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: thundergraph-model
3
- Version: 1.3.3
3
+ Version: 1.4.0
4
4
  Summary: Executable systems modeling in Python
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.11
@@ -205,6 +205,7 @@
205
205
  <li class="toctree-l1"><a class="reference internal" href="../user/concepts_system.html">Concept: Systems</a></li>
206
206
  <li class="toctree-l1"><a class="reference internal" href="../user/concepts_requirements.html">Concept: Requirements</a></li>
207
207
  <li class="toctree-l1"><a class="reference internal" href="../user/concepts_evaluation.html">Concept: Evaluation</a></li>
208
+ <li class="toctree-l1"><a class="reference internal" href="../user/concepts_behavior.html">Concept: Behavioral Modeling</a></li>
208
209
  <li class="toctree-l1"><a class="reference internal" href="../user/concepts_external_compute.html">Concept: External Compute (Concrete Binding)</a></li>
209
210
  <li class="toctree-l1"><a class="reference internal" href="../user/faq.html">FAQ</a></li>
210
211
  </ul>
@@ -239,6 +240,7 @@
239
240
  <li class="toctree-l1"><a class="reference internal" href="../drafts/execution_pipeline.html">Execution Pipeline (Compile -&gt; Instantiate -&gt; Graph -&gt; Evaluate)</a></li>
240
241
  <li class="toctree-l1"><a class="reference internal" href="../drafts/glossary.html">Glossary</a></li>
241
242
  <li class="toctree-l1"><a class="reference internal" href="../drafts/repository_map.html">Repository Map (thundergraph-model)</a></li>
243
+ <li class="toctree-l1"><a class="reference internal" href="../drafts/concepts_behavior_internal.html">Behavioral Modeling: States and Actions</a></li>
242
244
  </ul>
243
245
 
244
246
  </div>
@@ -205,6 +205,7 @@
205
205
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_system.html">Concept: Systems</a></li>
206
206
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_requirements.html">Concept: Requirements</a></li>
207
207
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_evaluation.html">Concept: Evaluation</a></li>
208
+ <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_behavior.html">Concept: Behavioral Modeling</a></li>
208
209
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_external_compute.html">Concept: External Compute (Concrete Binding)</a></li>
209
210
  <li class="toctree-l1"><a class="reference internal" href="../../../user/faq.html">FAQ</a></li>
210
211
  </ul>
@@ -547,7 +548,7 @@
547
548
  <span class="n">requirement_value_slots</span><span class="p">,</span>
548
549
  <span class="p">)</span>
549
550
 
550
- <span class="n">connections</span> <span class="o">=</span> <span class="n">_instantiate_connections</span><span class="p">(</span><span class="n">compiled</span><span class="p">,</span> <span class="n">root_instance</span><span class="p">,</span> <span class="n">path_registry</span><span class="p">,</span> <span class="n">root_type</span><span class="p">)</span>
551
+ <span class="n">connections</span> <span class="o">=</span> <span class="n">_instantiate_all_connections</span><span class="p">(</span><span class="n">root_instance</span><span class="p">,</span> <span class="n">path_registry</span><span class="p">,</span> <span class="n">root_type</span><span class="p">)</span>
551
552
  <span class="n">allocations</span> <span class="o">=</span> <span class="n">_instantiate_allocations</span><span class="p">(</span><span class="n">compiled</span><span class="p">,</span> <span class="n">root_instance</span><span class="p">,</span> <span class="n">path_registry</span><span class="p">,</span> <span class="n">root_type</span><span class="p">)</span>
552
553
  <span class="n">references</span> <span class="o">=</span> <span class="n">_instantiate_all_references</span><span class="p">(</span><span class="n">root_instance</span><span class="p">,</span> <span class="n">path_registry</span><span class="p">,</span> <span class="n">root_type</span><span class="p">)</span> <span class="o">+</span> <span class="n">ref_accumulator</span>
553
554
 
@@ -821,12 +822,29 @@
821
822
  <span class="n">path_registry</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">ElementInstance</span> <span class="o">|</span> <span class="n">ValueSlot</span><span class="p">],</span>
822
823
  <span class="n">out</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">ReferenceBinding</span><span class="p">],</span>
823
824
  <span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
824
- <span class="w"> </span><span class="sd">&quot;&quot;&quot;Bind ``references`` edges authored inside a :class:`~tg_model.model.elements.Requirement` package.&quot;&quot;&quot;</span>
825
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Bind ``references`` edges authored inside a :class:`~tg_model.model.elements.Requirement` package.</span>
826
+
827
+ <span class="sd"> Source refs from ``parameter()`` / ``attribute()`` inside a Requirement carry</span>
828
+ <span class="sd"> the block&#39;s ``symbol_path_prefix`` baked into ``ref.path`` (so they can flow</span>
829
+ <span class="sd"> through ``allocate(inputs=...)``). Citation refs do not (they keep</span>
830
+ <span class="sd"> ``self.owner_type`` so they&#39;re locally scoped). Strip ``_symbol_path_prefix``</span>
831
+ <span class="sd"> from each edge endpoint so the result is a clean local-relative path before</span>
832
+ <span class="sd"> prepending the runtime ``block_instance_path``.</span>
833
+ <span class="sd"> &quot;&quot;&quot;</span>
834
+ <span class="n">symbol_prefix</span><span class="p">:</span> <span class="nb">tuple</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="o">...</span><span class="p">]</span> <span class="o">=</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">compiled</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;_symbol_path_prefix&quot;</span><span class="p">)</span> <span class="ow">or</span> <span class="p">())</span>
835
+
836
+ <span class="k">def</span><span class="w"> </span><span class="nf">_instance_path</span><span class="p">(</span><span class="n">raw_path</span><span class="p">:</span> <span class="nb">tuple</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="o">...</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="nb">tuple</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="o">...</span><span class="p">]:</span>
837
+ <span class="k">if</span> <span class="n">symbol_prefix</span> <span class="ow">and</span> <span class="n">raw_path</span><span class="p">[:</span> <span class="nb">len</span><span class="p">(</span><span class="n">symbol_prefix</span><span class="p">)]</span> <span class="o">==</span> <span class="n">symbol_prefix</span><span class="p">:</span>
838
+ <span class="n">local</span> <span class="o">=</span> <span class="n">raw_path</span><span class="p">[</span><span class="nb">len</span><span class="p">(</span><span class="n">symbol_prefix</span><span class="p">):]</span>
839
+ <span class="k">else</span><span class="p">:</span>
840
+ <span class="n">local</span> <span class="o">=</span> <span class="n">raw_path</span>
841
+ <span class="k">return</span> <span class="n">block_instance_path</span> <span class="o">+</span> <span class="n">local</span>
842
+
825
843
  <span class="k">for</span> <span class="n">edge</span> <span class="ow">in</span> <span class="n">compiled</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;edges&quot;</span><span class="p">,</span> <span class="p">[]):</span>
826
844
  <span class="k">if</span> <span class="n">edge</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;kind&quot;</span><span class="p">)</span> <span class="o">!=</span> <span class="s2">&quot;references&quot;</span><span class="p">:</span>
827
845
  <span class="k">continue</span>
828
- <span class="n">src_path</span> <span class="o">=</span> <span class="n">block_instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
829
- <span class="n">tgt_path</span> <span class="o">=</span> <span class="n">block_instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
846
+ <span class="n">src_path</span> <span class="o">=</span> <span class="n">_instance_path</span><span class="p">(</span><span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">]))</span>
847
+ <span class="n">tgt_path</span> <span class="o">=</span> <span class="n">_instance_path</span><span class="p">(</span><span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">]))</span>
830
848
  <span class="n">src_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">src_path</span><span class="p">)</span>
831
849
  <span class="n">tgt_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">tgt_path</span><span class="p">)</span>
832
850
  <span class="n">src</span> <span class="o">=</span> <span class="n">path_registry</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">src_key</span><span class="p">)</span>
@@ -852,43 +870,63 @@
852
870
  <span class="p">)</span>
853
871
 
854
872
 
855
- <span class="k">def</span><span class="w"> </span><span class="nf">_instantiate_connections</span><span class="p">(</span>
856
- <span class="n">compiled</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">],</span>
873
+ <span class="k">def</span><span class="w"> </span><span class="nf">_instantiate_all_connections</span><span class="p">(</span>
857
874
  <span class="n">root</span><span class="p">:</span> <span class="n">PartInstance</span><span class="p">,</span>
858
875
  <span class="n">path_registry</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">ElementInstance</span> <span class="o">|</span> <span class="n">ValueSlot</span><span class="p">],</span>
859
876
  <span class="n">root_type</span><span class="p">:</span> <span class="nb">type</span><span class="p">,</span>
860
877
  <span class="p">)</span> <span class="o">-&gt;</span> <span class="nb">list</span><span class="p">[</span><span class="n">ConnectionBinding</span><span class="p">]:</span>
861
- <span class="w"> </span><span class="sd">&quot;&quot;&quot;Resolve compiled connection edges into ConnectionBindings.&quot;&quot;&quot;</span>
862
- <span class="n">connections</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">ConnectionBinding</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
878
+ <span class="w"> </span><span class="sd">&quot;&quot;&quot;Resolve ``connect`` edges from every part type in the instance tree.</span>
863
879
 
864
- <span class="k">for</span> <span class="n">edge</span> <span class="ow">in</span> <span class="n">compiled</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;edges&quot;</span><span class="p">,</span> <span class="p">[]):</span>
865
- <span class="k">if</span> <span class="n">edge</span><span class="p">[</span><span class="s2">&quot;kind&quot;</span><span class="p">]</span> <span class="o">!=</span> <span class="s2">&quot;connect&quot;</span><span class="p">:</span>
866
- <span class="k">continue</span>
880
+ <span class="sd"> Mirrors :func:`_instantiate_all_references`. Connections are no longer required</span>
881
+ <span class="sd"> to be authored on the configured root composed sub-Parts may declare their own</span>
882
+ <span class="sd"> internal port wiring via ``model.connect(...)``. Each part contributes the</span>
883
+ <span class="sd"> connect edges from its own ``definition_type.compile()`` artifact, and the</span>
884
+ <span class="sd"> source/target port paths are resolved against that part&#39;s ``instance_path``.</span>
885
+ <span class="sd"> &quot;&quot;&quot;</span>
886
+ <span class="n">out</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">ConnectionBinding</span><span class="p">]</span> <span class="o">=</span> <span class="p">[]</span>
887
+ <span class="n">stack</span><span class="p">:</span> <span class="nb">list</span><span class="p">[</span><span class="n">PartInstance</span><span class="p">]</span> <span class="o">=</span> <span class="p">[</span><span class="n">root</span><span class="p">]</span>
888
+ <span class="k">while</span> <span class="n">stack</span><span class="p">:</span>
889
+ <span class="n">part</span> <span class="o">=</span> <span class="n">stack</span><span class="o">.</span><span class="n">pop</span><span class="p">()</span>
890
+ <span class="n">compiled</span> <span class="o">=</span> <span class="n">part</span><span class="o">.</span><span class="n">definition_type</span><span class="o">.</span><span class="n">compile</span><span class="p">()</span>
891
+ <span class="k">for</span> <span class="n">edge</span> <span class="ow">in</span> <span class="n">compiled</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;edges&quot;</span><span class="p">,</span> <span class="p">[]):</span>
892
+ <span class="k">if</span> <span class="n">edge</span><span class="p">[</span><span class="s2">&quot;kind&quot;</span><span class="p">]</span> <span class="o">!=</span> <span class="s2">&quot;connect&quot;</span><span class="p">:</span>
893
+ <span class="k">continue</span>
867
894
 
868
- <span class="n">src_path</span> <span class="o">=</span> <span class="n">root</span><span class="o">.</span><span class="n">instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
869
- <span class="n">tgt_path</span> <span class="o">=</span> <span class="n">root</span><span class="o">.</span><span class="n">instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
870
- <span class="n">src_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">src_path</span><span class="p">)</span>
871
- <span class="n">tgt_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">tgt_path</span><span class="p">)</span>
895
+ <span class="n">src_path</span> <span class="o">=</span> <span class="n">part</span><span class="o">.</span><span class="n">instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
896
+ <span class="n">tgt_path</span> <span class="o">=</span> <span class="n">part</span><span class="o">.</span><span class="n">instance_path</span> <span class="o">+</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
897
+ <span class="n">src_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">src_path</span><span class="p">)</span>
898
+ <span class="n">tgt_key</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">tgt_path</span><span class="p">)</span>
872
899
 
873
- <span class="n">src</span> <span class="o">=</span> <span class="n">path_registry</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">src_key</span><span class="p">)</span>
874
- <span class="n">tgt</span> <span class="o">=</span> <span class="n">path_registry</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">tgt_key</span><span class="p">)</span>
900
+ <span class="n">src</span> <span class="o">=</span> <span class="n">path_registry</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">src_key</span><span class="p">)</span>
901
+ <span class="n">tgt</span> <span class="o">=</span> <span class="n">path_registry</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">tgt_key</span><span class="p">)</span>
875
902
 
876
- <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">src</span><span class="p">,</span> <span class="n">PortInstance</span><span class="p">):</span>
877
- <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Connection source &#39;</span><span class="si">{</span><span class="n">src_key</span><span class="si">}</span><span class="s2">&#39; is not a PortInstance&quot;</span><span class="p">)</span>
878
- <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">tgt</span><span class="p">,</span> <span class="n">PortInstance</span><span class="p">):</span>
879
- <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Connection target &#39;</span><span class="si">{</span><span class="n">tgt_key</span><span class="si">}</span><span class="s2">&#39; is not a PortInstance&quot;</span><span class="p">)</span>
903
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">src</span><span class="p">,</span> <span class="n">PortInstance</span><span class="p">):</span>
904
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Connection source &#39;</span><span class="si">{</span><span class="n">src_key</span><span class="si">}</span><span class="s2">&#39; is not a PortInstance&quot;</span><span class="p">)</span>
905
+ <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">tgt</span><span class="p">,</span> <span class="n">PortInstance</span><span class="p">):</span>
906
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Connection target &#39;</span><span class="si">{</span><span class="n">tgt_key</span><span class="si">}</span><span class="s2">&#39; is not a PortInstance&quot;</span><span class="p">)</span>
880
907
 
881
- <span class="n">conn_id</span> <span class="o">=</span> <span class="n">derive_declaration_id</span><span class="p">(</span><span class="n">root_type</span><span class="p">,</span> <span class="s2">&quot;connect&quot;</span><span class="p">,</span> <span class="o">*</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">],</span> <span class="o">*</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">])</span>
882
- <span class="n">connections</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
883
- <span class="n">ConnectionBinding</span><span class="p">(</span>
884
- <span class="n">stable_id</span><span class="o">=</span><span class="n">conn_id</span><span class="p">,</span>
885
- <span class="n">source</span><span class="o">=</span><span class="n">src</span><span class="p">,</span>
886
- <span class="n">target</span><span class="o">=</span><span class="n">tgt</span><span class="p">,</span>
887
- <span class="n">carrying</span><span class="o">=</span><span class="n">edge</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;carrying&quot;</span><span class="p">),</span>
908
+ <span class="c1"># Include the part&#39;s own instance path in the id so connects authored</span>
909
+ <span class="c1"># inside different sub-parts of the same root remain unique.</span>
910
+ <span class="n">owner_segments</span> <span class="o">=</span> <span class="n">part</span><span class="o">.</span><span class="n">instance_path</span><span class="p">[</span><span class="mi">1</span><span class="p">:]</span> <span class="c1"># skip the root_type name itself</span>
911
+ <span class="n">conn_id</span> <span class="o">=</span> <span class="n">derive_declaration_id</span><span class="p">(</span>
912
+ <span class="n">root_type</span><span class="p">,</span>
913
+ <span class="s2">&quot;connect&quot;</span><span class="p">,</span>
914
+ <span class="o">*</span><span class="n">owner_segments</span><span class="p">,</span>
915
+ <span class="o">*</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;source&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">],</span>
916
+ <span class="o">*</span><span class="n">edge</span><span class="p">[</span><span class="s2">&quot;target&quot;</span><span class="p">][</span><span class="s2">&quot;path&quot;</span><span class="p">],</span>
888
917
  <span class="p">)</span>
889
- <span class="p">)</span>
918
+ <span class="n">out</span><span class="o">.</span><span class="n">append</span><span class="p">(</span>
919
+ <span class="n">ConnectionBinding</span><span class="p">(</span>
920
+ <span class="n">stable_id</span><span class="o">=</span><span class="n">conn_id</span><span class="p">,</span>
921
+ <span class="n">source</span><span class="o">=</span><span class="n">src</span><span class="p">,</span>
922
+ <span class="n">target</span><span class="o">=</span><span class="n">tgt</span><span class="p">,</span>
923
+ <span class="n">carrying</span><span class="o">=</span><span class="n">edge</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;carrying&quot;</span><span class="p">),</span>
924
+ <span class="p">)</span>
925
+ <span class="p">)</span>
926
+ <span class="c1"># Recurse into composed child Parts (NOT ports / value slots / requirement packages).</span>
927
+ <span class="n">stack</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">part</span><span class="o">.</span><span class="n">children</span><span class="p">)</span>
890
928
 
891
- <span class="k">return</span> <span class="n">connections</span>
929
+ <span class="k">return</span> <span class="n">out</span>
892
930
 
893
931
 
894
932
  <span class="k">def</span><span class="w"> </span><span class="nf">_instantiate_allocations</span><span class="p">(</span>
@@ -205,6 +205,7 @@
205
205
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_system.html">Concept: Systems</a></li>
206
206
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_requirements.html">Concept: Requirements</a></li>
207
207
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_evaluation.html">Concept: Evaluation</a></li>
208
+ <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_behavior.html">Concept: Behavioral Modeling</a></li>
208
209
  <li class="toctree-l1"><a class="reference internal" href="../../../user/concepts_external_compute.html">Concept: External Compute (Concrete Binding)</a></li>
209
210
  <li class="toctree-l1"><a class="reference internal" href="../../../user/faq.html">FAQ</a></li>
210
211
  </ul>
@@ -793,7 +794,8 @@
793
794
  <span class="n">sub</span> <span class="o">=</span> <span class="nb">getattr</span><span class="p">(</span><span class="n">part</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
794
795
  <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">sub</span><span class="p">,</span> <span class="n">RequirementPackageInstance</span><span class="p">):</span>
795
796
  <span class="n">_compile_requirement_package_tree</span><span class="p">(</span>
796
- <span class="n">sub</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">param_overrides_by_pkg</span><span class="p">,</span> <span class="n">allocation_target_by_pkg</span>
797
+ <span class="n">sub</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">param_overrides_by_pkg</span><span class="p">,</span> <span class="n">allocation_target_by_pkg</span><span class="p">,</span>
798
+ <span class="n">owner_part</span><span class="o">=</span><span class="n">part</span><span class="p">,</span>
797
799
  <span class="p">)</span>
798
800
  <span class="k">for</span> <span class="n">child</span> <span class="ow">in</span> <span class="n">part</span><span class="o">.</span><span class="n">children</span><span class="p">:</span>
799
801
  <span class="n">_compile_requirement_packages_from_parts</span><span class="p">(</span>
@@ -836,9 +838,14 @@
836
838
  <span class="n">param_overrides_by_pkg</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">ValueSlot</span><span class="p">]],</span>
837
839
  <span class="n">allocation_target_by_pkg</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="nb">str</span><span class="p">],</span>
838
840
  <span class="n">parent_target_path</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
841
+ <span class="n">owner_part</span><span class="p">:</span> <span class="n">PartInstance</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
839
842
  <span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
840
843
  <span class="kn">from</span><span class="w"> </span><span class="nn">tg_model.model.declarations.values</span><span class="w"> </span><span class="kn">import</span> <span class="n">RollupDecl</span>
841
844
 
845
+ <span class="c1"># Use the owning PartInstance for symbol resolution. Falls back to model.root only when</span>
846
+ <span class="c1"># no owner is provided, which preserves existing behaviour for root-level packages.</span>
847
+ <span class="n">_owner</span> <span class="o">=</span> <span class="n">owner_part</span> <span class="k">if</span> <span class="n">owner_part</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">model</span><span class="o">.</span><span class="n">root</span>
848
+
842
849
  <span class="n">compiled</span> <span class="o">=</span> <span class="n">pkg</span><span class="o">.</span><span class="n">package_type</span><span class="o">.</span><span class="n">compile</span><span class="p">()</span>
843
850
  <span class="n">overrides</span> <span class="o">=</span> <span class="n">param_overrides_by_pkg</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">pkg</span><span class="o">.</span><span class="n">path_string</span><span class="p">,</span> <span class="p">{})</span>
844
851
  <span class="c1"># Resolve the allocation target: own entry takes priority, then inherit from parent.</span>
@@ -864,17 +871,17 @@
864
871
  <span class="k">if</span> <span class="n">kind</span> <span class="o">==</span> <span class="s2">&quot;parameter&quot;</span> <span class="ow">and</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">overrides</span><span class="p">:</span>
865
872
  <span class="n">_compile_parameter_override</span><span class="p">(</span><span class="n">slot</span><span class="p">,</span> <span class="n">overrides</span><span class="p">[</span><span class="n">name</span><span class="p">],</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">)</span>
866
873
  <span class="k">else</span><span class="p">:</span>
867
- <span class="n">_compile_slot</span><span class="p">(</span><span class="n">slot</span><span class="p">,</span> <span class="n">model</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
874
+ <span class="n">_compile_slot</span><span class="p">(</span><span class="n">slot</span><span class="p">,</span> <span class="n">_owner</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
868
875
  <span class="k">elif</span> <span class="n">kind</span> <span class="o">==</span> <span class="s2">&quot;constraint&quot;</span><span class="p">:</span>
869
876
  <span class="n">_compile_requirement_package_constraint</span><span class="p">(</span>
870
- <span class="n">pkg</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">node</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">target_path</span>
877
+ <span class="n">pkg</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">node</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">target_path</span><span class="p">,</span> <span class="n">owner_part</span><span class="o">=</span><span class="n">_owner</span>
871
878
  <span class="p">)</span>
872
879
  <span class="k">elif</span> <span class="n">kind</span> <span class="o">==</span> <span class="s2">&quot;requirement_block&quot;</span><span class="p">:</span>
873
880
  <span class="n">inner</span> <span class="o">=</span> <span class="nb">getattr</span><span class="p">(</span><span class="n">pkg</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span>
874
881
  <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">inner</span><span class="p">,</span> <span class="n">RequirementPackageInstance</span><span class="p">):</span>
875
882
  <span class="n">_compile_requirement_package_tree</span><span class="p">(</span>
876
883
  <span class="n">inner</span><span class="p">,</span> <span class="n">graph</span><span class="p">,</span> <span class="n">handlers</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">param_overrides_by_pkg</span><span class="p">,</span>
877
- <span class="n">allocation_target_by_pkg</span><span class="p">,</span> <span class="n">target_path</span><span class="p">,</span>
884
+ <span class="n">allocation_target_by_pkg</span><span class="p">,</span> <span class="n">target_path</span><span class="p">,</span> <span class="n">owner_part</span><span class="o">=</span><span class="n">_owner</span><span class="p">,</span>
878
885
  <span class="p">)</span>
879
886
 
880
887
 
@@ -886,6 +893,7 @@
886
893
  <span class="n">handlers</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Callable</span><span class="p">],</span>
887
894
  <span class="n">model</span><span class="p">:</span> <span class="n">ConfiguredModel</span><span class="p">,</span>
888
895
  <span class="n">allocation_target_path</span><span class="p">:</span> <span class="nb">str</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span><span class="p">,</span>
896
+ <span class="n">owner_part</span><span class="p">:</span> <span class="n">PartInstance</span> <span class="o">|</span> <span class="kc">None</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span>
889
897
  <span class="p">)</span> <span class="o">-&gt;</span> <span class="kc">None</span><span class="p">:</span>
890
898
  <span class="n">constraint_node_id</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;check:</span><span class="si">{</span><span class="n">pkg</span><span class="o">.</span><span class="n">path_string</span><span class="si">}</span><span class="s2">.</span><span class="si">{</span><span class="n">name</span><span class="si">}</span><span class="s2">&quot;</span>
891
899
  <span class="n">graph</span><span class="o">.</span><span class="n">add_node</span><span class="p">(</span>
@@ -906,14 +914,17 @@
906
914
  <span class="sa">f</span><span class="s2">&quot;(expected compile-time validation to reject this).&quot;</span>
907
915
  <span class="p">)</span>
908
916
 
917
+ <span class="n">_owner</span> <span class="o">=</span> <span class="n">owner_part</span> <span class="k">if</span> <span class="n">owner_part</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span> <span class="k">else</span> <span class="n">model</span><span class="o">.</span><span class="n">root</span>
918
+
909
919
  <span class="k">def</span><span class="w"> </span><span class="nf">make_pkg_constraint_handler</span><span class="p">(</span>
910
920
  <span class="n">constraint_expr</span><span class="p">:</span> <span class="n">Any</span><span class="p">,</span>
911
921
  <span class="n">cm</span><span class="p">:</span> <span class="n">ConfiguredModel</span><span class="p">,</span>
922
+ <span class="n">sym_owner</span><span class="p">:</span> <span class="n">PartInstance</span><span class="p">,</span>
912
923
  <span class="p">)</span> <span class="o">-&gt;</span> <span class="n">Callable</span><span class="p">[</span><span class="o">...</span><span class="p">,</span> <span class="nb">bool</span><span class="p">]:</span>
913
924
  <span class="k">def</span><span class="w"> </span><span class="nf">handler</span><span class="p">(</span><span class="n">dep_values</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="nb">bool</span><span class="p">:</span>
914
925
  <span class="n">context</span><span class="p">:</span> <span class="nb">dict</span><span class="p">[</span><span class="n">Any</span><span class="p">,</span> <span class="n">Any</span><span class="p">]</span> <span class="o">=</span> <span class="p">{}</span>
915
926
  <span class="k">for</span> <span class="n">sym</span> <span class="ow">in</span> <span class="n">constraint_expr</span><span class="o">.</span><span class="n">free_symbols</span><span class="p">:</span>
916
- <span class="n">dep_slot</span> <span class="o">=</span> <span class="n">_resolve_symbol_to_slot</span><span class="p">(</span><span class="n">sym</span><span class="p">,</span> <span class="n">cm</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">cm</span><span class="p">)</span>
927
+ <span class="n">dep_slot</span> <span class="o">=</span> <span class="n">_resolve_symbol_to_slot</span><span class="p">(</span><span class="n">sym</span><span class="p">,</span> <span class="n">sym_owner</span><span class="p">,</span> <span class="n">cm</span><span class="p">)</span>
917
928
  <span class="n">dep_node_id</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;val:</span><span class="si">{</span><span class="n">dep_slot</span><span class="o">.</span><span class="n">path_string</span><span class="si">}</span><span class="s2">&quot;</span>
918
929
  <span class="k">if</span> <span class="n">dep_node_id</span> <span class="ow">in</span> <span class="n">dep_values</span><span class="p">:</span>
919
930
  <span class="n">context</span><span class="p">[</span><span class="n">sym</span><span class="p">]</span> <span class="o">=</span> <span class="n">dep_values</span><span class="p">[</span><span class="n">dep_node_id</span><span class="p">]</span>
@@ -923,10 +934,10 @@
923
934
 
924
935
  <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">expr</span><span class="p">,</span> <span class="s2">&quot;free_symbols&quot;</span><span class="p">)</span> <span class="ow">and</span> <span class="n">expr</span><span class="o">.</span><span class="n">free_symbols</span><span class="p">:</span>
925
936
  <span class="k">for</span> <span class="n">sym</span> <span class="ow">in</span> <span class="n">expr</span><span class="o">.</span><span class="n">free_symbols</span><span class="p">:</span>
926
- <span class="n">dep_slot</span> <span class="o">=</span> <span class="n">_resolve_symbol_to_slot</span><span class="p">(</span><span class="n">sym</span><span class="p">,</span> <span class="n">model</span><span class="o">.</span><span class="n">root</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
937
+ <span class="n">dep_slot</span> <span class="o">=</span> <span class="n">_resolve_symbol_to_slot</span><span class="p">(</span><span class="n">sym</span><span class="p">,</span> <span class="n">_owner</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
927
938
  <span class="n">dep_node_id</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;val:</span><span class="si">{</span><span class="n">dep_slot</span><span class="o">.</span><span class="n">path_string</span><span class="si">}</span><span class="s2">&quot;</span>
928
939
  <span class="n">graph</span><span class="o">.</span><span class="n">add_edge</span><span class="p">(</span><span class="n">dep_node_id</span><span class="p">,</span> <span class="n">constraint_node_id</span><span class="p">)</span>
929
- <span class="n">handlers</span><span class="p">[</span><span class="n">constraint_node_id</span><span class="p">]</span> <span class="o">=</span> <span class="n">make_pkg_constraint_handler</span><span class="p">(</span><span class="n">expr</span><span class="p">,</span> <span class="n">model</span><span class="p">)</span>
940
+ <span class="n">handlers</span><span class="p">[</span><span class="n">constraint_node_id</span><span class="p">]</span> <span class="o">=</span> <span class="n">make_pkg_constraint_handler</span><span class="p">(</span><span class="n">expr</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="n">_owner</span><span class="p">)</span>
930
941
  <span class="k">elif</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">expr</span><span class="p">,</span> <span class="s2">&quot;evaluate&quot;</span><span class="p">):</span>
931
942
  <span class="n">handlers</span><span class="p">[</span><span class="n">constraint_node_id</span><span class="p">]</span> <span class="o">=</span> <span class="k">lambda</span> <span class="n">dep_values</span><span class="p">,</span> <span class="n">e</span><span class="o">=</span><span class="n">expr</span><span class="p">:</span> <span class="nb">bool</span><span class="p">(</span><span class="n">e</span><span class="o">.</span><span class="n">evaluate</span><span class="p">({}))</span>
932
943
  <span class="k">elif</span> <span class="nb">callable</span><span class="p">(</span><span class="n">expr</span><span class="p">):</span>