ms-markets 3.0.0.dev39__tar.gz → 3.0.1.dev41__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 (838) hide show
  1. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/CHANGELOG.md +22 -0
  2. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/PKG-INFO +1 -1
  3. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0047-markets-api-application-boundary.md +11 -14
  4. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/index.md +5 -36
  5. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/rows.md +2 -4
  6. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/client/index.md +4 -7
  7. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/indices/formula_indexes.md +1 -1
  8. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_portfolios/portfolios/index.md +3 -3
  9. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/markets_contracts_package_and_client_plan.md +1 -1
  10. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/pyproject.toml +1 -1
  11. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/__init__.py +2 -3
  12. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/remote.py +1 -1
  13. ms_markets-3.0.1.dev41/src/msm/distribution.py +30 -0
  14. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_cli/main.py +3 -17
  15. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/conftest.py +0 -17
  16. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/client/test_remote_backend.py +8 -26
  17. ms_markets-3.0.1.dev41/tests/msm/test_distribution.py +63 -0
  18. ms_markets-3.0.1.dev41/tests/packaging/test_requirements_export.py +28 -0
  19. ms_markets-3.0.0.dev39/tests/msm/fastapi/v1/test_registry_write_policy.py +0 -191
  20. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/accounts/account_workflow/SKILL.md +0 -0
  21. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/accounts/valuation_resolver/SKILL.md +0 -0
  22. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/assets/asset_indexed_updaters/SKILL.md +0 -0
  23. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/assets/asset_model_extension/SKILL.md +0 -0
  24. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/indices/index_workflow/SKILL.md +0 -0
  25. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/platform/bootstrap_registration/SKILL.md +0 -0
  26. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/platform/metatable_migrations/SKILL.md +0 -0
  27. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/portfolios/portfolio_workflow/SKILL.md +0 -0
  28. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/portfolios/portfolio_workflow/references/position_accounting.md +0 -0
  29. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/pricing/fixed_income_curve_building/SKILL.md +0 -0
  30. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.agents/skills/ms_markets/pricing/general_pricing/SKILL.md +0 -0
  31. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/.gitignore +0 -0
  32. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/LICENSE +0 -0
  33. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/README.md +0 -0
  34. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0005-pricing-package-refactor.md +0 -0
  35. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0006-asset-package-boundary.md +0 -0
  36. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0008-metatable-table-and-api-model-split.md +0 -0
  37. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0019-msm-portfolios-package-boundary.md +0 -0
  38. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0022-alembic-metatable-migration-alignment.md +0 -0
  39. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0023-deterministic-alembic-naming.md +0 -0
  40. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0024-namespace-scoped-alembic-version-locations.md +0 -0
  41. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0025-direct-metatable-runtime-binding.md +0 -0
  42. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0026-explicit-pricing-market-data-sets.md +0 -0
  43. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0027-account-target-position-portfolio-exposure.md +0 -0
  44. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0028-core-calendar-reference-data.md +0 -0
  45. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0029-account-holdings-virtual-fund-allocation-policy.md +0 -0
  46. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0030-explicit-portfolio-price-source-dependency.md +0 -0
  47. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0031-generic-portfolio-valuation-source.md +0 -0
  48. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0032-portfolio-group-many-to-many.md +0 -0
  49. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0033-pricing-valuation-position-boundary.md +0 -0
  50. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0034-command-center-asset-monitor-helpers.md +0 -0
  51. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0035-pricing-curve-identity-and-market-data-curve-bindings.md +0 -0
  52. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0036-prepared-pricing-valuation-context.md +0 -0
  53. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0037-index-formula-and-custom-calculation-framework.md +0 -0
  54. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0038-index-user-api-and-fastapi-exploration.md +0 -0
  55. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0039-sdk-8-hard-cut-and-1-0-package-contract.md +0 -0
  56. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0040-portfolio-temporal-ownership.md +0 -0
  57. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0041-installable-provider-http-toolkit.md +0 -0
  58. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0042-position-cash-flow-portfolio-accounting.md +0 -0
  59. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0043-sdk-9-metatables-client-hard-cut.md +0 -0
  60. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0044-namespaced-migration-provider-package.md +0 -0
  61. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0045-squashed-initial-schema-and-namespaced-packages.md +0 -0
  62. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0046-legacy-0017-schema-bridge.md +0 -0
  63. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/0048-time-index-vocabulary-rename.md +0 -0
  64. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/README.md +0 -0
  65. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/fast_api/v1/0001-calendar-crud-route.md +0 -0
  66. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/fast_api/v1/0002-command-center-adapter-discovery.md +0 -0
  67. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/fast_api/v1/0003-fixed-income-pricer-api.md +0 -0
  68. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/ADR/fast_api/v1/0004-delete-impact-contract.md +0 -0
  69. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/changelog.md +0 -0
  70. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/concepts.md +0 -0
  71. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/accounts.md +0 -0
  72. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/assets.md +0 -0
  73. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/calendars.md +0 -0
  74. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/command_center_bulk_actions.md +0 -0
  75. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/fixed_income_pricer.md +0 -0
  76. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/indexes.md +0 -0
  77. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/portfolio.md +0 -0
  78. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/portfolio_groups.md +0 -0
  79. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/portfolio_signal_metadata.md +0 -0
  80. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/pricing_curves.md +0 -0
  81. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/pricing_market_data.md +0 -0
  82. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/provider_adapter_toolkit.md +0 -0
  83. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/resource_contracts.md +0 -0
  84. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/settings.md +0 -0
  85. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/fast_api/v1/virtualfund.md +0 -0
  86. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/getting-started.md +0 -0
  87. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_alternate_lockup_black_bg.png +0 -0
  88. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_alternate_lockup_transparent.png +0 -0
  89. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_icon_emblem_black_bg.png +0 -0
  90. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_icon_emblem_transparent.png +0 -0
  91. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_market_mark_only_black_bg.png +0 -0
  92. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_market_mark_only_transparent.png +0 -0
  93. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_primary_wordmark_black_bg.png +0 -0
  94. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/img/main-sequence-markets/main_sequence_markets_primary_wordmark_transparent.png +0 -0
  95. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/index.md +0 -0
  96. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/accounts/index.md +0 -0
  97. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/accounts/virtual_funds.md +0 -0
  98. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/assets/asset_indexed_updaters.md +0 -0
  99. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/assets/bonds.md +0 -0
  100. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/assets/currency.md +0 -0
  101. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/assets/index.md +0 -0
  102. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/calendars/index.md +0 -0
  103. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/derivatives/futures.md +0 -0
  104. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/derivatives/index.md +0 -0
  105. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/execution/index.md +0 -0
  106. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/index.md +0 -0
  107. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/indices/index.md +0 -0
  108. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/migrations/index.md +0 -0
  109. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/models/index.md +0 -0
  110. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/platform/index.md +0 -0
  111. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/platform/meta_table_registration.md +0 -0
  112. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/platform/metatable_migrations.md +0 -0
  113. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/repositories/index.md +0 -0
  114. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm/services/index.md +0 -0
  115. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_portfolios/index.md +0 -0
  116. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_portfolios/portfolios/accounting.md +0 -0
  117. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/analytics.md +0 -0
  118. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/curves.md +0 -0
  119. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/fixings.md +0 -0
  120. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/index.md +0 -0
  121. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/instruments.md +0 -0
  122. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/market_data_sets.md +0 -0
  123. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/runtime_resolution.md +0 -0
  124. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/scenarios/curves.md +0 -0
  125. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/scenarios/index.md +0 -0
  126. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/knowledge/msm_pricing/scenarios/valuation.md +0 -0
  127. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/benchmark_curve_resolution_plan.md +0 -0
  128. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/bond_helper_curve_reconstruction_upstream_plan.md +0 -0
  129. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/cross_currency_helper_curve_reconstruction_upstream_plan.md +0 -0
  130. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/generic_curve_reconstruction_upstream_plan.md +0 -0
  131. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/generic_valuation_scenario_workflow_plan.md +0 -0
  132. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/index_formula_and_custom_calculation_plan.md +0 -0
  133. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/python_3_13_mainsequence_5_upgrade_plan.md +0 -0
  134. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/planning/implementation_tasks/reusable_valuation_portfolio_scenario_analytics_plan.md +0 -0
  135. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/reference/index.md +0 -0
  136. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/reference/indices.md +0 -0
  137. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/releasing.md +0 -0
  138. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/stylesheets/custom.css +0 -0
  139. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/01-assets.md +0 -0
  140. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/02-calendars.md +0 -0
  141. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/03-accounts.md +0 -0
  142. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/04-portfolios.md +0 -0
  143. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/05-pricing.md +0 -0
  144. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/06-index-formulas.md +0 -0
  145. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/tutorial/index.md +0 -0
  146. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/docs/upgrading-to-3.md +0 -0
  147. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/__init__.py +0 -0
  148. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/__init__.py +0 -0
  149. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/accounts/__init__.py +0 -0
  150. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/accounts/account_portfolio_full_workflow.py +0 -0
  151. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/accounts/account_virtual_fund_allocation_example.py +0 -0
  152. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/accounts/utils/__init__.py +0 -0
  153. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/accounts/utils/reference_data.py +0 -0
  154. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/__init__.py +0 -0
  155. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/asset_category_workflow.py +0 -0
  156. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/asset_crud_workflow.py +0 -0
  157. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/asset_type_constants.py +0 -0
  158. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/bond_workflow.py +0 -0
  159. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/currency_spot_workflow.py +0 -0
  160. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/derivatives/__init__.py +0 -0
  161. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/derivatives/crypto_future_without_figi.py +0 -0
  162. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/derivatives/index_future_from_openfigi.py +0 -0
  163. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/us_treasury_bond_workflow.py +0 -0
  164. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/utils/__init__.py +0 -0
  165. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/assets/utils/reference_data.py +0 -0
  166. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/calendars/__init__.py +0 -0
  167. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/calendars/calendar_materialization_workflow.py +0 -0
  168. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/http_provider_contracts.py +0 -0
  169. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/__init__.py +0 -0
  170. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/delta_hedged_option_index.py +0 -0
  171. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/extension_owned_index_storage.py +0 -0
  172. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/formula_index.py +0 -0
  173. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/index_values_frequency_migration.py +0 -0
  174. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/indices/plain_index_values.py +0 -0
  175. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/platform/__init__.py +0 -0
  176. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/platform/bootstrap.py +0 -0
  177. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/platform/custom_asset_details_extension.py +0 -0
  178. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/platform/inspect_markets_metatable_models.py +0 -0
  179. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/platform/metatable_migration_lifecycle.py +0 -0
  180. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/workflows/__init__.py +0 -0
  181. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm/workflows/asset_category_workflow.py +0 -0
  182. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_cashflows_and_fx_valuation_example.py +0 -0
  183. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_custom_cashflow_model_example.py +0 -0
  184. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_custom_valuation_column_example.py +0 -0
  185. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_equal_weights_config.py +0 -0
  186. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_equal_weights_dynamic_migration.py +0 -0
  187. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_equal_weights_example.py +0 -0
  188. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_equal_weights_prepare_schema.py +0 -0
  189. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_equal_weights_run.py +0 -0
  190. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_groups_example.py +0 -0
  191. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_midnight_timestamp_repair.py +0 -0
  192. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_perpetual_funding_example.py +0 -0
  193. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_read_services.py +0 -0
  194. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_trailing_adv_participation_example.py +0 -0
  195. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_portfolios/portfolio_trailing_adv_participation_preview.py +0 -0
  196. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/__init__.py +0 -0
  197. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/bond_pricing_example/README.md +0 -0
  198. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/bond_pricing_example/__init__.py +0 -0
  199. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/bond_pricing_example/main.py +0 -0
  200. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/bond_terms.py +0 -0
  201. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/curve_reconstruction.py +0 -0
  202. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/curve_scenario.py +0 -0
  203. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/fixed_income_spread_analytics.py +0 -0
  204. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/import_pricing_runtime.py +0 -0
  205. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/instrument_identity_boundary.py +0 -0
  206. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/pricing_registry_rows.py +0 -0
  207. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/pricing_valuation_context.py +0 -0
  208. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/resolved_curve_scenario.py +0 -0
  209. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/utils/__init__.py +0 -0
  210. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/utils/mock_market_data.py +0 -0
  211. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/valuation_inputs.py +0 -0
  212. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/examples/msm_pricing/valuation_scenario_workflow.py +0 -0
  213. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/mkdocs.yml +0 -0
  214. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/_deprecated_imports.py +0 -0
  215. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/analytics/__init__.py +0 -0
  216. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/analytics/indices/__init__.py +0 -0
  217. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/analytics/indices/contracts.py +0 -0
  218. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/analytics/indices/engine.py +0 -0
  219. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/analytics/indices/spreads.py +0 -0
  220. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/__init__.py +0 -0
  221. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/accounts.py +0 -0
  222. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/assets.py +0 -0
  223. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/base.py +0 -0
  224. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/__init__.py +0 -0
  225. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/_validation.py +0 -0
  226. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/core.py +0 -0
  227. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/dates.py +0 -0
  228. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/events.py +0 -0
  229. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/calendars/sessions.py +0 -0
  230. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/derivatives.py +0 -0
  231. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/execution.py +0 -0
  232. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/formula_indices.py +0 -0
  233. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/__init__.py +0 -0
  234. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/_base.py +0 -0
  235. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/bulk_actions.py +0 -0
  236. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/collections.py +0 -0
  237. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/discovery.py +0 -0
  238. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/errors.py +0 -0
  239. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/operations.py +0 -0
  240. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/table_impact.py +0 -0
  241. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/http/tabular.py +0 -0
  242. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/indices.py +0 -0
  243. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/issuers.py +0 -0
  244. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/portfolios.py +0 -0
  245. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/api/virtual_funds.py +0 -0
  246. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/base.py +0 -0
  247. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/bootstrap.py +0 -0
  248. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/client/__init__.py +0 -0
  249. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/client/client.py +0 -0
  250. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/client/discovery.py +0 -0
  251. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/constants.py +0 -0
  252. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/__init__.py +0 -0
  253. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/accounts/__init__.py +0 -0
  254. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/accounts/constants.py +0 -0
  255. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/accounts/storage.py +0 -0
  256. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/accounts/virtual_funds/__init__.py +0 -0
  257. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/accounts/virtual_funds/storage.py +0 -0
  258. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/assets/__init__.py +0 -0
  259. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/assets/asset_indexed.py +0 -0
  260. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/assets/snapshots.py +0 -0
  261. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/assets/storage.py +0 -0
  262. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/execution/__init__.py +0 -0
  263. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/execution/storage.py +0 -0
  264. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/indices/__init__.py +0 -0
  265. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/indices/formula.py +0 -0
  266. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/indices/storage.py +0 -0
  267. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/indices/timestamped.py +0 -0
  268. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/indices/values.py +0 -0
  269. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/__init__.py +0 -0
  270. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/namespaces.py +0 -0
  271. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/output_metadata.py +0 -0
  272. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/stamped.py +0 -0
  273. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/storage_schema.py +0 -0
  274. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/data_nodes/utils/time.py +0 -0
  275. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/identity.py +0 -0
  276. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/migrations/__init__.py +0 -0
  277. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/__init__.py +0 -0
  278. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/accounts/__init__.py +0 -0
  279. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/accounts/allocation_models.py +0 -0
  280. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/accounts/core.py +0 -0
  281. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/accounts/groups.py +0 -0
  282. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/accounts/virtual_funds.py +0 -0
  283. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/__init__.py +0 -0
  284. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/bonds.py +0 -0
  285. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/categories.py +0 -0
  286. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/core.py +0 -0
  287. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/currency_spot.py +0 -0
  288. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/provider_details.py +0 -0
  289. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/assets/types.py +0 -0
  290. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/calendars/__init__.py +0 -0
  291. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/calendars/core.py +0 -0
  292. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/calendars/dates.py +0 -0
  293. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/calendars/events.py +0 -0
  294. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/calendars/sessions.py +0 -0
  295. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/derivatives.py +0 -0
  296. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/execution.py +0 -0
  297. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/index_dataset_availability.py +0 -0
  298. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/index_formulas.py +0 -0
  299. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/indices.py +0 -0
  300. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/issuers.py +0 -0
  301. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/portfolio_dataset_availability.py +0 -0
  302. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/portfolios/__init__.py +0 -0
  303. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/portfolios/core.py +0 -0
  304. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/portfolios/groups.py +0 -0
  305. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/portfolios/signals.py +0 -0
  306. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/models/registration.py +0 -0
  307. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/py.typed +0 -0
  308. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/__init__.py +0 -0
  309. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/account_allocation_models.py +0 -0
  310. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/account_groups.py +0 -0
  311. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/accounts.py +0 -0
  312. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/asset_categories.py +0 -0
  313. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/assets.py +0 -0
  314. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/base.py +0 -0
  315. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/calendars/__init__.py +0 -0
  316. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/calendars/core.py +0 -0
  317. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/calendars/dates.py +0 -0
  318. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/calendars/events.py +0 -0
  319. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/calendars/sessions.py +0 -0
  320. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/crud.py +0 -0
  321. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/execution.py +0 -0
  322. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/indices.py +0 -0
  323. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/portfolios.py +0 -0
  324. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/provider_details.py +0 -0
  325. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/repositories/virtual_funds.py +0 -0
  326. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/__init__.py +0 -0
  327. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/__init__.py +0 -0
  328. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/account_virtual_allocations.py +0 -0
  329. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/core.py +0 -0
  330. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/virtual_fund_holdings.py +0 -0
  331. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/virtual_funds.py +0 -0
  332. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/accounts/virtual_funds_public_api.py +0 -0
  333. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/asset_categories.py +0 -0
  334. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/asset_master_lists.py +0 -0
  335. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/__init__.py +0 -0
  336. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/open_figi_lists/market_sector.json +0 -0
  337. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/open_figi_lists/security_type.json +0 -0
  338. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/open_figi_lists/security_type_2.json +0 -0
  339. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/openfigi.py +0 -0
  340. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/assets/reference_details.py +0 -0
  341. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/calendars/__init__.py +0 -0
  342. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/calendars/materialization.py +0 -0
  343. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/calendars/pandas_market.py +0 -0
  344. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/calendars/records.py +0 -0
  345. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/calendars/validation.py +0 -0
  346. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/execution.py +0 -0
  347. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/holdings.py +0 -0
  348. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/__init__.py +0 -0
  349. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/actors.py +0 -0
  350. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/availability.py +0 -0
  351. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/catalog.py +0 -0
  352. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/contracts.py +0 -0
  353. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/delete_impact.py +0 -0
  354. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/indices/relationships.py +0 -0
  355. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/portfolios.py +0 -0
  356. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/provider_details.py +0 -0
  357. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/public_api_settings.py +0 -0
  358. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/reference_data.py +0 -0
  359. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/related_meta_tables.py +0 -0
  360. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/table_impact.py +0 -0
  361. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/services/target_positions.py +0 -0
  362. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/settings.py +0 -0
  363. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/storage_copies.py +0 -0
  364. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/storage_instances.py +0 -0
  365. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/__init__.py +0 -0
  366. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/accounts/__init__.py +0 -0
  367. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/accounts/constants.py +0 -0
  368. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/accounts/storage.py +0 -0
  369. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/accounts/virtual_funds/__init__.py +0 -0
  370. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/accounts/virtual_funds/storage.py +0 -0
  371. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/assets/__init__.py +0 -0
  372. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/assets/asset_indexed.py +0 -0
  373. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/assets/snapshots.py +0 -0
  374. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/assets/storage.py +0 -0
  375. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/execution/__init__.py +0 -0
  376. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/execution/storage.py +0 -0
  377. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/indices/__init__.py +0 -0
  378. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/indices/formula.py +0 -0
  379. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/indices/storage.py +0 -0
  380. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/indices/timestamped.py +0 -0
  381. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/indices/values.py +0 -0
  382. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/__init__.py +0 -0
  383. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/namespaces.py +0 -0
  384. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/output_metadata.py +0 -0
  385. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/stamped.py +0 -0
  386. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/storage_schema.py +0 -0
  387. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm/time_index/utils/time.py +0 -0
  388. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_cli/__init__.py +0 -0
  389. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_cli/rename_preflight.py +0 -0
  390. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/__init__.py +0 -0
  391. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/env.py +0 -0
  392. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/registry.py +0 -0
  393. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/script.py.mako +0 -0
  394. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/__init__.py +0 -0
  395. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_examples/__init__.py +0 -0
  396. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0017_legacy_schema_anchor.py +0 -0
  397. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0018_initial_schema.py +0 -0
  398. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0019_ledger_hypertable_uniqueness.py +0 -0
  399. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0020_expected_columns.json +0 -0
  400. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0020_merge_legacy_schema.py +0 -0
  401. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0021_portfolio_dataset_catalog.py +0 -0
  402. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/0022_identity_named_uid_columns.py +0 -0
  403. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_migrations/versions/mainsequence_markets/__init__.py +0 -0
  404. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/__init__.py +0 -0
  405. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/__init__.py +0 -0
  406. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/configuration.py +0 -0
  407. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/contracts.py +0 -0
  408. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/lifecycle.py +0 -0
  409. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/projections.py +0 -0
  410. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/reducer.py +0 -0
  411. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/accounting/valuation.py +0 -0
  412. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/api/__init__.py +0 -0
  413. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/api/datasets.py +0 -0
  414. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/api/market_metadata.py +0 -0
  415. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/api/portfolios.py +0 -0
  416. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/asset_scope.py +0 -0
  417. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/bootstrap.py +0 -0
  418. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/configuration.py +0 -0
  419. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/__init__.py +0 -0
  420. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/prices/__init__.py +0 -0
  421. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/prices/data_nodes.py +0 -0
  422. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/prices/updaters.py +0 -0
  423. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/prices/utils.py +0 -0
  424. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/__init__.py +0 -0
  425. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/external_weights.py +0 -0
  426. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/fixed_weights.py +0 -0
  427. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/intraday_trend.py +0 -0
  428. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/market_cap.py +0 -0
  429. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/portfolio_replicator.py +0 -0
  430. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/contrib/signals/regression_utils.py +0 -0
  431. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/__init__.py +0 -0
  432. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/base.py +0 -0
  433. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/constants.py +0 -0
  434. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/contract_instances.py +0 -0
  435. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/metadata.py +0 -0
  436. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolio_identity.py +0 -0
  437. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/__init__.py +0 -0
  438. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/accounting.py +0 -0
  439. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/analytics.py +0 -0
  440. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/calendar_events.py +0 -0
  441. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/rebalance.py +0 -0
  442. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/storage.py +0 -0
  443. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/temporal.py +0 -0
  444. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/portfolios/weights.py +0 -0
  445. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/prices/__init__.py +0 -0
  446. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/prices/storage.py +0 -0
  447. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/signals/__init__.py +0 -0
  448. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/signals/storage.py +0 -0
  449. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/data_nodes/signals/weights.py +0 -0
  450. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/enums.py +0 -0
  451. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/models/__init__.py +0 -0
  452. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/models/portfolios/__init__.py +0 -0
  453. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/models/portfolios/metadata.py +0 -0
  454. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/models/rebalancing.py +0 -0
  455. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/models/signals.py +0 -0
  456. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/__init__.py +0 -0
  457. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/accounting.py +0 -0
  458. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/base.py +0 -0
  459. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/calendar_event.py +0 -0
  460. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/immediate_signal.py +0 -0
  461. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/liquidity_constrained.py +0 -0
  462. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/time_weighted.py +0 -0
  463. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/trailing_average_daily_volume.py +0 -0
  464. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/rebalance_strategy/volume_participation.py +0 -0
  465. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/repositories/__init__.py +0 -0
  466. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/repositories/market_metadata.py +0 -0
  467. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/__init__.py +0 -0
  468. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/calendars.py +0 -0
  469. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/market_metadata.py +0 -0
  470. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/portfolio_datasets.py +0 -0
  471. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/portfolio_reads.py +0 -0
  472. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/portfolio_timestamp_repair.py +0 -0
  473. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/public_api.py +0 -0
  474. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/services/series_moves.py +0 -0
  475. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/__init__.py +0 -0
  476. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/base.py +0 -0
  477. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/constants.py +0 -0
  478. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/contract_instances.py +0 -0
  479. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/metadata.py +0 -0
  480. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolio_identity.py +0 -0
  481. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/__init__.py +0 -0
  482. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/accounting.py +0 -0
  483. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/analytics.py +0 -0
  484. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/calendar_events.py +0 -0
  485. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/rebalance.py +0 -0
  486. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/storage.py +0 -0
  487. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/temporal.py +0 -0
  488. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/portfolios/weights.py +0 -0
  489. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/prices/__init__.py +0 -0
  490. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/prices/storage.py +0 -0
  491. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/signals/__init__.py +0 -0
  492. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/signals/storage.py +0 -0
  493. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/time_index/signals/weights.py +0 -0
  494. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_portfolios/utils.py +0 -0
  495. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/README.md +0 -0
  496. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/__init__.py +0 -0
  497. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/analytics/__init__.py +0 -0
  498. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/analytics/spreads/__init__.py +0 -0
  499. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/analytics/spreads/base.py +0 -0
  500. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/analytics/spreads/fixed_income.py +0 -0
  501. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/__init__.py +0 -0
  502. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/asset_pricing_operations.py +0 -0
  503. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/curve_building_details.py +0 -0
  504. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/curves.py +0 -0
  505. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/index_convention_details.py +0 -0
  506. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/instruments.py +0 -0
  507. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/market_data_bindings.py +0 -0
  508. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/api/pricing_details.py +0 -0
  509. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/bootstrap.py +0 -0
  510. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/config.py +0 -0
  511. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_interface/__init__.py +0 -0
  512. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_interface/data_interface.py +0 -0
  513. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/__init__.py +0 -0
  514. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/curve_codec.py +0 -0
  515. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/curves/__init__.py +0 -0
  516. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/curves/key_nodes.py +0 -0
  517. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/curves/storage.py +0 -0
  518. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/index_fixings/__init__.py +0 -0
  519. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/index_fixings/storage.py +0 -0
  520. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/pricing_details/__init__.py +0 -0
  521. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/data_nodes/pricing_details/storage.py +0 -0
  522. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/__init__.py +0 -0
  523. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/base_instrument.py +0 -0
  524. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/bond.py +0 -0
  525. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/bond_terms.py +0 -0
  526. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/callability.py +0 -0
  527. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/interest_rate_swap.py +0 -0
  528. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/json_codec.py +0 -0
  529. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/instruments/ql_fields.py +0 -0
  530. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/meta_tables.py +0 -0
  531. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/__init__.py +0 -0
  532. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/curve_building_details.py +0 -0
  533. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/curves.py +0 -0
  534. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/index_convention_details.py +0 -0
  535. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/market_data_bindings.py +0 -0
  536. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/models/pricing_details.py +0 -0
  537. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/__init__.py +0 -0
  538. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/bond_analytics.py +0 -0
  539. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/bond_pricer.py +0 -0
  540. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/coupon_schedules.py +0 -0
  541. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curve_overlays.py +0 -0
  542. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/__init__.py +0 -0
  543. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/adapters.py +0 -0
  544. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/bond_helper_key_nodes.py +0 -0
  545. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/bond_helpers.py +0 -0
  546. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/cross_currency_helpers.py +0 -0
  547. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/cross_currency_key_nodes.py +0 -0
  548. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/fixed_income_key_nodes.py +0 -0
  549. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/helper_key_nodes.py +0 -0
  550. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/helper_resolution.py +0 -0
  551. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/helpers.py +0 -0
  552. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/observations.py +0 -0
  553. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/quote_units.py +0 -0
  554. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/curves/reconstruction.py +0 -0
  555. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/indices.py +0 -0
  556. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/indices_builders.py +0 -0
  557. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/resolvers.py +0 -0
  558. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/pricing_engine/swap_pricer.py +0 -0
  559. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/__init__.py +0 -0
  560. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/curves/__init__.py +0 -0
  561. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/curves/engine.py +0 -0
  562. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/curves/key_node_bumps.py +0 -0
  563. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/curves/models.py +0 -0
  564. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/valuation/__init__.py +0 -0
  565. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/valuation/engine.py +0 -0
  566. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/valuation/impacts.py +0 -0
  567. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/valuation/line_pricing.py +0 -0
  568. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/scenarios/valuation/models.py +0 -0
  569. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/settings.py +0 -0
  570. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/__init__.py +0 -0
  571. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/curve_codec.py +0 -0
  572. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/curves/__init__.py +0 -0
  573. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/curves/key_nodes.py +0 -0
  574. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/curves/storage.py +0 -0
  575. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/index_fixings/__init__.py +0 -0
  576. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/index_fixings/storage.py +0 -0
  577. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/pricing_details/__init__.py +0 -0
  578. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/time_index/pricing_details/storage.py +0 -0
  579. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/utils.py +0 -0
  580. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/src/msm_pricing/valuation.py +0 -0
  581. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/__init__.py +0 -0
  582. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/PINNED_FROM.txt +0 -0
  583. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/README.md +0 -0
  584. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.inline-health-endpoint.json +0 -0
  585. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.retired-response-mappings.json +0 -0
  586. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.unknown-operation-field.json +0 -0
  587. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-public-config-v1.direct-source-mismatch.json +0 -0
  588. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-query-v1.retired-response-mapping-id.json +0 -0
  589. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-query-v1.unknown-field.json +0 -0
  590. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-secure-config-v1.unknown-field.json +0 -0
  591. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/app-component-authoring-v1.invalid-binding-port.json +0 -0
  592. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/app-component-authoring-v1.invalid-mock-version.json +0 -0
  593. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-discovery-v1.duplicate-selection-mode.json +0 -0
  594. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-discovery-v1.unsafe-endpoint.json +0 -0
  595. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-execution-v1.empty-explicit.json +0 -0
  596. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-execution-v1.presentation-filter.json +0 -0
  597. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-preflight-v1.invalid-blockers.json +0 -0
  598. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-preflight-v1.missing-allowed.json +0 -0
  599. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-collection-v1.negative-total.json +0 -0
  600. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-collection-v1.select-without-options.json +0 -0
  601. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.incomplete-generic-column.json +0 -0
  602. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.unknown-field.json +0 -0
  603. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.unsafe-identity.json +0 -0
  604. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.invalid-target-uid.json +0 -0
  605. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.missing-token.json +0 -0
  606. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.unknown-credential-error.json +0 -0
  607. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.unrestricted-user-credential.json +0 -0
  608. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.wrong-version.json +0 -0
  609. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.community-formula.json +0 -0
  610. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.invalid-selection.json +0 -0
  611. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.unknown-widget.json +0 -0
  612. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.invalid-table-visuals.json +0 -0
  613. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.long-with-value-fields.json +0 -0
  614. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.missing-rows.json +0 -0
  615. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.unknown-field-type.json +0 -0
  616. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-transform-authoring-v1.incomplete-pivot.json +0 -0
  617. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-transform-authoring-v1.latest-without-keys.json +0 -0
  618. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/workspace-document-v1.missing-id.json +0 -0
  619. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/workspace-document-v1.numeric-id.json +0 -0
  620. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-discovery-v1.orders.json +0 -0
  621. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-public-config-v1.backend.json +0 -0
  622. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-public-config-v1.direct.json +0 -0
  623. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-query-v1.operation.json +0 -0
  624. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-secure-config-v1.values.json +0 -0
  625. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/app-component-authoring-v1.manual.json +0 -0
  626. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/app-component-authoring-v1.mock-json.json +0 -0
  627. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-discovery-v1.archive.json +0 -0
  628. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-discovery-v1.empty.json +0 -0
  629. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-execution-v1.all-matching.json +0 -0
  630. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-execution-v1.explicit.json +0 -0
  631. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-preflight-v1.allowed.json +0 -0
  632. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-preflight-v1.blocked.json +0 -0
  633. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-collection-v1.minimal.json +0 -0
  634. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-collection-v1.with-controls.json +0 -0
  635. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-discovery-v1.records.json +0 -0
  636. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-error.json +0 -0
  637. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-request.json +0 -0
  638. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-response.json +0 -0
  639. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-runtime-starting.json +0 -0
  640. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.initialize.json +0 -0
  641. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.ready.json +0 -0
  642. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/table-widget-authoring-v1.pro-table.json +0 -0
  643. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/table-widget-authoring-v1.table.json +0 -0
  644. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.minimal.json +0 -0
  645. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.table-visuals.json +0 -0
  646. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.time-series.json +0 -0
  647. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-transform-authoring-v1.filter.json +0 -0
  648. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-transform-authoring-v1.pivot-latest.json +0 -0
  649. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/workspace-document-v1.minimal.json +0 -0
  650. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/workspace-document-v1.nested.json +0 -0
  651. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/manifest.json +0 -0
  652. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-discovery-v1.schema.json +0 -0
  653. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-public-config-v1.schema.json +0 -0
  654. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-query-v1.schema.json +0 -0
  655. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-secure-config-v1.schema.json +0 -0
  656. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/app-component-authoring-v1.schema.json +0 -0
  657. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-discovery-v1.schema.json +0 -0
  658. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-execution-v1.schema.json +0 -0
  659. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-preflight-v1.schema.json +0 -0
  660. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/resource-collection-v1.schema.json +0 -0
  661. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/resource-discovery-v1.schema.json +0 -0
  662. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/static-site-iframe-v1.schema.json +0 -0
  663. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/table-widget-authoring-v1.schema.json +0 -0
  664. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/tabular-frame-v1.schema.json +0 -0
  665. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/tabular-transform-authoring-v1.schema.json +0 -0
  666. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/contracts/command-center-sdk-v0.1.13/schemas/workspace-document-v1.schema.json +0 -0
  667. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/identity/__init__.py +0 -0
  668. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/identity/test_date_and_time_identities.py +0 -0
  669. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/identity/test_pinned_identities.py +0 -0
  670. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/__init__.py +0 -0
  671. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/__init__.py +0 -0
  672. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/calendars/__init__.py +0 -0
  673. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/calendars/test_rows.py +0 -0
  674. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_assets.py +0 -0
  675. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_bonds.py +0 -0
  676. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_composite_bulk_reads.py +0 -0
  677. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_derivatives.py +0 -0
  678. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_http.py +0 -0
  679. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_indices.py +0 -0
  680. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_issuers.py +0 -0
  681. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_portfolio_groups.py +0 -0
  682. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_renamed_fields.py +0 -0
  683. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_row_bulk_and_count.py +0 -0
  684. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/api/test_rows.py +0 -0
  685. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/assets/__init__.py +0 -0
  686. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/assets/test_asset_snapshots.py +0 -0
  687. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/assets/test_openfigi.py +0 -0
  688. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/bootstrap/__init__.py +0 -0
  689. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/bootstrap/test_bootstrap.py +0 -0
  690. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/client/__init__.py +0 -0
  691. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/client/test_discovery.py +0 -0
  692. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/client/test_remote_attachment.py +0 -0
  693. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/__init__.py +0 -0
  694. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/__init__.py +0 -0
  695. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_accounts.py +0 -0
  696. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_acting_identity.py +0 -0
  697. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_asset_categories.py +0 -0
  698. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_assets.py +0 -0
  699. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_batch_lookups.py +0 -0
  700. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_bulk_action_contracts.py +0 -0
  701. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_bulk_actions.py +0 -0
  702. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_calendars.py +0 -0
  703. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_catalog_aware_deletes.py +0 -0
  704. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_command_center_adapter.py +0 -0
  705. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_common.py +0 -0
  706. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_deployment_entrypoint.py +0 -0
  707. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_dev_cors.py +0 -0
  708. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_index_formula_routes.py +0 -0
  709. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_indices.py +0 -0
  710. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_lifespan_discovery.py +0 -0
  711. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_openapi.py +0 -0
  712. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_portfolio_groups.py +0 -0
  713. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_portfolio_signals.py +0 -0
  714. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_portfolios.py +0 -0
  715. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_pricing_assets.py +0 -0
  716. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_pricing_curves.py +0 -0
  717. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_pricing_market_data.py +0 -0
  718. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_request_identity.py +0 -0
  719. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_runtime_bootstrap.py +0 -0
  720. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_settings.py +0 -0
  721. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_sidecar_includes.py +0 -0
  722. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/fastapi/v1/test_virtual_funds.py +0 -0
  723. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/imports/__init__.py +0 -0
  724. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/imports/test_import.py +0 -0
  725. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_engine.py +0 -0
  726. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_examples.py +0 -0
  727. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_formula_index_contract.py +0 -0
  728. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_index_actor.py +0 -0
  729. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_index_availability.py +0 -0
  730. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_index_delete_impact.py +0 -0
  731. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_index_lifecycle_services.py +0 -0
  732. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_index_values.py +0 -0
  733. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_models_and_migration.py +0 -0
  734. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_provider_index_values.py +0 -0
  735. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_public_api.py +0 -0
  736. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_related_meta_tables.py +0 -0
  737. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_resolution_and_repository.py +0 -0
  738. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_spread_compatibility.py +0 -0
  739. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/indices/test_updaters.py +0 -0
  740. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/fixtures/legacy_0017.sql +0 -0
  741. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/test_identity_named_uid_columns_migration.py +0 -0
  742. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/test_ledger_hypertable_migration.py +0 -0
  743. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/test_legacy_schema_migration.py +0 -0
  744. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/test_migration_job.py +0 -0
  745. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/maintenance/test_migrations.py +0 -0
  746. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/models/__init__.py +0 -0
  747. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/models/calendars/__init__.py +0 -0
  748. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/models/calendars/test_tables.py +0 -0
  749. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/models/test_metatable_models.py +0 -0
  750. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/repositories/__init__.py +0 -0
  751. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/repositories/test_renamed_columns.py +0 -0
  752. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/repositories/test_repositories.py +0 -0
  753. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/assets/test_reference_details.py +0 -0
  754. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/calendars/__init__.py +0 -0
  755. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/calendars/test_materialization.py +0 -0
  756. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/test_account_virtual_allocations.py +0 -0
  757. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/test_latest_asset_references.py +0 -0
  758. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/services/test_table_impact.py +0 -0
  759. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_cli.py +0 -0
  760. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_constants.py +0 -0
  761. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_package_metadata.py +0 -0
  762. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_rename_preflight.py +0 -0
  763. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_schema_names.py +0 -0
  764. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_storage_copies.py +0 -0
  765. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/test_storage_instances.py +0 -0
  766. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/__init__.py +0 -0
  767. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_asset_indexed_updaters.py +0 -0
  768. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_contracts.py +0 -0
  769. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_datetime_normalization.py +0 -0
  770. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_deprecated_aliases.py +0 -0
  771. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_index_stamped_updaters.py +0 -0
  772. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_package_structure.py +0 -0
  773. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_provisioning_boundary.py +0 -0
  774. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm/time_index/test_target_positions_contracts.py +0 -0
  775. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/accounting/test_accounting.py +0 -0
  776. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/api/test_rows.py +0 -0
  777. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/configuration/test_prices_configuration.py +0 -0
  778. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/examples/test_equal_weight_portfolio_schema.py +0 -0
  779. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/examples/test_trailing_adv_participation_preview.py +0 -0
  780. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/imports/test_bootstrap.py +0 -0
  781. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/imports/test_boundaries.py +0 -0
  782. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/models/test_model_graph.py +0 -0
  783. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/services/test_calendars.py +0 -0
  784. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/services/test_portfolio_datasets.py +0 -0
  785. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/services/test_portfolio_reads.py +0 -0
  786. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/services/test_portfolio_timestamp_repair.py +0 -0
  787. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/services/test_series_moves.py +0 -0
  788. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/test_portfolios_logger.py +0 -0
  789. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_contract_instances.py +0 -0
  790. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_daily_price_interpolation.py +0 -0
  791. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_datetime_normalization.py +0 -0
  792. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_engine_instance_tables.py +0 -0
  793. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_portfolio_contracts.py +0 -0
  794. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_storage_first_surface.py +0 -0
  795. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_portfolios/time_index/test_virtual_fund_holdings_contracts.py +0 -0
  796. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/__init__.py +0 -0
  797. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/analytics/spreads/test_base.py +0 -0
  798. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/analytics/spreads/test_fixed_income.py +0 -0
  799. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/__init__.py +0 -0
  800. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_asset_pricing_operations.py +0 -0
  801. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_curve_building_details.py +0 -0
  802. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_curves.py +0 -0
  803. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_index_convention_details.py +0 -0
  804. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_instruments.py +0 -0
  805. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_market_data_bindings.py +0 -0
  806. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/api/test_pricing_details.py +0 -0
  807. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/data_interface/test_data_interface.py +0 -0
  808. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/examples/test_mock_market_data.py +0 -0
  809. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/__init__.py +0 -0
  810. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/test_base_instrument.py +0 -0
  811. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/test_benchmark_curve_resolution.py +0 -0
  812. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/test_bond_terms.py +0 -0
  813. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/test_floating_bond_roundtrip.py +0 -0
  814. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/instruments/test_index_uid_references.py +0 -0
  815. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/models/__init__.py +0 -0
  816. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/models/test_pricing_details.py +0 -0
  817. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/curves/test_bond_helper_reconstruction.py +0 -0
  818. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/curves/test_bond_helpers.py +0 -0
  819. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/curves/test_cross_currency_helpers.py +0 -0
  820. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/curves/test_reconstruction.py +0 -0
  821. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/test_curve_overlays.py +0 -0
  822. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/pricing_engine/test_resolvers.py +0 -0
  823. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/scenarios/curves/test_curve_scenarios.py +0 -0
  824. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/scenarios/curves/test_key_node_bumps.py +0 -0
  825. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/scenarios/curves/test_resolved_curve_scenarios.py +0 -0
  826. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/scenarios/valuation/test_line_pricing.py +0 -0
  827. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/scenarios/valuation/test_workflow.py +0 -0
  828. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_bond_pricing_example.py +0 -0
  829. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_bootstrap.py +0 -0
  830. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_config.py +0 -0
  831. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_meta_tables.py +0 -0
  832. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_package_boundaries.py +0 -0
  833. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/test_valuation.py +0 -0
  834. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/time_index/test_curves.py +0 -0
  835. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/msm_pricing/time_index/test_index_fixings.py +0 -0
  836. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/packaging/__init__.py +0 -0
  837. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/packaging/test_dev_release_version.py +0 -0
  838. {ms_markets-3.0.0.dev39 → ms_markets-3.0.1.dev41}/tests/packaging/test_distribution_sources.py +0 -0
