axis-synome 0.1.0.dev73__tar.gz → 0.1.0.dev74__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 (210) hide show
  1. {axis_synome-0.1.0.dev73/src/axis_synome.egg-info → axis_synome-0.1.0.dev74}/PKG-INFO +1 -1
  2. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/_version.py +2 -2
  3. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/export_entities.py +28 -1
  4. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74/src/axis_synome.egg-info}/PKG-INFO +1 -1
  5. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/scripts/test_export_entities.py +26 -1
  6. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/.flake8 +0 -0
  7. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/AGENTS.md +0 -0
  8. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/CLAUDE.md +0 -0
  9. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/README.md +0 -0
  10. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/WRITING_SPECS.md +0 -0
  11. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/01_prime_basics.py +0 -0
  12. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/02_assets_and_tokens_of_a_prime.py +0 -0
  13. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/03_inverse_lookups.py +0 -0
  14. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/04_atlas_provenance.py +0 -0
  15. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/05_feeding_a_formula.py +0 -0
  16. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/examples/README.md +0 -0
  17. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/pyproject.toml +0 -0
  18. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/setup.cfg +0 -0
  19. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/__init__.py +0 -0
  20. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/__init__.py +0 -0
  21. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/__main__.py +0 -0
  22. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/ast_normalizer.py +0 -0
  23. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/ast_utils.py +0 -0
  24. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/checks/numeric_fidelity.py +0 -0
  25. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/converters.py +0 -0
  26. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/entity_parser.py +0 -0
  27. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/formula_extraction.py +0 -0
  28. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/helpers.py +0 -0
  29. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/identity.py +0 -0
  30. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/latex/__init__.py +0 -0
  31. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/latex/converter.py +0 -0
  32. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/latex/formatter.py +0 -0
  33. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/latex/render.py +0 -0
  34. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/parse_expressions.py +0 -0
  35. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/statement_handler.py +0 -0
  36. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/parser/validation.py +0 -0
  37. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/__init__.py +0 -0
  38. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/all_entities/__init__.py +0 -0
  39. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/all_entities/lending_markets.py +0 -0
  40. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/__init__.py +0 -0
  41. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/__init__.py +0 -0
  42. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/alm_proxies.py +0 -0
  43. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/asset_categories.py +0 -0
  44. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/assets.py +0 -0
  45. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/assets_by_prime.py +0 -0
  46. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/assets_missing_from_atlas.py +0 -0
  47. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/networks.py +0 -0
  48. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/primes.py +0 -0
  49. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/protocol_sets.py +0 -0
  50. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/tokens.py +0 -0
  51. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/entities/types.py +0 -0
  52. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/__init__.py +0 -0
  53. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/asc.py +0 -0
  54. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/asc_collateral_ratio.py +0 -0
  55. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/asc_incentive.py +0 -0
  56. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/dab.py +0 -0
  57. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/latent_asc.py +0 -0
  58. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/ratio_latent_asc.py +0 -0
  59. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/asc/formulas/resting_asc.py +0 -0
  60. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/codegen_test/__init__.py +0 -0
  61. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/codegen_test/entities/__init__.py +0 -0
  62. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/codegen_test/entities/agents.py +0 -0
  63. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/crypto_lending/__init__.py +0 -0
  64. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/crypto_lending/formulas/__init__.py +0 -0
  65. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/crypto_lending/formulas/lif.py +0 -0
  66. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/__init__.py +0 -0
  67. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/audit_firms.py +0 -0
  68. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/capital_types.py +0 -0
  69. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/protocol_risk.py +0 -0
  70. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/risk_categories.py +0 -0
  71. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/entities/smart_contract_risk.py +0 -0
  72. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/__init__.py +0 -0
  73. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/administrative_rrc/__init__.py +0 -0
  74. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/administrative_rrc/administrative_risk.py +0 -0
  75. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/aggregate_rrc.py +0 -0
  76. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/audit_factor.py +0 -0
  77. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/capital_composition.py +0 -0
  78. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/entities/__init__.py +0 -0
  79. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/entities/lending_protocol.py +0 -0
  80. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/entities/precomputed_crr.py +0 -0
  81. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/examples/risk_capital_walkthrough.ipynb +0 -0
  82. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/financial_rrc/__init__.py +0 -0
  83. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/financial_rrc/entities.py +0 -0
  84. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/financial_rrc/perpetual_positions.py +0 -0
  85. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/__init__.py +0 -0
  86. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/__init__.py +0 -0
  87. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/asset_correlation_coefficient.py +0 -0
  88. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/capital_requirement_without_buffers.py +0 -0
  89. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/exposure_caps.py +0 -0
  90. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/fixed_crr_rrc.py +0 -0
  91. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/instance_financial_rrc.py +0 -0
  92. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/lending_rrc.py +0 -0
  93. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/pipeline.py +0 -0
  94. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/precomputed_crr_rrc.py +0 -0
  95. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/financial_rrc/probability_of_default.py +0 -0
  96. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/formulas/required_risk_capital.py +0 -0
  97. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/instance_rrc.py +0 -0
  98. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/jrc_loss_allocation.py +0 -0
  99. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/lindy_factor.py +0 -0
  100. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/smart_contract_rrc/__init__.py +0 -0
  101. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/smart_contract_rrc/exceptions.py +0 -0
  102. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/smart_contract_rrc/smart_contract_risk.py +0 -0
  103. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/risk_capital/total_risk_capital.py +0 -0
  104. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/README.md +0 -0
  105. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/__init__.py +0 -0
  106. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/entities/__init__.py +0 -0
  107. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/entities/assessor_score.py +0 -0
  108. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/entities/assets.py +0 -0
  109. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/entities/mappings.py +0 -0
  110. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/formulas/__init__.py +0 -0
  111. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/formulas/crr.py +0 -0
  112. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec/suraf/formulas/scoring.py +0 -0
  113. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_inspect/__init__.py +0 -0
  114. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_inspect/__main__.py +0 -0
  115. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_inspect/cli.py +0 -0
  116. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/__init__.py +0 -0
  117. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/correlation_matrix.py +0 -0
  118. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/evm_address.py +0 -0
  119. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/math_protocol.py +0 -0
  120. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/pendle_validation.py +0 -0
  121. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/references/__init__.py +0 -0
  122. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/references/graph.py +0 -0
  123. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/runtime/__init__.py +0 -0
  124. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/runtime/base.py +0 -0
  125. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/runtime/math.py +0 -0
  126. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/runtime/reference.py +0 -0
  127. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/validated_dataclass.py +0 -0
  128. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_support/validated_str.py +0 -0
  129. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_validator/__init__.py +0 -0
  130. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_validator/check_source_uuids.py +0 -0
  131. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_validator/checker.py +0 -0
  132. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_validator/flake8_plugin.py +0 -0
  133. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome/spec_validator/python_subset.py +0 -0
  134. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome.egg-info/SOURCES.txt +0 -0
  135. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome.egg-info/dependency_links.txt +0 -0
  136. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome.egg-info/entry_points.txt +0 -0
  137. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome.egg-info/requires.txt +0 -0
  138. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/src/axis_synome.egg-info/top_level.txt +0 -0
  139. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/__init__.py +0 -0
  140. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/conftest.py +0 -0
  141. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/mocks.py +0 -0
  142. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_alm_proxies.py +0 -0
  143. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_asc.py +0 -0
  144. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_asc_collateral_ratio.py +0 -0
  145. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_asc_incentive.py +0 -0
  146. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_asset_categories.py +0 -0
  147. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_dab.py +0 -0
  148. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_evm_address.py +0 -0
  149. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_latent_asc.py +0 -0
  150. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_prime_agent_data_validation.py +0 -0
  151. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_ratio_latent_asc.py +0 -0
  152. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/asc/test_resting_asc.py +0 -0
  153. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/__init__.py +0 -0
  154. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/fixture_latex_chain.py +0 -0
  155. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/fixture_mixed_module.py +0 -0
  156. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/fixture_set_membership.py +0 -0
  157. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/graph_validator.py +0 -0
  158. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/latex/__init__.py +0 -0
  159. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/latex/test_formatter.py +0 -0
  160. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/latex/test_render.py +0 -0
  161. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/test_entity_parser.py +0 -0
  162. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/test_formula_extraction.py +0 -0
  163. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/test_helpers.py +0 -0
  164. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/test_parser.py +0 -0
  165. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/parser/test_set_membership.py +0 -0
  166. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/__init__.py +0 -0
  167. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/administrative_rrc/test_administrative_risk.py +0 -0
  168. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/financial_rrc/__init__.py +0 -0
  169. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/financial_rrc/test_lending_rrc.py +0 -0
  170. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/financial_rrc/test_perpetual_positions.py +0 -0
  171. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/formulas/__init__.py +0 -0
  172. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/formulas/test_correlation_matrix.py +0 -0
  173. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/formulas/test_loss_given_default.py +0 -0
  174. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/smart_contract_rrc/__init__.py +0 -0
  175. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/smart_contract_rrc/test_exceptions.py +0 -0
  176. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/smart_contract_rrc/test_smart_contract_risk.py +0 -0
  177. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_a321_a322_integration.py +0 -0
  178. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_aggregate_rrc.py +0 -0
  179. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_capital_composition.py +0 -0
  180. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_instance_rrc.py +0 -0
  181. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_jrc_loss_allocation.py +0 -0
  182. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/risk_capital/test_total_risk_capital.py +0 -0
  183. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_inspect/__init__.py +0 -0
  184. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_inspect/test_cli.py +0 -0
  185. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/__init__.py +0 -0
  186. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/references/__init__.py +0 -0
  187. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/references/test_graph.py +0 -0
  188. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/runtime/__init__.py +0 -0
  189. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/runtime/test_base.py +0 -0
  190. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_support/runtime/test_math.py +0 -0
  191. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_validator/test_check_source_uuids.py +0 -0
  192. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_validator/test_checker.py +0 -0
  193. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/spec_validator/test_flake8_plugin.py +0 -0
  194. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/__init__.py +0 -0
  195. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/entities/__init__.py +0 -0
  196. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/entities/test_assessor_score.py +0 -0
  197. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/formulas/__init__.py +0 -0
  198. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/formulas/test_crr.py +0 -0
  199. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/formulas/test_scoring.py +0 -0
  200. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/crr_mapping.csv +0 -0
  201. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/penalty.csv +0 -0
  202. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/scorecards/Assessor_1_scores.csv +0 -0
  203. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/scorecards/Assessor_2_scores.csv +0 -0
  204. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/scorecards/Assessor_3_scores.csv +0 -0
  205. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/static/aave_ausdc/v1/weights.csv +0 -0
  206. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/suraf_client/__init__.py +0 -0
  207. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/suraf_client/suraf_client.py +0 -0
  208. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/suraf/suraf_client/test_suraf_client.py +0 -0
  209. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/tests/axis_synome/test_examples.py +0 -0
  210. {axis_synome-0.1.0.dev73 → axis_synome-0.1.0.dev74}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: axis-synome
