thundergraph-model 1.2.0__tar.gz → 1.2.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.
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/PKG-INFO +1 -1
- thundergraph_model-1.2.2/docs/release/v1.2.1.md +55 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/pyproject.toml +1 -1
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_compile_types.py +41 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/configured_model.py +20 -3
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/compile_types.py +45 -10
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/definition_context.py +23 -3
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/uv.lock +1 -1
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/01-bug_report.yml +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/02-feature_request.yml +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/03-documentation.yml +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/pull_request_template.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/workflows/publish.yml +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.gitignore +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/CHANGELOG.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/LICENSE +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/PYPI.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/README.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/behavior_methodology.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/brainstorm.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/conceptual_requirements.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/evaluation_api_facade_implementation_plan.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/execution_methodology.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/implementation_plan.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/logical_architecture.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/model_prototype_sketch.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/requirement_composition_and_naming_implementation_plan.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/system_authoring_restrictions_implementation_plan.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/use_cases.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/v0_api.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/release/v1.2.0.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/IMPLEMENTATION_PLAN.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/README.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.buildinfo +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.buildinfo.bak +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/api_analysis.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/api_execution.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/api_integrations.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/api_model.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/api_root.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/api/index.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/architecture.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/contributing.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/extension_playbook.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/releasing.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/repository_map.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/developer/testing.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/docstring_style.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/drafts/execution_pipeline.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/drafts/glossary.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/drafts/repository_map.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/drafts/what_is_thundergraph_model.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/environment.pickle +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/index.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/concepts_evaluation.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/concepts_external_compute.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/concepts_parts.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/concepts_requirements.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/concepts_system.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/end_to_end_guide.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/faq.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/install.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/mental_model.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/overview.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.doctrees/user/quickstart.doctree +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/index.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/analysis/compare_variants.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/analysis/impact.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/analysis/sweep.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/behavior.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/configured_model.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/connection_bindings.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/dependency_graph.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/evaluator.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/graph_compiler.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/instances.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/requirements.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/run_context.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/validation.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/execution/value_slots.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/integrations/external_compute.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/model/definition_context.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/model/elements.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/model/expr.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/tg_model/model/refs.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/api_analysis.rst.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/api_execution.rst.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/api_integrations.rst.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/api_model.rst.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/api_root.rst.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/api/index.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/architecture.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/contributing.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/extension_playbook.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/releasing.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/repository_map.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/developer/testing.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/docstring_style.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/drafts/execution_pipeline.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/drafts/glossary.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/drafts/repository_map.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/drafts/what_is_thundergraph_model.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/index.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/concepts_evaluation.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/concepts_external_compute.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/concepts_parts.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/concepts_requirements.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/concepts_system.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/end_to_end_guide.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/faq.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/install.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/mental_model.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/overview.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_sources/user/quickstart.md.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/base-stemmer.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/basic.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/debug.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/doctools.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/documentation_options.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/english-stemmer.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/file.png +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/language_data.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/minus.png +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/plus.png +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/pygments.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/scripts/furo-extensions.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/scripts/furo.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/scripts/furo.js.LICENSE.txt +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/scripts/furo.js.map +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/searchtools.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/skeleton.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/sphinx_highlight.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/styles/furo-extensions.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/styles/furo-extensions.css.map +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/styles/furo.css +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/styles/furo.css.map +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/api_analysis.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/api_execution.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/api_integrations.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/api_model.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/api_root.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/api/index.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/architecture.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/contributing.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/extension_playbook.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/releasing.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/repository_map.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/developer/testing.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/docstring_style.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/drafts/execution_pipeline.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/drafts/glossary.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/drafts/repository_map.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/drafts/what_is_thundergraph_model.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/genindex.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/index.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/objects.inv +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/py-modindex.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/search.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/searchindex.js +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/concepts_evaluation.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/concepts_external_compute.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/concepts_parts.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/concepts_requirements.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/concepts_system.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/end_to_end_guide.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/faq.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/install.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/mental_model.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/overview.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/user/quickstart.html +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/api_analysis.rst +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/api_execution.rst +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/api_integrations.rst +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/api_model.rst +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/api_root.rst +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/api/index.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/conf.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/architecture.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/contributing.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/extension_playbook.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/releasing.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/repository_map.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/developer/testing.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/docstring_style.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/drafts/README.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/drafts/execution_pipeline.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/drafts/glossary.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/drafts/repository_map.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/drafts/what_is_thundergraph_model.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/index.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/concepts_evaluation.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/concepts_external_compute.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/concepts_parts.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/concepts_requirements.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/concepts_system.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/end_to_end_guide.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/faq.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/install.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/mental_model.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/overview.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/user/quickstart.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/IMPLEMENTATION_PLAN.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/README.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/integrations/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/integrations/adapters.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/integrations/bindings.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/product/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/product/aircraft.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/product/major_assemblies/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/product/major_assemblies/parts.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/program/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/program/cargo_jet_program.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/program/l1_requirement_packages.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/program/mission_context.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/reporting/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/reporting/extract.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/commercial_aircraft/reporting/snapshot.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/hpc_datacenter/README.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/hpc_datacenter/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/hpc_datacenter/program.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/integrations/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/integrations/adapters.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/integrations/bindings.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/integrations/preset_inputs.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/reporting/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/reporting/extract.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/reporting/snapshot.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/examples/mars_ntp_tug/tug_model.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/implementation_plan_instructions.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/logo.png +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/notebooks/_gen_leo_notebook.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/notebooks/aev_architecture.mmd +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/notebooks/cargo_jet_program.ipynb +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/notebooks/hpc_datacenter_parameter_sweep.ipynb +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/notebooks/mars_ntp_nuclear_tug.ipynb +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/reviewer_architype.md +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/analysis/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/analysis/test_analysis_workflows.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/behavior/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/behavior/test_behavior_e2e.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/test_allocate_parameter_wiring.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/test_evaluation_e2e.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/test_external_compute.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/test_requirement_acceptance.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/evaluation/test_unitflow_evaluation.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/structural_models/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/structural_models/test_citations.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/structural_models/test_drive_system.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/structural_models/test_instantiation.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/test_commercial_aircraft_smoke.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/test_hpc_datacenter_smoke.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/integration/test_mars_ntp_tug_smoke.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/analysis/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/analysis/test_sweep_planning.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_behavior_runtime.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_behavior_scope.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_configured_model.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_configured_model_evaluate.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_dependency_graph.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_evaluator.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_instances.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_phase6_runtime.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_run_context.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/execution/test_validation.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/export/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/integrations/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_attribute_ref.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_behavior_declarations.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_definition_context.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_elements.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_example_system_authoring_policy.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_expr.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_identity.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_new_api_validators.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_parameter_ref.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_phase6_ontology.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_refs.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_requirement_block.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_system_authoring_restrictions.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/analysis/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/analysis/_coherence.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/analysis/compare_variants.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/analysis/impact.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/analysis/sweep.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/behavior.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/connection_bindings.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/dependency_graph.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/evaluator.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/external_ops.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/graph_compiler.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/instances.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/requirements.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/rollups.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/run_context.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/solve_groups.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/validation.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/value_slots.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/export/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/integrations/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/integrations/external_compute.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/declarations/__init__.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/declarations/behavior.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/declarations/values.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/elements.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/expr.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/identity.py +0 -0
- {thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/model/refs.py +0 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# v1.2.1 Release Notes
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Patch release. No breaking changes. No new authoring API.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Bug fix: `declared_name` and `declared_doc` now preserved in the compiled artifact
|
|
10
|
+
|
|
11
|
+
**Problem**
|
|
12
|
+
|
|
13
|
+
`model.name(str)` and `model.doc(str)` were stored exclusively in
|
|
14
|
+
`ModelDefinitionContext._declared_name` / `._declared_doc` during `define()`.
|
|
15
|
+
After `compile_type()` ran, the context was discarded and those values were lost.
|
|
16
|
+
The compiled artifact (`cls._compiled_definition`) did not include them, so there
|
|
17
|
+
was no way to retrieve the human-readable name or documentation text after
|
|
18
|
+
compilation without re-running `define()`.
|
|
19
|
+
|
|
20
|
+
**Fix**
|
|
21
|
+
|
|
22
|
+
The compiled artifact now includes two new keys:
|
|
23
|
+
|
|
24
|
+
| Key | Type | Description |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| `declared_name` | `str` | The string passed to `model.name(...)`. Always present; validated as required by `_validate_name_and_doc_required`. |
|
|
27
|
+
| `declared_doc` | `str \| None` | The string passed to `model.doc(...)`. Set on `Requirement` subclasses; `None` for `Part` and `System`. |
|
|
28
|
+
|
|
29
|
+
**Reading the values**
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
cd = MyPart.compile()
|
|
33
|
+
name = cd["declared_name"] # e.g. "hpc_colo_facility"
|
|
34
|
+
doc = cd["declared_doc"] # None for Part/System
|
|
35
|
+
|
|
36
|
+
cd = MyRequirement.compile()
|
|
37
|
+
name = cd["declared_name"] # e.g. "grid_import_capacity"
|
|
38
|
+
doc = cd["declared_doc"] # e.g. "The aggregate facility electrical load shall..."
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
For `RequirementPackageInstance` objects produced by `instantiate()`, the declaring
|
|
42
|
+
class is `obj.package_type`, not `obj.definition_type`:
|
|
43
|
+
|
|
44
|
+
```python
|
|
45
|
+
from tg_model.execution.instances import RequirementPackageInstance
|
|
46
|
+
|
|
47
|
+
if isinstance(instance, RequirementPackageInstance):
|
|
48
|
+
name = instance.package_type._compiled_definition["declared_name"]
|
|
49
|
+
doc = instance.package_type._compiled_definition["declared_doc"]
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Compatibility**
|
|
53
|
+
|
|
54
|
+
Fully backward-compatible. Existing code that reads the artifact by key (e.g. `artifact["nodes"]`,
|
|
55
|
+
`artifact["edges"]`) is unaffected. The two new keys are additive.
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tests/unit/model/test_compile_types.py
RENAMED
|
@@ -169,3 +169,44 @@ class TestInvalidConnections:
|
|
|
169
169
|
with pytest.raises(ModelDefinitionError, match="not a port"):
|
|
170
170
|
BadSystem2.compile()
|
|
171
171
|
BadSystem2._reset_compilation()
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
class TestDeclaredNameAndDocInArtifact:
|
|
175
|
+
"""declared_name and declared_doc are preserved in the compiled artifact (v1.2.1)."""
|
|
176
|
+
|
|
177
|
+
def test_part_declared_name_in_artifact(self) -> None:
|
|
178
|
+
result = Battery.compile()
|
|
179
|
+
assert result["declared_name"] == "battery"
|
|
180
|
+
|
|
181
|
+
def test_system_declared_name_in_artifact(self) -> None:
|
|
182
|
+
result = DriveSystem.compile()
|
|
183
|
+
assert result["declared_name"] == "drive_system"
|
|
184
|
+
|
|
185
|
+
def test_part_declared_doc_is_none(self) -> None:
|
|
186
|
+
# Parts and Systems have no doc requirement; field is present but None.
|
|
187
|
+
result = Battery.compile()
|
|
188
|
+
assert "declared_doc" in result
|
|
189
|
+
assert result["declared_doc"] is None
|
|
190
|
+
|
|
191
|
+
def test_requirement_declared_name_and_doc_in_artifact(self) -> None:
|
|
192
|
+
from tg_model.model.elements import Requirement
|
|
193
|
+
|
|
194
|
+
class LoadRequirement(Requirement):
|
|
195
|
+
@classmethod
|
|
196
|
+
def define(cls, model): # type: ignore[override]
|
|
197
|
+
model.name("load_requirement")
|
|
198
|
+
model.doc("The system shall not exceed the declared load limit.")
|
|
199
|
+
|
|
200
|
+
result = LoadRequirement.compile()
|
|
201
|
+
assert result["declared_name"] == "load_requirement"
|
|
202
|
+
assert result["declared_doc"] == "The system shall not exceed the declared load limit."
|
|
203
|
+
LoadRequirement._reset_compilation()
|
|
204
|
+
|
|
205
|
+
def test_declared_name_present_after_reset_and_recompile(self) -> None:
|
|
206
|
+
Battery._reset_compilation()
|
|
207
|
+
result = Battery.compile()
|
|
208
|
+
assert result["declared_name"] == "battery"
|
|
209
|
+
|
|
210
|
+
def test_declared_name_accessible_via_class_attribute(self) -> None:
|
|
211
|
+
Battery.compile()
|
|
212
|
+
assert Battery._compiled_definition["declared_name"] == "battery" # type: ignore[attr-defined]
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/tg_model/execution/configured_model.py
RENAMED
|
@@ -535,12 +535,29 @@ def _wire_requirement_block_references(
|
|
|
535
535
|
path_registry: dict[str, ElementInstance | ValueSlot],
|
|
536
536
|
out: list[ReferenceBinding],
|
|
537
537
|
) -> None:
|
|
538
|
-
"""Bind ``references`` edges authored inside a :class:`~tg_model.model.elements.Requirement` package.
|
|
538
|
+
"""Bind ``references`` edges authored inside a :class:`~tg_model.model.elements.Requirement` package.
|
|
539
|
+
|
|
540
|
+
Source refs from ``parameter()`` / ``attribute()`` inside a Requirement carry
|
|
541
|
+
the block's ``symbol_path_prefix`` baked into ``ref.path`` (so they can flow
|
|
542
|
+
through ``allocate(inputs=...)``). Citation refs do not (they keep
|
|
543
|
+
``self.owner_type`` so they're locally scoped). Strip ``_symbol_path_prefix``
|
|
544
|
+
from each edge endpoint so the result is a clean local-relative path before
|
|
545
|
+
prepending the runtime ``block_instance_path``.
|
|
546
|
+
"""
|
|
547
|
+
symbol_prefix: tuple[str, ...] = tuple(compiled.get("_symbol_path_prefix") or ())
|
|
548
|
+
|
|
549
|
+
def _instance_path(raw_path: tuple[str, ...]) -> tuple[str, ...]:
|
|
550
|
+
if symbol_prefix and raw_path[: len(symbol_prefix)] == symbol_prefix:
|
|
551
|
+
local = raw_path[len(symbol_prefix):]
|
|
552
|
+
else:
|
|
553
|
+
local = raw_path
|
|
554
|
+
return block_instance_path + local
|
|
555
|
+
|
|
539
556
|
for edge in compiled.get("edges", []):
|
|
540
557
|
if edge.get("kind") != "references":
|
|
541
558
|
continue
|
|
542
|
-
src_path =
|
|
543
|
-
tgt_path =
|
|
559
|
+
src_path = _instance_path(tuple(edge["source"]["path"]))
|
|
560
|
+
tgt_path = _instance_path(tuple(edge["target"]["path"]))
|
|
544
561
|
src_key = ".".join(src_path)
|
|
545
562
|
tgt_key = ".".join(tgt_path)
|
|
546
563
|
src = path_registry.get(src_key)
|
|
@@ -151,6 +151,8 @@ def compile_type(
|
|
|
151
151
|
|
|
152
152
|
artifact: dict[str, Any] = {
|
|
153
153
|
"owner": qualified_name(element_cls),
|
|
154
|
+
"declared_name": ctx._declared_name,
|
|
155
|
+
"declared_doc": ctx._declared_doc,
|
|
154
156
|
"nodes": {
|
|
155
157
|
name: {
|
|
156
158
|
"kind": decl.kind,
|
|
@@ -162,6 +164,11 @@ def compile_type(
|
|
|
162
164
|
"edges": [_serialize_edge(edge) for edge in ctx.edges],
|
|
163
165
|
"child_types": child_types,
|
|
164
166
|
"_type_registry": type_registry,
|
|
167
|
+
# Threaded path prefix used by Requirement parameter()/attribute() refs.
|
|
168
|
+
# Runtime needs this to translate refs that carry the threaded path
|
|
169
|
+
# back to a local-relative path before prepending the instance path
|
|
170
|
+
# of a composed Requirement block.
|
|
171
|
+
"_symbol_path_prefix": tuple(ctx.symbol_path_prefix),
|
|
165
172
|
"behavior_transitions": _serialize_behavior_transitions(ctx.behavior_transitions),
|
|
166
173
|
}
|
|
167
174
|
cls_mut._compiled_definition = artifact
|
|
@@ -515,7 +522,13 @@ def _validate_requirement_package_value_exprs(ctx: Any) -> None:
|
|
|
515
522
|
|
|
516
523
|
|
|
517
524
|
def _validate_references_edges(ctx: Any) -> None:
|
|
518
|
-
"""``references`` edges must resolve to declared nodes; target must be a citation.
|
|
525
|
+
"""``references`` edges must resolve to declared nodes; target must be a citation.
|
|
526
|
+
|
|
527
|
+
Source refs may also point at the root_block (``path=()``, ``kind='part'``,
|
|
528
|
+
``owner_type is ctx.owner_type``), which represents a citation on the class
|
|
529
|
+
itself rather than on one of its declared members. We treat that as valid
|
|
530
|
+
without requiring a node lookup.
|
|
531
|
+
"""
|
|
519
532
|
for edge in ctx.edges:
|
|
520
533
|
if edge.get("kind") != "references":
|
|
521
534
|
continue
|
|
@@ -528,11 +541,20 @@ def _validate_references_edges(ctx: Any) -> None:
|
|
|
528
541
|
f"{ctx.owner_type.__name__}: references target must be a citation ref, "
|
|
529
542
|
f"got {getattr(tgt, 'kind', None)!r}"
|
|
530
543
|
)
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
)
|
|
544
|
+
# Self-reference (root_block): empty path, kind=part, owner_type matches.
|
|
545
|
+
# No node decl exists for the class itself — accept without lookup.
|
|
546
|
+
if (
|
|
547
|
+
getattr(src, "path", None) == ()
|
|
548
|
+
and getattr(src, "kind", None) == "part"
|
|
549
|
+
and getattr(src, "owner_type", None) is ctx.owner_type
|
|
550
|
+
):
|
|
551
|
+
pass
|
|
552
|
+
else:
|
|
553
|
+
sdecl = _lookup_node_decl_for_ref(ctx, src)
|
|
554
|
+
if sdecl is None:
|
|
555
|
+
raise ModelDefinitionError(
|
|
556
|
+
f"{ctx.owner_type.__name__}: references source path {getattr(src, 'path', ())!r} does not resolve"
|
|
557
|
+
)
|
|
536
558
|
tdecl = _lookup_node_decl_for_ref(ctx, tgt)
|
|
537
559
|
if tdecl is None or tdecl.kind != "citation":
|
|
538
560
|
raise ModelDefinitionError(
|
|
@@ -541,13 +563,26 @@ def _validate_references_edges(ctx: Any) -> None:
|
|
|
541
563
|
|
|
542
564
|
|
|
543
565
|
def _lookup_node_decl_for_ref(ctx: Any, ref: Any) -> NodeDecl | None:
|
|
544
|
-
"""Resolve a definition-time ref using the owning type's definition context (no recursive ``compile()``).
|
|
566
|
+
"""Resolve a definition-time ref using the owning type's definition context (no recursive ``compile()``).
|
|
567
|
+
|
|
568
|
+
Refs from ``Requirement`` ``parameter()`` / ``attribute()`` calls are threaded
|
|
569
|
+
under ``ctx.symbol_owner`` (typically the configured root type) with a path
|
|
570
|
+
prefixed by ``ctx.symbol_path_prefix``. Strip that prefix before walking the
|
|
571
|
+
local context so refs and locally-declared nodes line up.
|
|
572
|
+
"""
|
|
545
573
|
path = getattr(ref, "path", ())
|
|
546
574
|
if not path:
|
|
547
575
|
return None
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
576
|
+
ref_owner = getattr(ref, "owner_type", None)
|
|
577
|
+
if ref_owner is ctx.owner_type:
|
|
578
|
+
return _walk_path_in_definition_ctx(ctx, path)
|
|
579
|
+
symbol_owner = getattr(ctx, "symbol_owner", None)
|
|
580
|
+
symbol_prefix = tuple(getattr(ctx, "symbol_path_prefix", ()) or ())
|
|
581
|
+
if ref_owner is symbol_owner and (not symbol_prefix or path[: len(symbol_prefix)] == symbol_prefix):
|
|
582
|
+
local_path = path[len(symbol_prefix):]
|
|
583
|
+
if local_path:
|
|
584
|
+
return _walk_path_in_definition_ctx(ctx, local_path)
|
|
585
|
+
return None
|
|
551
586
|
|
|
552
587
|
|
|
553
588
|
def _walk_path_in_definition_ctx(ctx: Any, path: tuple[str, ...]) -> NodeDecl | None:
|
|
@@ -1295,7 +1295,12 @@ class ModelDefinitionContext:
|
|
|
1295
1295
|
Parameters
|
|
1296
1296
|
----------
|
|
1297
1297
|
source : Ref
|
|
1298
|
-
Any declared node on this type (part, port, parameter,
|
|
1298
|
+
Any declared node on this type (part, port, parameter, attribute,
|
|
1299
|
+
requirement, …). For ``Requirement`` blocks, parameters and
|
|
1300
|
+
attributes are threaded under ``symbol_owner`` so allocations can
|
|
1301
|
+
wire them across boundaries; refs whose ``owner_type`` is either
|
|
1302
|
+
the local ``owner_type`` or the configured ``symbol_owner`` are
|
|
1303
|
+
both accepted as sources.
|
|
1299
1304
|
citation : Ref
|
|
1300
1305
|
Must be ``kind='citation'`` on this type.
|
|
1301
1306
|
|
|
@@ -1307,8 +1312,23 @@ class ModelDefinitionContext:
|
|
|
1307
1312
|
self._check_frozen()
|
|
1308
1313
|
if citation.kind != "citation":
|
|
1309
1314
|
raise ModelDefinitionError(f"references(): citation must be a citation ref, got kind={citation.kind!r}")
|
|
1310
|
-
|
|
1311
|
-
|
|
1315
|
+
# Accept refs from either the local owner_type or the threaded
|
|
1316
|
+
# symbol_owner. For Parts, both are the same. For Requirements,
|
|
1317
|
+
# parameter()/attribute() return refs with owner_type=symbol_owner so
|
|
1318
|
+
# they can flow through allocations; those must be valid sources here.
|
|
1319
|
+
valid_owners = (self.owner_type, self.symbol_owner)
|
|
1320
|
+
if source.owner_type not in valid_owners or citation.owner_type not in valid_owners:
|
|
1321
|
+
raise ModelDefinitionError(
|
|
1322
|
+
f"references(): source and citation must belong to this type "
|
|
1323
|
+
f"({self.owner_type.__name__})"
|
|
1324
|
+
+ (
|
|
1325
|
+
f" or its symbol owner ({self.symbol_owner.__name__})"
|
|
1326
|
+
if self.symbol_owner is not self.owner_type
|
|
1327
|
+
else ""
|
|
1328
|
+
)
|
|
1329
|
+
+ f". Got source.owner_type={source.owner_type.__name__}, "
|
|
1330
|
+
f"citation.owner_type={citation.owner_type.__name__}."
|
|
1331
|
+
)
|
|
1312
1332
|
self.edges.append(
|
|
1313
1333
|
{
|
|
1314
1334
|
"kind": "references",
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/01-bug_report.yml
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/02-feature_request.yml
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/.github/ISSUE_TEMPLATE/03-documentation.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/behavior_methodology.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/execution_methodology.md
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/implementation_plan.md
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/logical_architecture.md
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/generation_docs/model_prototype_sketch.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/.buildinfo.bak
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_modules/index.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/basic.css
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/debug.css
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/doctools.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/file.png
RENAMED
|
File without changes
|
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/minus.png
RENAMED
|
File without changes
|
{thundergraph_model-1.2.0 → thundergraph_model-1.2.2}/docs/user_docs/_build/html/_static/plus.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|