@@ -7,6 +7,15 @@ and this project follows versioned releases.
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Removed
11
+
12
+ - The registry write allow-list of 3.0.0: `apps.v1.policy` and the Main Sequence
13
+ Constant `MARKETS_REGISTRY_WRITERS`. Which applications may trigger registry
14
+ writes is the platform's grant: an application reaches the Markets API only
15
+ when its workflow grants it the `MainSequenceMarkets` branch, and every
16
+ caller the API admits may write. `registry_write` still records the acting
17
+ identity of every write. A deployment that created the constant can delete it.
18
+
10
19
  ## [3.0.0] - 2026-10-26
11
20
 
12
21
  Breaking release 3.0.0. It renames the DataNode vocabulary to the MetaTables
@@ -287,6 +296,19 @@ portfolio and strategy identities do not change. Dependent packages declare
287
296
 
288
297
  ### Fixed
289
298
 
299
+ - Every hosted rollout since 2026-10-21 stopped at the `migrate-markets` Job
300
+ with `No package metadata was found for ms-markets`. Main Sequence images no
301
+ longer install the repository itself (platform ADR-080); Jobs and the Markets
302
+ API import it from `/workspace`. `msm`, the API and the CLI now read the version
303
+ through `msm.distribution.package_version()`, which falls back to the
304
+ checkout's `pyproject.toml` when the distribution is not installed.
305
+
306
+ - `requirements.txt`, the only dependency input of a Main Sequence image, still
307
+ pinned `mainsequence-metatable==0.1.51` after the floor moved to 0.1.57, so the
308
+ image lacked `metatables.envelope_contract`. It is regenerated with
309
+ `mainsequence code-repository sync`, and a test now fails when its pins differ
310
+ from `uv.lock`.
311
+
290
312
  - A storage instance built on a provider's declarative base copied each