3
- Version: 0.1.0.dev73
3
+ Version: 0.1.0.dev74
4
4
  Summary: Axis specification modules (entities, formulas, validators)
5
5
  Author-email: Archon Tech <hello@archontech.ai>
6
6
  License: MIT
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '0.1.0.dev73'
22
- __version_tuple__ = version_tuple = (0, 1, 0, 'dev73')
21
+ __version__ = version = '0.1.0.dev74'
22
+ __version_tuple__ = version_tuple = (0, 1, 0, 'dev74')
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -162,7 +162,34 @@ def _version_from_package_metadata() -> str:
162
162
 
163
163
 
164
164
  def _axis_synome_git_commit() -> str:
165
- repo_root = Path(__file__).resolve().parents[2]
165
+ """Resolve the axis-synome commit for the exported contract's provenance.
166
+
167
+ Prefer the commit baked into ``_version.py`` at build time. Otherwise fall
168
+ back to ``git rev-parse`` only when running from the axis-synome source tree.
169
+ An installed wheel lives under ``site-packages`` (often nested inside a
170
+ consumer's git repository), and walking up from there would resolve that
171
+ consumer's HEAD, which is not our commit; return ``"unknown"`` instead.
172
+ """
173
+ embedded = _build_embedded_commit()
174
+ if embedded:
175
+ return embedded
176
+ return _git_commit_from_checkout(Path(__file__).resolve().parents[2])
177
+
178
+
179
+ def _build_embedded_commit() -> str | None:
180
+ try:
181
+ from axis_synome._version import commit_id
182
+ except ImportError:
183
+ return None
184
+ return commit_id
185
+
186
+
187
+ def _git_commit_from_checkout(repo_root: Path) -> str:
188
+ # Only trust git inside the axis-synome source tree. When installed as a
189
+ # wheel, repo_root points into site-packages, so a surrounding consumer
190
+ # repository's HEAD must never be mistaken for our commit.
191
+ if not (repo_root / "src" / "axis_synome").is_dir():
192
+ return "unknown"
166
193
  try:
167
194
  return subprocess.check_output(
168
195
  ["git", "rev-parse", "HEAD"], cwd=repo_root, text=True
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: axis-synome
3
- Version: 0.1.0.dev73
3
+ Version: 0.1.0.dev74
4
4
  Summary: Axis specification modules (entities, formulas, validators)
5
5
  Author-email: Archon Tech <hello@archontech.ai>
6
6
  License: MIT
@@ -4,7 +4,13 @@ import sys
4
4
  from pathlib import Path
5
5
  from typing import cast
6
6
 
7
- from axis_synome.export_entities import _prime_to_star, build_axis_synome_contract
7
+ from axis_synome import export_entities
8
+ from axis_synome.export_entities import (
9
+ _axis_synome_git_commit,
10
+ _git_commit_from_checkout,
11
+ _prime_to_star,
12
+ build_axis_synome_contract,
13
+ )
8
14
  from axis_synome.spec.asc.entities.assets_by_prime import ASSETS_BY_PRIME, PrimeName
9
15
  from axis_synome.spec.asc.entities.assets_missing_from_atlas import (
10
16
  MISSING_FROM_ATLAS_BY_PRIME,
@@ -232,3 +238,22 @@ def test_prime_to_star_round_trips_known_primes():
232
238
  """Sanity: the prime->star slug used to key the export is stable."""
233
239
  assert _prime_to_star(PrimeName.SPARK) == "spark"
234
240
  assert _prime_to_star(PrimeName.GROVE) == "grove"
241
+
242
+
243
+ def test_git_commit_from_checkout_ignores_foreign_repo(tmp_path):
244
+ """A repo_root without src/axis_synome (e.g. an installed wheel nested in a
245
+ consumer repo) must not shell out to git and report that repo's HEAD."""
246
+ assert _git_commit_from_checkout(tmp_path) == "unknown"
247
+
248
+
249
+ def test_git_commit_prefers_build_embedded(monkeypatch):
250
+ """When _version.py carries a build-time commit, it wins over any git probe."""
251
+ monkeypatch.setattr(export_entities, "_build_embedded_commit", lambda: "abc123")
252
+ assert _axis_synome_git_commit() == "abc123"
253
+
254
+
255
+ def test_git_commit_unknown_when_unembedded_and_not_in_checkout(monkeypatch):
256
+ """No embedded commit and not in the source tree resolves to "unknown"."""
257
+ monkeypatch.setattr(export_entities, "_build_embedded_commit", lambda: None)
258
+ monkeypatch.setattr(export_entities, "_git_commit_from_checkout", lambda _root: "unknown")
259
+ assert _axis_synome_git_commit() == "unknown"