291
313
  referenced Markets table whole, with that table's own foreign keys to tables
292
314
  that were not copied, so the provider's `metadata.sorted_tables` and Alembic
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: ms-markets
3
- Version: 3.0.0.dev39
3
+ Version: 3.0.1.dev41
4
4
  Summary: Financial markets ORM, engines, and application management extensions for Main Sequence.
5
5
  Project-URL: Changelog, https://github.com/mainsequence-projects/MainSequenceMarkets/blob/main/CHANGELOG.md
6
6
  Project-URL: Source, https://github.com/mainsequence-projects/MainSequenceMarkets
@@ -154,10 +154,11 @@ Organization admin can enable it: the declaration takes effect only when the
154
154
  person who pushes it is an Organization admin, and otherwise the resource fails
155
155
  before it deploys. Services enforce
156
156
  domain policy: ownership and Team scoping for
157
- portfolios, accounts, indexes and formula definitions, and application-level
158
- permissions such as "this application may register accounts". Writes keep
159
- running as the Markets workload, whose Writer grant is the single place writes
160
- are allowed; the API's policy decides who may trigger them.
157
+ portfolios, accounts, indexes and formula definitions. Writes keep running as
158
+ the Markets workload, whose Writer grant is the single place writes are
159
+ allowed. Which applications may trigger them is the platform's grant: an
160
+ application reaches the Markets API only when its workflow grants it the
161
+ `MainSequenceMarkets` branch.
161
162
 
162
163
  ### 4. Provider-owned namespaces and sidecars
163
164
 
@@ -393,13 +394,9 @@ Deviations and open items:
393
394
  - Ownership and Team scoping policies are not enforced yet; the helper gives
394
395
  every service one identity to authorize against, and the platform's own
395
396
  grants still apply to requester-bound reads.
396
- - Application-level permission ("this application may register accounts") is
397
- enforced by `apps.v1.policy`: an application (workload identity) triggers a
398
- registry write only when the `MARKETS_REGISTRY_WRITERS` constant lists its
399
- User uid for that resource or for `"*"`; otherwise the route returns `403`.
400
- People, requester-bound calls, Organization admins and calls outside a
401
- request are not restricted by it. A missing constant allows no application;
402
- an unreadable or malformed one fails closed with `503`.
397
+ - Application-level permission is the platform's grant, not a Markets
398
+ setting: an application whose workflow grants it the `MainSequenceMarkets`
399
+ branch reaches the API and may trigger registry writes.
403
400
  - `acts_for_requester: true` on the `markets-api` resource is required for a
404
401
  requester to be present. It is declared in
405
402
  `.mainsequence/workflows/ms-markets-api.yaml`, and it takes effect only when
@@ -419,7 +416,7 @@ route for:
419
416
  rebalancing uses, and the instance methods `FormulaIndex.activate()` and
420
417
  `retire()`. Schedules now read `CalendarSession.filter` with range bounds;
421
418
  activation and retirement go through `FormulaIndex.activate_definition` and
422
- `retire_definition`, which are policy-checked writes.
419
+ `retire_definition`, which are registry writes.
423
420
  - Added reads: `filter`/`count` range lookups (`__gte`, `__gt`, `__lte`,
424
421
  `__lt`); `AssetSnapshots.latest` by identifier, uid or ticker; `offset` on
425
422
  `GET /portfolio/values/`, which `MarketsClient.portfolio_values` uses to page
@@ -484,8 +481,8 @@ application still installs `ms-markets`. Deviations and refinements:
484
481
  branch, as the Markets API does for MetaTables.
485
482
  - Remote `delete` runs the resource's service delete with its preflight
486
483
  checks, and exists only where one exists.
487
- - Registry writes through these routes are subject to the registry write
488
- policy of decision 3.
484
+ - Registry writes through these routes run through `registry_write`, like the
485
+ service routes.
489
486
 
490
487
  ### 2026-10-25: step 1, missing routes
491
488
 
@@ -223,42 +223,11 @@ write and, after a successful write, records resource, action, row uid and the
223
223
  acting identity's uid and kind on the `apps.v1.identity` logger. No registry
224
224
  table has an author or owner column yet; when one does, the same hook supplies
225
225
  its value. Writes keep running as the Markets workload, whose `data_writer`
226
- role on `mainsequence.markets` is the single place writes are allowed; the API's
227
- policy decides who may trigger them.
228
-
229
- That policy is `apps.v1.policy.authorize_registry_write`, which `registry_write`
230
- runs before every registry write:
231
-
232
- | Acting identity | Registry writes |
233
- |---|---|
234
- | none (Markets' own Jobs, scripts, direct service calls) | allowed |
235
- | a requester-bound call (a person acting through an application) | allowed |
236
- | an Organization admin | allowed |
237
- | a person calling directly | allowed |
238
- | an application (workload identity) listed for the resource | allowed |
239
- | any other application | `403` |
240
-
241
- The allow-list is the Main Sequence Constant `MARKETS_REGISTRY_WRITERS` in the
242
- Markets deployment's Environment: a JSON object that maps a registry resource,
243
- as `registry_write` names it (`account`, `asset`, `asset-category`, `calendar`,
244
- `index`, `portfolio`, `portfolio-group`, `portfolio-signal`, `pricing-curve`,
245
- `pricing-market-data` and the resources added with the provider write routes), or
246
- `"*"`, to the User uids of the applications allowed to write it:
247
-
248
- ```json
249
- {"asset": ["<provider workload user uid>"], "*": ["<trusted workload user uid>"]}
250
- ```
251
-
252
- A missing constant allows no application. A value that is not such an object,
253
- or a constant the Markets workload cannot read, refuses every application write
254
- with `503`. Whether a caller is a person or an application is read from its
255
- User once and cached for ten minutes; the SDK caches the constant for ten
256
- minutes as well, so an edit takes effect within that time. The Markets workload
257
- needs `reader` on the constant:
258
-
259
- ```bash
260
- mainsequence constants access grant <MARKETS_REGISTRY_WRITERS constant uid> reader --user <markets workload user uid>
261
- ```
226
+ role on `mainsequence.markets` is the single place writes are allowed. Who may
227
+ trigger them is the platform's grant: an application's workload reaches the
228
+ Markets API only when its workflow grants it the `MainSequenceMarkets` branch
229
+ (see the [client guide](../../knowledge/msm/client/index.md)), and every caller
230
+ the API admits, person or application, may trigger registry writes.
262
231
 
263
232
  A requester is only present when the `markets-api` resource declares
264
233
  `acts_for_requester: true` in `.mainsequence/workflows/ms-markets-api.yaml`.
@@ -49,8 +49,7 @@ Writes (`create`, `upsert`, `update`, `delete`, `add`, `bulk_delete`,
49
49
  `create_from_pandas_calendar`, `reconcile_dataset_availability`, `upsert_many`,
50
50
  `add_many`, `create_index_curve_selection`, `upsert_index_curve_selection`,
51
51
  `publish`, `register`, `register_signal`, `unregister`, `unregister_signal`, `reconcile`, `activate_definition`,
52
- `retire_definition`) run through `registry_write`, so the registry write policy
53
- applies to applications.
52
+ `retire_definition`) run through `registry_write`, which records who made them.
54
53
  A table row class's `delete` runs the resource's service delete with its
55
54
  preflight checks and exists only for `asset`, `asset-category`, `calendar`,
56
55
  `index`, `portfolio` and `portfolio-group`. Composites that implement `delete`
@@ -67,8 +66,7 @@ the `msm_pricing.api` composites (`curve`, `curve-building-details`,
67
66
  | Status | Meaning | `error_type` |
68
67
  |---|---|---|
69
68
  | 400 | Invalid arguments | `ValueError`, `TypeError` |
70
- | 403 | The registry write policy refused this application | |
69
+ | 403 | The operation refused the acting identity | `PermissionError` or a subclass |
71
70
  | 404 | Unknown resource or operation, or the row was not found | `LookupError` |
72
71
  | 409 | The operation conflicted with existing rows | the conflict class name |
73
72
  | 501 | The operation is not offered remotely | `NotImplementedError` |
74
- | 503 | The registry write policy could not be read | |
@@ -61,14 +61,12 @@ access:
61
61
  | `MARKETS_API_RELEASE_UID` | Use this release instead of searching. |
62
62
  | `MARKETS_API_RELEASE_NAME`, `MARKETS_API_REPOSITORY_NAME` | Search for another release or repository name. |
63
63
 
64
- ## Writes And The Registry Write Policy
64
+ ## Writes
65
65
 
66
66
  Every create, upsert, update and delete runs through the Markets API's
67
- `registry_write`, so the registry write policy applies: an application may
68
- write a resource only when the Environment's `MARKETS_REGISTRY_WRITERS`
69
- constant lists its workload User uid for that resource or for `"*"`. A refused
70
- write raises `msm.api.remote.MarketsAccessError`, a `PermissionError`. See
71
- [the FastAPI guide](../../../fast_api/v1/index.md) for the constant's format.
67
+ `registry_write`, which records the acting identity on the API's audit log. Any
68
+ workload the platform admits to the Markets API may write; a refused operation
69
+ (`403`) raises `msm.api.remote.MarketsAccessError`, a `PermissionError`.
72
70
 
73
71
  A table row class's remote `delete` runs the resource's service delete, with
74
72
  its preflight checks, and exists only for `asset`, `asset-category`,
@@ -143,7 +141,6 @@ AssetSnapshots.publish([{"asset_identifier": "ACME", "time_index": as_of, "name"
143
141
  current = AssetSnapshots.latest(tickers=["ACME"])
144
142
  ```
145
143
 
146
- Their write-policy resources are `account-holdings` and `asset-snapshots`.
147
144
  `AssetSnapshots.latest` takes exactly one of `asset_identifiers`, `asset_uids`
148
145
  or `tickers` and returns each existing asset with its latest snapshot
149
146
  (`AssetSnapshotReference`: name, ticker, exchange code, snapshot time; `None`
@@ -153,7 +153,7 @@ Activating a successor closes the open predecessor at the successor's
153
153
  `valid_from`. Retired versions cannot be reactivated. `activate()` and
154
154
  `retire()` call the class methods `FormulaIndex.activate_definition(uid)` and
155
155
  `FormulaIndex.retire_definition(uid, valid_to=...)`, so they also run under the
156
- remote row backend (write-policy resource `formula-index`).
156
+ remote row backend.
157
157
 
158
158
  ## Preview Persisted Formulas
159
159
 
@@ -467,7 +467,7 @@ enters `update_hash`.
467
467
  An application on the remote row backend registers and reconciles the catalog
468
468
  with `msm_portfolios.api.datasets.PortfolioDatasets.register(...)`,
469
469
  `.reconcile(...)` and `.get(...)`, which run the services below on the Markets
470
- API (write-policy resource `portfolio-datasets`). `register` binds the
470
+ API. `register` binds the
471
471
  portfolio's current signal; `PortfolioDatasets.register_signal({"signal_uid":
472
472
  ..., "signal_meta_table_uid": ...})` binds any other signal, such as the earlier
473
473
  signals of a producer whose signal uid changes each run, after verifying the
@@ -587,8 +587,8 @@ first on a rollback. Calendar events are not copied: the engine rebuilds them.
587
587
  run the moves a provider callable returns (it receives `rollback=` when it
588
588
  accepts that argument); without `--execute` they only count.
589
589
  The operator needs `data_viewer` on the tables read, write access to the tables
590
- written (a rollback writes the core tables) and the write-policy resource
591
- `portfolio-datasets`; pause the provider's runs while a move or rollback runs.
590
+ written (a rollback writes the core tables); pause the provider's runs while a
591
+ move or rollback runs.
592
592
 
593
593
  ## Repair legacy midnight-indexed portfolio values
594
594
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  Design note, drafted 2026-10-25 for [ADR 0047](../../ADR/0047-markets-api-application-boundary.md)
6
6
  decision 2 and migration path step 2. Updated 2026-10-26: the remote row
7
- backend, `msm.client` and the registry write policy are implemented, with the
7
+ backend and `msm.client` are implemented, with the
8
8
  deviations recorded in the ADR's "step 2" implementation note (per-method
9
9
  dispatch instead of a `RowBackend` protocol, mixed backends per row class,
10
10
  release name `api`). The distribution split (order of work, step 5) is not. Step 1
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ms-markets"
7
- version = "3.0.0.dev39"
7
+ version = "3.0.1.dev41"
8
8
  description = "Financial markets ORM, engines, and application management extensions for Main Sequence."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13,<3.14"
@@ -1,8 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
- from importlib.metadata import version as _package_version
4
-
5
3
  from msm.bootstrap import start_engine
4
+ from msm.distribution import package_version
6
5
  from msm.constants import (
7
6
  ASSET_TYPE_BOND,
8
7
  ASSET_TYPE_CRYPTO,
@@ -30,7 +29,7 @@ from msm.constants import (
30
29
  INDEX_TYPE_INTEREST_RATE_DEFINITION,
31
30
  )
32
31
 
33
- __version__ = _package_version("ms-markets")
32
+ __version__ = package_version()
34
33
 
35
34
 
36
35
  __all__ = [
@@ -75,7 +75,7 @@ WRITE_OPERATIONS = frozenset(
75
75
  }
76
76
  )
77
77
  """Operations that create, update or delete registry rows; the API wraps them in
78
- ``registry_write`` so the registry write policy applies."""
78
+ ``registry_write``, which records who made them."""
79
79
 
80
80
 
81
81
  class RemoteBackend(Protocol):
@@ -0,0 +1,30 @@
1
+ """The ms-markets version, whether installed or run from its source checkout."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import tomllib
6
+ from importlib.metadata import PackageNotFoundError, version
7
+ from pathlib import Path
8
+
9
+ DISTRIBUTION_NAME = "ms-markets"
10
+ SOURCE_CHECKOUT_ROOT = Path(__file__).resolve().parents[2]
11
+
12
+
13
+ def package_version() -> str:
14
+ """Return the installed ms-markets version, else the one its checkout declares.
15
+
16
+ Main Sequence images run this repository from ``/workspace`` without
17
+ installing it (platform ADR-080), so a Job or the Markets API has no package
18
+ metadata for ``ms-markets``. Its ``pyproject.toml`` declares the version.
19
+ """
20
+ try:
21
+ return version(DISTRIBUTION_NAME)
22
+ except PackageNotFoundError:
23
+ pyproject = SOURCE_CHECKOUT_ROOT / "pyproject.toml"
24
+ if not pyproject.is_file():
25
+ raise RuntimeError("ms-markets package metadata is unavailable.") from None
26
+ project = tomllib.loads(pyproject.read_text(encoding="utf-8")).get("project", {})
27
+ declared = project.get("version")
28
+ if project.get("name") != DISTRIBUTION_NAME or not isinstance(declared, str) or not declared.strip():
29
+ raise RuntimeError("ms-markets package version is unavailable.") from None
30
+ return declared
@@ -3,8 +3,6 @@ from __future__ import annotations
3
3
  import argparse
4
4
  import json
5
5
  import sys
6
- import tomllib
7
- from importlib.metadata import PackageNotFoundError, distribution
8
6
  from pathlib import Path
9
7
  from typing import Any
10
8
 
@@ -149,13 +147,15 @@ def copy_msm_skills_command(
149
147
  code_repository_dir = path.expanduser().resolve(strict=False)
150
148
  destination_root = code_repository_dir / ".agents" / "skills" / MSM_SKILL_NAMESPACE
151
149
  source_label = _source_root_label(source_root)
150
+ from msm.distribution import package_version
151
+
152
152
  try:
153
153
  result = copy_scaffold_skills(
154
154
  code_repository_dir=code_repository_dir,
155
155
  library_name="ms-markets",
156
156
  namespace=MSM_SKILL_NAMESPACE,
157
157
  skills_path=source_root,
158
- pinned_version=_ms_markets_version(),
158
+ pinned_version=package_version(),
159
159
  command=MSM_SKILL_COPY_COMMAND,
160
160
  dry_run=dry_run,
161
161
  code_repository_guard=_copy_msm_skills_block_reason,
@@ -359,20 +359,6 @@ def _same_or_inside_path(path: Path, possible_parent: Path) -> bool:
359
359
  return resolved_path == resolved_parent or resolved_path.is_relative_to(resolved_parent)
360
360
 
361
361
 
362
- def _ms_markets_version() -> str:
363
- try:
364
- return distribution("ms-markets").version
365
- except PackageNotFoundError:
366
- pyproject = _ms_markets_source_checkout_root() / "pyproject.toml"
367
- if not pyproject.is_file():
368
- raise RuntimeError("ms-markets package metadata is unavailable.")
369
- project_config = tomllib.loads(pyproject.read_text(encoding="utf-8"))
370
- version = project_config.get("project", {}).get("version")
371
- if not isinstance(version, str) or not version.strip():
372
- raise RuntimeError("ms-markets package version is unavailable.")
373
- return version
374
-
375
-
376
362
  def _print_table(title: str, headers: list[str], rows: list[list[Any]]) -> None:
377
363
  print(title)
378
364
  if not rows:
@@ -129,20 +129,3 @@ def offline_postgresql_runtime(monkeypatch):
129
129
 
130
130
  monkeypatch.setattr(metatables.runtime_context, "get_runtime_context", get_runtime_context)
131
131
  return runtime
132
-
133
-
134
- @pytest.fixture(autouse=True)
135
- def offline_registry_write_policy(monkeypatch):
136
- """Evaluate the registry write policy without the platform (ADR 0047).
137
-
138
- By default no application is on the allow-list and every caller is a
139
- person, which is how the API behaved before the policy. Policy tests replace
140
- these with ``monkeypatch``.
141
- """
142
-
143
- from apps.v1 import policy
144
-
145
- monkeypatch.setattr(
146
- policy, "load_registry_writer_policy", lambda: policy.RegistryWriterPolicy(writers={})
147
- )
148
- monkeypatch.setattr(policy, "resolve_identity_type", lambda uid: "human")
@@ -17,7 +17,6 @@ from typing import Any
17
17
  import pytest
18
18
  from fastapi.testclient import TestClient
19
19
 
20
- from apps.v1 import policy
21
20
  from apps.v1.main import app
22
21
  from msm.api.accounts import Account
23
22
  from msm.api.assets import Asset, AssetCategory, CurrencySpot
@@ -218,28 +217,6 @@ def test_validation_errors_come_back_as_value_errors(remote) -> None:
218
217
  Asset.upsert(asset_type="equity")
219
218
 
220
219
 
221
- def test_the_write_policy_applies_to_remote_writes(monkeypatch, remote) -> None:
222
- monkeypatch.setattr(policy, "resolve_identity_type", lambda uid: "workload")
223
- monkeypatch.setattr(
224
- "msm.repositories.crud.upsert_model",
225
- lambda *args, **kwargs: pytest.fail("a refused write must not reach the runtime"),
226
- )
227
-
228
- with pytest.raises(MarketsAccessError, match="MARKETS_REGISTRY_WRITERS"):
229
- Asset.upsert(unique_identifier="ACME")
230
- assert isinstance(MarketsAccessError("x"), PermissionError)
231
-
232
-
233
- def test_reads_are_not_subject_to_the_write_policy(monkeypatch, remote) -> None:
234
- monkeypatch.setattr(policy, "resolve_identity_type", lambda uid: "workload")
235
- monkeypatch.setattr(
236
- "msm.repositories.crud.get_model_by_uid",
237
- lambda context, *, model, uid: {"rows": []},
238
- )
239
-
240
- assert Asset.get_by_uid(uuid.uuid4()) is None
241
-
242
-
243
220
  def test_start_engine_attaches_nothing_under_the_remote_backend(monkeypatch, remote) -> None:
244
221
  monkeypatch.setattr(
245
222
  "msm.bootstrap.start_engine",
@@ -410,15 +387,20 @@ def test_holdings_and_snapshots_publish_through_markets(monkeypatch, remote) ->
410
387
  ("formula-index", "retire_definition", {"definition_uid": str(uuid.uuid4())}),
411
388
  ],
412
389
  )
413
- def test_every_publication_and_catalog_write_is_policy_checked(
390
+ def test_every_publication_and_catalog_write_is_a_registry_write(
414
391
  monkeypatch, remote, resource, operation, arguments
415
392
  ) -> None:
416
393
  from msm.api.remote import WRITE_OPERATIONS
417
394
 
418
- monkeypatch.setattr(policy, "resolve_identity_type", lambda uid: "workload")
395
+ def resolve() -> None:
396
+ raise PermissionError("registry_write resolved the acting identity")
397
+
398
+ # registry_write resolves the acting identity before the operation runs; the
399
+ # refusal comes back as the client's PermissionError.
400
+ monkeypatch.setattr("apps.v1.identity.acting_identity", resolve)
419
401
 
420
402
  assert operation in WRITE_OPERATIONS
421
- with pytest.raises(MarketsAccessError, match="MARKETS_REGISTRY_WRITERS"):
403
+ with pytest.raises(MarketsAccessError, match="registry_write resolved the acting identity"):
422
404
  remote.client.run_row_operation(resource, operation, arguments)
423
405
 
424
406
 
@@ -0,0 +1,63 @@
1
+ """ms-markets must know its version when Main Sequence runs it without installing it."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import re
6
+ import tomllib
7
+ from importlib.metadata import PackageNotFoundError
8
+ from pathlib import Path
9
+
10
+ import pytest
11
+
12
+ from msm import distribution
13
+
14
+ REPOSITORY_ROOT = Path(__file__).resolve().parents[2]
15
+ DECLARED_VERSION = tomllib.loads((REPOSITORY_ROOT / "pyproject.toml").read_text(encoding="utf-8"))[
16
+ "project"
17
+ ]["version"]
18
+
19
+
20
+ def _not_installed(name: str) -> str:
21
+ raise PackageNotFoundError(name)
22
+
23
+
24
+ def test_installed_metadata_is_preferred(monkeypatch):
25
+ monkeypatch.setattr(distribution, "version", lambda name: "9.9.9")
26
+
27
+ assert distribution.package_version() == "9.9.9"
28
+
29
+
30
+ def test_source_checkout_declares_the_version_when_not_installed(monkeypatch):
31
+ # Main Sequence images run /workspace via PYTHONPATH without installing it (ADR-080).
32
+ monkeypatch.setattr(distribution, "version", _not_installed)
33
+
34
+ assert distribution.package_version() == DECLARED_VERSION
35
+
36
+
37
+ def test_missing_checkout_and_metadata_fail_clearly(monkeypatch, tmp_path):
38
+ monkeypatch.setattr(distribution, "version", _not_installed)
39
+ monkeypatch.setattr(distribution, "SOURCE_CHECKOUT_ROOT", tmp_path)
40
+
41
+ with pytest.raises(RuntimeError, match="metadata is unavailable"):
42
+ distribution.package_version()
43
+
44
+
45
+ def test_another_projects_pyproject_is_not_read_as_ms_markets(monkeypatch, tmp_path):
46
+ (tmp_path / "pyproject.toml").write_text('[project]\nname = "other"\nversion = "1.0.0"\n', encoding="utf-8")
47
+ monkeypatch.setattr(distribution, "version", _not_installed)
48
+ monkeypatch.setattr(distribution, "SOURCE_CHECKOUT_ROOT", tmp_path)
49
+
50
+ with pytest.raises(RuntimeError, match="version is unavailable"):
51
+ distribution.package_version()
52
+
53
+
54
+ def test_only_the_distribution_module_reads_ms_markets_metadata():
55
+ lookup = re.compile(r"""(version|distribution|metadata)\(\s*["']ms-markets["']""")
56
+ offenders = [
57
+ str(path.relative_to(REPOSITORY_ROOT))
58
+ for root in ("src", "apps", "jobs")
59
+ for path in (REPOSITORY_ROOT / root).rglob("*.py")
60
+ if lookup.search(path.read_text(encoding="utf-8"))
61
+ ]
62
+
63
+ assert offenders == []
@@ -0,0 +1,28 @@
1
+ """Main Sequence images install requirements.txt only, so it must match uv.lock."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import re
6
+ import tomllib
7
+ from pathlib import Path
8
+
9
+ REPOSITORY_ROOT = Path(__file__).resolve().parents[2]
10
+ PIN = re.compile(r"^([A-Za-z0-9_.-]+)==([^\s;]+)")
11
+
12
+
13
+ def _canonical(name: str) -> str:
14
+ return re.sub(r"[-_.]+", "-", name).lower()
15
+
16
+
17
+ def test_requirements_pins_match_the_lockfile():
18
+ # Regenerate with `mainsequence code-repository sync` after a dependency change.
19
+ lock = tomllib.loads((REPOSITORY_ROOT / "uv.lock").read_text(encoding="utf-8"))
20
+ locked = {_canonical(package["name"]): package["version"] for package in lock["package"]}
21
+ pins = {
22
+ _canonical(match[1]): match[2]
23
+ for line in (REPOSITORY_ROOT / "requirements.txt").read_text(encoding="utf-8").splitlines()
24
+ if (match := PIN.match(line))
25
+ }
26
+
27
+ assert pins
28
+ assert {name: version for name, version in pins.items() if locked.get(name) != version} == {}