ms-markets 2.1.2__tar.gz → 2.2.0.dev4__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 (731) hide show
  1. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/CHANGELOG.md +33 -1
  2. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/PKG-INFO +3 -3
  3. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/README.md +2 -2
  4. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0034-command-center-asset-monitor-helpers.md +5 -1
  5. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/assets.md +1 -0
  6. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/command_center_bulk_actions.md +2 -3
  7. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/fixed_income_pricer.md +4 -6
  8. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/index.md +2 -2
  9. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/provider_adapter_toolkit.md +14 -8
  10. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/resource_contracts.md +1 -2
  11. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/index.md +0 -1
  12. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/01-assets.md +0 -19
  13. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/mkdocs.yml +0 -3
  14. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/pyproject.toml +1 -2
  15. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/__init__.py +16 -0
  16. {ms_markets-2.1.2/src/msm_command_center/contracts → ms_markets-2.2.0.dev4/src/msm/api/http}/tabular.py +14 -40
  17. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/asset_pricing_operations.py +2 -32
  18. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_http.py +0 -6
  19. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_assets.py +1 -1
  20. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_bulk_action_contracts.py +3 -0
  21. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_command_center_adapter.py +7 -7
  22. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_openapi.py +1 -2
  23. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_asset_pricing_operations.py +1 -1
  24. ms_markets-2.1.2/.agents/skills/ms_markets/command_center/asset_monitor/SKILL.md +0 -134
  25. ms_markets-2.1.2/.agents/skills/ms_markets/workspaces/asset_monitor/SKILL.md +0 -310
  26. ms_markets-2.1.2/docs/command_center/asset_monitor.md +0 -151
  27. ms_markets-2.1.2/docs/command_center/index.md +0 -36
  28. ms_markets-2.1.2/examples/msm/command_center/asset_monitor_frame.py +0 -34
  29. ms_markets-2.1.2/src/msm_command_center/__init__.py +0 -21
  30. ms_markets-2.1.2/src/msm_command_center/contracts/__init__.py +0 -21
  31. ms_markets-2.1.2/src/msm_command_center/widgets/__init__.py +0 -2
  32. ms_markets-2.1.2/src/msm_command_center/widgets/asset_monitor.py +0 -302
  33. ms_markets-2.1.2/src/msm_command_center/workspaces/__init__.py +0 -2
  34. ms_markets-2.1.2/src/msm_command_center/workspaces/asset_monitor.py +0 -130
  35. ms_markets-2.1.2/tests/msm/command_center/test_asset_monitor.py +0 -74
  36. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/accounts/account_workflow/SKILL.md +0 -0
  37. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/accounts/valuation_resolver/SKILL.md +0 -0
  38. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/assets/asset_indexed_data_nodes/SKILL.md +0 -0
  39. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/assets/asset_model_extension/SKILL.md +0 -0
  40. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/indices/index_workflow/SKILL.md +0 -0
  41. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/platform/bootstrap_registration/SKILL.md +0 -0
  42. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/platform/metatable_migrations/SKILL.md +0 -0
  43. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/portfolios/portfolio_workflow/SKILL.md +0 -0
  44. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/portfolios/portfolio_workflow/references/position_accounting.md +0 -0
  45. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/pricing/fixed_income_curve_building/SKILL.md +0 -0
  46. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.agents/skills/ms_markets/pricing/general_pricing/SKILL.md +0 -0
  47. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/.gitignore +0 -0
  48. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/LICENSE +0 -0
  49. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0005-pricing-package-refactor.md +0 -0
  50. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0006-asset-package-boundary.md +0 -0
  51. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0008-metatable-table-and-api-model-split.md +0 -0
  52. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0019-msm-portfolios-package-boundary.md +0 -0
  53. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0022-alembic-metatable-migration-alignment.md +0 -0
  54. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0023-deterministic-alembic-naming.md +0 -0
  55. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0024-namespace-scoped-alembic-version-locations.md +0 -0
  56. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0025-direct-metatable-runtime-binding.md +0 -0
  57. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0026-explicit-pricing-market-data-sets.md +0 -0
  58. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0027-account-target-position-portfolio-exposure.md +0 -0
  59. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0028-core-calendar-reference-data.md +0 -0
  60. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0029-account-holdings-virtual-fund-allocation-policy.md +0 -0
  61. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0030-explicit-portfolio-price-source-dependency.md +0 -0
  62. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0031-generic-portfolio-valuation-source.md +0 -0
  63. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0032-portfolio-group-many-to-many.md +0 -0
  64. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0033-pricing-valuation-position-boundary.md +0 -0
  65. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0035-pricing-curve-identity-and-market-data-curve-bindings.md +0 -0
  66. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0036-prepared-pricing-valuation-context.md +0 -0
  67. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0037-index-formula-and-custom-calculation-framework.md +0 -0
  68. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0038-index-user-api-and-fastapi-exploration.md +0 -0
  69. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0039-sdk-8-hard-cut-and-1-0-package-contract.md +0 -0
  70. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0040-portfolio-temporal-ownership.md +0 -0
  71. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0041-installable-provider-http-toolkit.md +0 -0
  72. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0042-position-cash-flow-portfolio-accounting.md +0 -0
  73. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0043-sdk-9-metatables-client-hard-cut.md +0 -0
  74. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0044-namespaced-migration-provider-package.md +0 -0
  75. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/0045-squashed-initial-schema-and-namespaced-packages.md +0 -0
  76. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/README.md +0 -0
  77. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/fast_api/v1/0001-calendar-crud-route.md +0 -0
  78. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/fast_api/v1/0002-command-center-adapter-discovery.md +0 -0
  79. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/fast_api/v1/0003-fixed-income-pricer-api.md +0 -0
  80. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/ADR/fast_api/v1/0004-delete-impact-contract.md +0 -0
  81. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/changelog.md +0 -0
  82. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/concepts.md +0 -0
  83. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/accounts.md +0 -0
  84. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/calendars.md +0 -0
  85. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/indexes.md +0 -0
  86. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/portfolio.md +0 -0
  87. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/portfolio_groups.md +0 -0
  88. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/portfolio_signal_metadata.md +0 -0
  89. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/pricing_curves.md +0 -0
  90. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/pricing_market_data.md +0 -0
  91. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/settings.md +0 -0
  92. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/fast_api/v1/virtualfund.md +0 -0
  93. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/getting-started.md +0 -0
  94. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_alternate_lockup_black_bg.png +0 -0
  95. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_alternate_lockup_transparent.png +0 -0
  96. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_icon_emblem_black_bg.png +0 -0
  97. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_icon_emblem_transparent.png +0 -0
  98. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_market_mark_only_black_bg.png +0 -0
  99. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_market_mark_only_transparent.png +0 -0
  100. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_primary_wordmark_black_bg.png +0 -0
  101. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/img/main-sequence-markets/main_sequence_markets_primary_wordmark_transparent.png +0 -0
  102. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/accounts/index.md +0 -0
  103. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/accounts/virtual_funds.md +0 -0
  104. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/assets/asset_indexed_data_nodes.md +0 -0
  105. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/assets/bonds.md +0 -0
  106. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/assets/currency.md +0 -0
  107. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/assets/index.md +0 -0
  108. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/calendars/index.md +0 -0
  109. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/client/index.md +0 -0
  110. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/derivatives/futures.md +0 -0
  111. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/derivatives/index.md +0 -0
  112. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/execution/index.md +0 -0
  113. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/index.md +0 -0
  114. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/indices/formula_indexes.md +0 -0
  115. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/indices/index.md +0 -0
  116. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/migrations/index.md +0 -0
  117. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/models/index.md +0 -0
  118. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/platform/index.md +0 -0
  119. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/platform/meta_table_registration.md +0 -0
  120. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/platform/metatable_migrations.md +0 -0
  121. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/repositories/index.md +0 -0
  122. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm/services/index.md +0 -0
  123. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_portfolios/index.md +0 -0
  124. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_portfolios/portfolios/accounting.md +0 -0
  125. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_portfolios/portfolios/index.md +0 -0
  126. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/analytics.md +0 -0
  127. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/curves.md +0 -0
  128. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/fixings.md +0 -0
  129. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/index.md +0 -0
  130. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/instruments.md +0 -0
  131. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/market_data_sets.md +0 -0
  132. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/runtime_resolution.md +0 -0
  133. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/scenarios/curves.md +0 -0
  134. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/scenarios/index.md +0 -0
  135. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/knowledge/msm_pricing/scenarios/valuation.md +0 -0
  136. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/benchmark_curve_resolution_plan.md +0 -0
  137. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/bond_helper_curve_reconstruction_upstream_plan.md +0 -0
  138. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/cross_currency_helper_curve_reconstruction_upstream_plan.md +0 -0
  139. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/generic_curve_reconstruction_upstream_plan.md +0 -0
  140. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/generic_valuation_scenario_workflow_plan.md +0 -0
  141. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/index_formula_and_custom_calculation_plan.md +0 -0
  142. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/python_3_13_mainsequence_5_upgrade_plan.md +0 -0
  143. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/planning/implementation_tasks/reusable_valuation_portfolio_scenario_analytics_plan.md +0 -0
  144. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/reference/index.md +0 -0
  145. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/reference/indices.md +0 -0
  146. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/releasing.md +0 -0
  147. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/stylesheets/custom.css +0 -0
  148. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/02-calendars.md +0 -0
  149. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/03-accounts.md +0 -0
  150. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/04-portfolios.md +0 -0
  151. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/05-pricing.md +0 -0
  152. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/06-index-formulas.md +0 -0
  153. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/docs/tutorial/index.md +0 -0
  154. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/__init__.py +0 -0
  155. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/__init__.py +0 -0
  156. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/accounts/__init__.py +0 -0
  157. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/accounts/account_portfolio_full_workflow.py +0 -0
  158. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/accounts/account_virtual_fund_allocation_example.py +0 -0
  159. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/accounts/utils/__init__.py +0 -0
  160. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/accounts/utils/reference_data.py +0 -0
  161. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/__init__.py +0 -0
  162. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/asset_category_workflow.py +0 -0
  163. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/asset_crud_workflow.py +0 -0
  164. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/asset_type_constants.py +0 -0
  165. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/bond_workflow.py +0 -0
  166. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/currency_spot_workflow.py +0 -0
  167. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/derivatives/__init__.py +0 -0
  168. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/derivatives/crypto_future_without_figi.py +0 -0
  169. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/derivatives/index_future_from_openfigi.py +0 -0
  170. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/us_treasury_bond_workflow.py +0 -0
  171. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/utils/__init__.py +0 -0
  172. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/assets/utils/reference_data.py +0 -0
  173. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/calendars/__init__.py +0 -0
  174. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/calendars/calendar_materialization_workflow.py +0 -0
  175. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/http_provider_contracts.py +0 -0
  176. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/__init__.py +0 -0
  177. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/delta_hedged_option_index.py +0 -0
  178. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/extension_owned_index_storage.py +0 -0
  179. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/formula_index.py +0 -0
  180. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/index_values_frequency_migration.py +0 -0
  181. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/indices/plain_index_values.py +0 -0
  182. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/platform/__init__.py +0 -0
  183. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/platform/bootstrap.py +0 -0
  184. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/platform/custom_asset_details_extension.py +0 -0
  185. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/platform/inspect_markets_metatable_models.py +0 -0
  186. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/platform/metatable_migration_lifecycle.py +0 -0
  187. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/workflows/__init__.py +0 -0
  188. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm/workflows/asset_category_workflow.py +0 -0
  189. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_cashflows_and_fx_valuation_example.py +0 -0
  190. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_custom_cashflow_model_example.py +0 -0
  191. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_custom_valuation_column_example.py +0 -0
  192. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_equal_weights_config.py +0 -0
  193. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_equal_weights_dynamic_migration.py +0 -0
  194. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_equal_weights_example.py +0 -0
  195. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_equal_weights_prepare_schema.py +0 -0
  196. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_equal_weights_run.py +0 -0
  197. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_groups_example.py +0 -0
  198. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_midnight_timestamp_repair.py +0 -0
  199. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_perpetual_funding_example.py +0 -0
  200. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_read_services.py +0 -0
  201. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_trailing_adv_participation_example.py +0 -0
  202. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_portfolios/portfolio_trailing_adv_participation_preview.py +0 -0
  203. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/__init__.py +0 -0
  204. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/bond_pricing_example/README.md +0 -0
  205. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/bond_pricing_example/__init__.py +0 -0
  206. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/bond_pricing_example/main.py +0 -0
  207. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/bond_terms.py +0 -0
  208. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/curve_reconstruction.py +0 -0
  209. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/curve_scenario.py +0 -0
  210. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/fixed_income_spread_analytics.py +0 -0
  211. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/import_pricing_runtime.py +0 -0
  212. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/instrument_identity_boundary.py +0 -0
  213. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/pricing_registry_rows.py +0 -0
  214. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/pricing_valuation_context.py +0 -0
  215. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/resolved_curve_scenario.py +0 -0
  216. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/utils/__init__.py +0 -0
  217. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/utils/mock_market_data.py +0 -0
  218. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/valuation_inputs.py +0 -0
  219. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/examples/msm_pricing/valuation_scenario_workflow.py +0 -0
  220. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/__init__.py +0 -0
  221. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/analytics/__init__.py +0 -0
  222. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/analytics/indices/__init__.py +0 -0
  223. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/analytics/indices/contracts.py +0 -0
  224. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/analytics/indices/engine.py +0 -0
  225. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/analytics/indices/spreads.py +0 -0
  226. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/__init__.py +0 -0
  227. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/accounts.py +0 -0
  228. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/assets.py +0 -0
  229. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/base.py +0 -0
  230. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/__init__.py +0 -0
  231. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/_validation.py +0 -0
  232. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/core.py +0 -0
  233. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/dates.py +0 -0
  234. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/events.py +0 -0
  235. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/calendars/sessions.py +0 -0
  236. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/derivatives.py +0 -0
  237. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/execution.py +0 -0
  238. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/formula_indices.py +0 -0
  239. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/_base.py +0 -0
  240. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/bulk_actions.py +0 -0
  241. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/collections.py +0 -0
  242. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/discovery.py +0 -0
  243. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/errors.py +0 -0
  244. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/http/operations.py +0 -0
  245. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/indices.py +0 -0
  246. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/issuers.py +0 -0
  247. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/portfolios.py +0 -0
  248. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/api/virtual_funds.py +0 -0
  249. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/base.py +0 -0
  250. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/bootstrap.py +0 -0
  251. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/constants.py +0 -0
  252. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/__init__.py +0 -0
  253. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/accounts/__init__.py +0 -0
  254. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/accounts/constants.py +0 -0
  255. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/accounts/storage.py +0 -0
  256. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/accounts/virtual_funds/__init__.py +0 -0
  257. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/accounts/virtual_funds/storage.py +0 -0
  258. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/assets/__init__.py +0 -0
  259. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/assets/asset_indexed.py +0 -0
  260. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/assets/snapshots.py +0 -0
  261. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/assets/storage.py +0 -0
  262. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/execution/__init__.py +0 -0
  263. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/execution/storage.py +0 -0
  264. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/indices/__init__.py +0 -0
  265. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/indices/formula.py +0 -0
  266. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/indices/storage.py +0 -0
  267. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/indices/timestamped.py +0 -0
  268. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/indices/values.py +0 -0
  269. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/__init__.py +0 -0
  270. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/namespaces.py +0 -0
  271. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/output_metadata.py +0 -0
  272. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/stamped.py +0 -0
  273. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/storage_schema.py +0 -0
  274. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/data_nodes/utils/time.py +0 -0
  275. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/migrations/__init__.py +0 -0
  276. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/__init__.py +0 -0
  277. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/accounts/__init__.py +0 -0
  278. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/accounts/allocation_models.py +0 -0
  279. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/accounts/core.py +0 -0
  280. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/accounts/groups.py +0 -0
  281. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/accounts/virtual_funds.py +0 -0
  282. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/__init__.py +0 -0
  283. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/bonds.py +0 -0
  284. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/categories.py +0 -0
  285. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/core.py +0 -0
  286. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/currency_spot.py +0 -0
  287. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/provider_details.py +0 -0
  288. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/assets/types.py +0 -0
  289. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/calendars/__init__.py +0 -0
  290. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/calendars/core.py +0 -0
  291. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/calendars/dates.py +0 -0
  292. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/calendars/events.py +0 -0
  293. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/calendars/sessions.py +0 -0
  294. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/derivatives.py +0 -0
  295. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/execution.py +0 -0
  296. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/index_dataset_availability.py +0 -0
  297. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/index_formulas.py +0 -0
  298. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/indices.py +0 -0
  299. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/issuers.py +0 -0
  300. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/portfolios/__init__.py +0 -0
  301. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/portfolios/core.py +0 -0
  302. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/portfolios/groups.py +0 -0
  303. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/portfolios/signals.py +0 -0
  304. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/models/registration.py +0 -0
  305. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/py.typed +0 -0
  306. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/__init__.py +0 -0
  307. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/account_allocation_models.py +0 -0
  308. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/account_groups.py +0 -0
  309. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/accounts.py +0 -0
  310. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/asset_categories.py +0 -0
  311. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/assets.py +0 -0
  312. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/base.py +0 -0
  313. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/calendars/__init__.py +0 -0
  314. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/calendars/core.py +0 -0
  315. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/calendars/dates.py +0 -0
  316. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/calendars/events.py +0 -0
  317. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/calendars/sessions.py +0 -0
  318. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/crud.py +0 -0
  319. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/execution.py +0 -0
  320. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/indices.py +0 -0
  321. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/portfolios.py +0 -0
  322. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/provider_details.py +0 -0
  323. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/repositories/virtual_funds.py +0 -0
  324. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/__init__.py +0 -0
  325. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/__init__.py +0 -0
  326. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/account_virtual_allocations.py +0 -0
  327. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/core.py +0 -0
  328. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/virtual_fund_holdings.py +0 -0
  329. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/virtual_funds.py +0 -0
  330. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/accounts/virtual_funds_public_api.py +0 -0
  331. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/asset_categories.py +0 -0
  332. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/asset_master_lists.py +0 -0
  333. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/__init__.py +0 -0
  334. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/open_figi_lists/market_sector.json +0 -0
  335. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/open_figi_lists/security_type.json +0 -0
  336. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/open_figi_lists/security_type_2.json +0 -0
  337. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/openfigi.py +0 -0
  338. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/assets/reference_details.py +0 -0
  339. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/calendars/__init__.py +0 -0
  340. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/calendars/materialization.py +0 -0
  341. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/calendars/pandas_market.py +0 -0
  342. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/calendars/records.py +0 -0
  343. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/calendars/validation.py +0 -0
  344. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/execution.py +0 -0
  345. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/holdings.py +0 -0
  346. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/__init__.py +0 -0
  347. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/actors.py +0 -0
  348. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/availability.py +0 -0
  349. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/catalog.py +0 -0
  350. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/contracts.py +0 -0
  351. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/delete_impact.py +0 -0
  352. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/indices/relationships.py +0 -0
  353. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/portfolios.py +0 -0
  354. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/provider_details.py +0 -0
  355. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/public_api_settings.py +0 -0
  356. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/reference_data.py +0 -0
  357. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/related_meta_tables.py +0 -0
  358. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/services/target_positions.py +0 -0
  359. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm/settings.py +0 -0
  360. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_cli/__init__.py +0 -0
  361. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_cli/main.py +0 -0
  362. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/__init__.py +0 -0
  363. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/env.py +0 -0
  364. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/registry.py +0 -0
  365. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/script.py.mako +0 -0
  366. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/versions/__init__.py +0 -0
  367. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/versions/mainsequence_examples/__init__.py +0 -0
  368. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/versions/mainsequence_markets/0018_initial_schema.py +0 -0
  369. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_migrations/versions/mainsequence_markets/__init__.py +0 -0
  370. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/__init__.py +0 -0
  371. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/__init__.py +0 -0
  372. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/configuration.py +0 -0
  373. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/contracts.py +0 -0
  374. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/lifecycle.py +0 -0
  375. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/projections.py +0 -0
  376. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/reducer.py +0 -0
  377. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/accounting/valuation.py +0 -0
  378. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/api/__init__.py +0 -0
  379. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/api/market_metadata.py +0 -0
  380. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/api/portfolios.py +0 -0
  381. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/asset_scope.py +0 -0
  382. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/bootstrap.py +0 -0
  383. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/configuration.py +0 -0
  384. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/__init__.py +0 -0
  385. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/prices/__init__.py +0 -0
  386. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/prices/data_nodes.py +0 -0
  387. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/prices/utils.py +0 -0
  388. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/__init__.py +0 -0
  389. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/external_weights.py +0 -0
  390. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/fixed_weights.py +0 -0
  391. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/intraday_trend.py +0 -0
  392. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/market_cap.py +0 -0
  393. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/portfolio_replicator.py +0 -0
  394. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/contrib/signals/regression_utils.py +0 -0
  395. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/__init__.py +0 -0
  396. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/base.py +0 -0
  397. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/constants.py +0 -0
  398. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/metadata.py +0 -0
  399. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolio_identity.py +0 -0
  400. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/__init__.py +0 -0
  401. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/accounting.py +0 -0
  402. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/analytics.py +0 -0
  403. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/calendar_events.py +0 -0
  404. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/rebalance.py +0 -0
  405. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/storage.py +0 -0
  406. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/temporal.py +0 -0
  407. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/portfolios/weights.py +0 -0
  408. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/prices/__init__.py +0 -0
  409. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/prices/storage.py +0 -0
  410. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/signals/__init__.py +0 -0
  411. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/signals/storage.py +0 -0
  412. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/data_nodes/signals/weights.py +0 -0
  413. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/enums.py +0 -0
  414. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/models/__init__.py +0 -0
  415. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/models/portfolios/__init__.py +0 -0
  416. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/models/portfolios/metadata.py +0 -0
  417. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/models/rebalancing.py +0 -0
  418. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/models/signals.py +0 -0
  419. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/__init__.py +0 -0
  420. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/accounting.py +0 -0
  421. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/base.py +0 -0
  422. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/calendar_event.py +0 -0
  423. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/immediate_signal.py +0 -0
  424. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/liquidity_constrained.py +0 -0
  425. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/time_weighted.py +0 -0
  426. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/trailing_average_daily_volume.py +0 -0
  427. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/rebalance_strategy/volume_participation.py +0 -0
  428. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/repositories/__init__.py +0 -0
  429. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/repositories/market_metadata.py +0 -0
  430. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/__init__.py +0 -0
  431. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/calendars.py +0 -0
  432. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/market_metadata.py +0 -0
  433. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/portfolio_reads.py +0 -0
  434. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/portfolio_timestamp_repair.py +0 -0
  435. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/services/public_api.py +0 -0
  436. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_portfolios/utils.py +0 -0
  437. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/README.md +0 -0
  438. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/__init__.py +0 -0
  439. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/analytics/__init__.py +0 -0
  440. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/analytics/spreads/__init__.py +0 -0
  441. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/analytics/spreads/base.py +0 -0
  442. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/analytics/spreads/fixed_income.py +0 -0
  443. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/__init__.py +0 -0
  444. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/curve_building_details.py +0 -0
  445. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/curves.py +0 -0
  446. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/index_convention_details.py +0 -0
  447. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/instruments.py +0 -0
  448. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/market_data_bindings.py +0 -0
  449. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/api/pricing_details.py +0 -0
  450. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/bootstrap.py +0 -0
  451. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/config.py +0 -0
  452. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_interface/__init__.py +0 -0
  453. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_interface/data_interface.py +0 -0
  454. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/__init__.py +0 -0
  455. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/curve_codec.py +0 -0
  456. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/curves/__init__.py +0 -0
  457. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/curves/key_nodes.py +0 -0
  458. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/curves/storage.py +0 -0
  459. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/index_fixings/__init__.py +0 -0
  460. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/index_fixings/storage.py +0 -0
  461. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/pricing_details/__init__.py +0 -0
  462. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/data_nodes/pricing_details/storage.py +0 -0
  463. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/__init__.py +0 -0
  464. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/base_instrument.py +0 -0
  465. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/bond.py +0 -0
  466. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/bond_terms.py +0 -0
  467. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/callability.py +0 -0
  468. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/interest_rate_swap.py +0 -0
  469. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/json_codec.py +0 -0
  470. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/instruments/ql_fields.py +0 -0
  471. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/meta_tables.py +0 -0
  472. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/__init__.py +0 -0
  473. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/curve_building_details.py +0 -0
  474. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/curves.py +0 -0
  475. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/index_convention_details.py +0 -0
  476. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/market_data_bindings.py +0 -0
  477. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/models/pricing_details.py +0 -0
  478. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/__init__.py +0 -0
  479. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/bond_analytics.py +0 -0
  480. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/bond_pricer.py +0 -0
  481. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/coupon_schedules.py +0 -0
  482. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curve_overlays.py +0 -0
  483. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/__init__.py +0 -0
  484. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/adapters.py +0 -0
  485. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/bond_helper_key_nodes.py +0 -0
  486. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/bond_helpers.py +0 -0
  487. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/cross_currency_helpers.py +0 -0
  488. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/cross_currency_key_nodes.py +0 -0
  489. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/fixed_income_key_nodes.py +0 -0
  490. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/helper_key_nodes.py +0 -0
  491. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/helper_resolution.py +0 -0
  492. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/helpers.py +0 -0
  493. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/observations.py +0 -0
  494. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/quote_units.py +0 -0
  495. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/curves/reconstruction.py +0 -0
  496. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/indices.py +0 -0
  497. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/indices_builders.py +0 -0
  498. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/resolvers.py +0 -0
  499. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/pricing_engine/swap_pricer.py +0 -0
  500. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/__init__.py +0 -0
  501. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/curves/__init__.py +0 -0
  502. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/curves/engine.py +0 -0
  503. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/curves/key_node_bumps.py +0 -0
  504. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/curves/models.py +0 -0
  505. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/valuation/__init__.py +0 -0
  506. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/valuation/engine.py +0 -0
  507. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/valuation/impacts.py +0 -0
  508. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/valuation/line_pricing.py +0 -0
  509. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/scenarios/valuation/models.py +0 -0
  510. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/settings.py +0 -0
  511. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/utils.py +0 -0
  512. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/src/msm_pricing/valuation.py +0 -0
  513. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/__init__.py +0 -0
  514. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/conftest.py +0 -0
  515. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/PINNED_FROM.txt +0 -0
  516. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/README.md +0 -0
  517. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.inline-health-endpoint.json +0 -0
  518. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.retired-response-mappings.json +0 -0
  519. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-discovery-v1.unknown-operation-field.json +0 -0
  520. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-public-config-v1.direct-source-mismatch.json +0 -0
  521. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-query-v1.retired-response-mapping-id.json +0 -0
  522. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-query-v1.unknown-field.json +0 -0
  523. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/adapter-from-api-secure-config-v1.unknown-field.json +0 -0
  524. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/app-component-authoring-v1.invalid-binding-port.json +0 -0
  525. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/app-component-authoring-v1.invalid-mock-version.json +0 -0
  526. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-discovery-v1.duplicate-selection-mode.json +0 -0
  527. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-discovery-v1.unsafe-endpoint.json +0 -0
  528. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-execution-v1.empty-explicit.json +0 -0
  529. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-execution-v1.presentation-filter.json +0 -0
  530. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-preflight-v1.invalid-blockers.json +0 -0
  531. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/bulk-action-preflight-v1.missing-allowed.json +0 -0
  532. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-collection-v1.negative-total.json +0 -0
  533. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-collection-v1.select-without-options.json +0 -0
  534. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.incomplete-generic-column.json +0 -0
  535. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.unknown-field.json +0 -0
  536. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/resource-discovery-v1.unsafe-identity.json +0 -0
  537. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.invalid-target-uid.json +0 -0
  538. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.missing-token.json +0 -0
  539. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.unknown-credential-error.json +0 -0
  540. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.unrestricted-user-credential.json +0 -0
  541. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/static-site-iframe-v1.wrong-version.json +0 -0
  542. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.community-formula.json +0 -0
  543. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.invalid-selection.json +0 -0
  544. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/table-widget-authoring-v1.unknown-widget.json +0 -0
  545. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.invalid-table-visuals.json +0 -0
  546. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.long-with-value-fields.json +0 -0
  547. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.missing-rows.json +0 -0
  548. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-frame-v1.unknown-field-type.json +0 -0
  549. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-transform-authoring-v1.incomplete-pivot.json +0 -0
  550. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/tabular-transform-authoring-v1.latest-without-keys.json +0 -0
  551. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/workspace-document-v1.missing-id.json +0 -0
  552. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/invalid/workspace-document-v1.numeric-id.json +0 -0
  553. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-discovery-v1.orders.json +0 -0
  554. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-public-config-v1.backend.json +0 -0
  555. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-public-config-v1.direct.json +0 -0
  556. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-query-v1.operation.json +0 -0
  557. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/adapter-from-api-secure-config-v1.values.json +0 -0
  558. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/app-component-authoring-v1.manual.json +0 -0
  559. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/app-component-authoring-v1.mock-json.json +0 -0
  560. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-discovery-v1.archive.json +0 -0
  561. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-discovery-v1.empty.json +0 -0
  562. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-execution-v1.all-matching.json +0 -0
  563. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-execution-v1.explicit.json +0 -0
  564. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-preflight-v1.allowed.json +0 -0
  565. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/bulk-action-preflight-v1.blocked.json +0 -0
  566. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-collection-v1.minimal.json +0 -0
  567. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-collection-v1.with-controls.json +0 -0
  568. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/resource-discovery-v1.records.json +0 -0
  569. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-error.json +0 -0
  570. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-request.json +0 -0
  571. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-credential-response.json +0 -0
  572. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.fastapi-runtime-starting.json +0 -0
  573. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.initialize.json +0 -0
  574. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/static-site-iframe-v1.ready.json +0 -0
  575. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/table-widget-authoring-v1.pro-table.json +0 -0
  576. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/table-widget-authoring-v1.table.json +0 -0
  577. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.minimal.json +0 -0
  578. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.table-visuals.json +0 -0
  579. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-frame-v1.time-series.json +0 -0
  580. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-transform-authoring-v1.filter.json +0 -0
  581. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/tabular-transform-authoring-v1.pivot-latest.json +0 -0
  582. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/workspace-document-v1.minimal.json +0 -0
  583. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/fixtures/valid/workspace-document-v1.nested.json +0 -0
  584. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/manifest.json +0 -0
  585. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-discovery-v1.schema.json +0 -0
  586. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-public-config-v1.schema.json +0 -0
  587. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-query-v1.schema.json +0 -0
  588. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/adapter-from-api-secure-config-v1.schema.json +0 -0
  589. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/app-component-authoring-v1.schema.json +0 -0
  590. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-discovery-v1.schema.json +0 -0
  591. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-execution-v1.schema.json +0 -0
  592. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/bulk-action-preflight-v1.schema.json +0 -0
  593. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/resource-collection-v1.schema.json +0 -0
  594. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/resource-discovery-v1.schema.json +0 -0
  595. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/static-site-iframe-v1.schema.json +0 -0
  596. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/table-widget-authoring-v1.schema.json +0 -0
  597. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/tabular-frame-v1.schema.json +0 -0
  598. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/tabular-transform-authoring-v1.schema.json +0 -0
  599. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/contracts/command-center-sdk-v0.1.13/schemas/workspace-document-v1.schema.json +0 -0
  600. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/__init__.py +0 -0
  601. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/__init__.py +0 -0
  602. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/calendars/__init__.py +0 -0
  603. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/calendars/test_rows.py +0 -0
  604. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_assets.py +0 -0
  605. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_bonds.py +0 -0
  606. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_derivatives.py +0 -0
  607. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_indices.py +0 -0
  608. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_issuers.py +0 -0
  609. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_portfolio_groups.py +0 -0
  610. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/api/test_rows.py +0 -0
  611. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/assets/__init__.py +0 -0
  612. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/assets/test_asset_snapshots.py +0 -0
  613. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/assets/test_openfigi.py +0 -0
  614. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/bootstrap/__init__.py +0 -0
  615. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/bootstrap/test_bootstrap.py +0 -0
  616. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/__init__.py +0 -0
  617. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_asset_indexed_data_nodes.py +0 -0
  618. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_contracts.py +0 -0
  619. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_datetime_normalization.py +0 -0
  620. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_index_stamped_data_nodes.py +0 -0
  621. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_package_structure.py +0 -0
  622. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_provisioning_boundary.py +0 -0
  623. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/data_nodes/test_target_positions_contracts.py +0 -0
  624. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/__init__.py +0 -0
  625. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/__init__.py +0 -0
  626. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_accounts.py +0 -0
  627. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_asset_categories.py +0 -0
  628. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_bulk_actions.py +0 -0
  629. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_calendars.py +0 -0
  630. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_common.py +0 -0
  631. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_deployment_entrypoint.py +0 -0
  632. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_dev_cors.py +0 -0
  633. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_indices.py +0 -0
  634. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_portfolio_groups.py +0 -0
  635. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_portfolio_signals.py +0 -0
  636. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_portfolios.py +0 -0
  637. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_pricing_assets.py +0 -0
  638. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_pricing_curves.py +0 -0
  639. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_pricing_market_data.py +0 -0
  640. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_runtime_bootstrap.py +0 -0
  641. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_settings.py +0 -0
  642. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/fastapi/v1/test_virtual_funds.py +0 -0
  643. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/imports/__init__.py +0 -0
  644. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/imports/test_import.py +0 -0
  645. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_data_nodes.py +0 -0
  646. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_engine.py +0 -0
  647. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_examples.py +0 -0
  648. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_formula_index_contract.py +0 -0
  649. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_index_availability.py +0 -0
  650. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_index_delete_impact.py +0 -0
  651. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_index_lifecycle_services.py +0 -0
  652. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_index_values.py +0 -0
  653. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_models_and_migration.py +0 -0
  654. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_public_api.py +0 -0
  655. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_related_meta_tables.py +0 -0
  656. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_resolution_and_repository.py +0 -0
  657. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/indices/test_spread_compatibility.py +0 -0
  658. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/maintenance/test_migrations.py +0 -0
  659. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/models/__init__.py +0 -0
  660. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/models/calendars/__init__.py +0 -0
  661. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/models/calendars/test_tables.py +0 -0
  662. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/models/test_metatable_models.py +0 -0
  663. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/repositories/__init__.py +0 -0
  664. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/repositories/test_repositories.py +0 -0
  665. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/services/assets/test_reference_details.py +0 -0
  666. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/services/calendars/__init__.py +0 -0
  667. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/services/calendars/test_materialization.py +0 -0
  668. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/services/test_account_virtual_allocations.py +0 -0
  669. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/services/test_latest_asset_references.py +0 -0
  670. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/test_cli.py +0 -0
  671. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/test_constants.py +0 -0
  672. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/test_package_metadata.py +0 -0
  673. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm/test_schema_names.py +0 -0
  674. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/accounting/test_accounting.py +0 -0
  675. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/api/test_rows.py +0 -0
  676. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/configuration/test_prices_configuration.py +0 -0
  677. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/data_nodes/test_daily_price_interpolation.py +0 -0
  678. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/data_nodes/test_datetime_normalization.py +0 -0
  679. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/data_nodes/test_portfolio_contracts.py +0 -0
  680. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/data_nodes/test_storage_first_surface.py +0 -0
  681. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/data_nodes/test_virtual_fund_holdings_contracts.py +0 -0
  682. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/examples/test_equal_weight_portfolio_schema.py +0 -0
  683. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/examples/test_trailing_adv_participation_preview.py +0 -0
  684. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/imports/test_bootstrap.py +0 -0
  685. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/imports/test_boundaries.py +0 -0
  686. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/models/test_model_graph.py +0 -0
  687. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/services/test_calendars.py +0 -0
  688. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/services/test_portfolio_reads.py +0 -0
  689. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_portfolios/services/test_portfolio_timestamp_repair.py +0 -0
  690. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/__init__.py +0 -0
  691. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/analytics/spreads/test_base.py +0 -0
  692. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/analytics/spreads/test_fixed_income.py +0 -0
  693. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/__init__.py +0 -0
  694. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_curve_building_details.py +0 -0
  695. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_curves.py +0 -0
  696. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_index_convention_details.py +0 -0
  697. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_instruments.py +0 -0
  698. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_market_data_bindings.py +0 -0
  699. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/api/test_pricing_details.py +0 -0
  700. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/data_interface/test_data_interface.py +0 -0
  701. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/data_nodes/test_curves.py +0 -0
  702. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/data_nodes/test_index_fixings.py +0 -0
  703. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/examples/test_mock_market_data.py +0 -0
  704. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/__init__.py +0 -0
  705. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/test_base_instrument.py +0 -0
  706. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/test_benchmark_curve_resolution.py +0 -0
  707. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/test_bond_terms.py +0 -0
  708. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/test_floating_bond_roundtrip.py +0 -0
  709. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/instruments/test_index_uid_references.py +0 -0
  710. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/models/__init__.py +0 -0
  711. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/models/test_pricing_details.py +0 -0
  712. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/curves/test_bond_helper_reconstruction.py +0 -0
  713. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/curves/test_bond_helpers.py +0 -0
  714. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/curves/test_cross_currency_helpers.py +0 -0
  715. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/curves/test_reconstruction.py +0 -0
  716. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/test_curve_overlays.py +0 -0
  717. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/pricing_engine/test_resolvers.py +0 -0
  718. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/scenarios/curves/test_curve_scenarios.py +0 -0
  719. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/scenarios/curves/test_key_node_bumps.py +0 -0
  720. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/scenarios/curves/test_resolved_curve_scenarios.py +0 -0
  721. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/scenarios/valuation/test_line_pricing.py +0 -0
  722. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/scenarios/valuation/test_workflow.py +0 -0
  723. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_bond_pricing_example.py +0 -0
  724. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_bootstrap.py +0 -0
  725. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_config.py +0 -0
  726. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_meta_tables.py +0 -0
  727. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_package_boundaries.py +0 -0
  728. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/msm_pricing/test_valuation.py +0 -0
  729. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/packaging/__init__.py +0 -0
  730. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/packaging/test_dev_release_version.py +0 -0
  731. {ms_markets-2.1.2 → ms_markets-2.2.0.dev4}/tests/packaging/test_distribution_sources.py +0 -0
@@ -7,10 +7,42 @@ and this project follows versioned releases.
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ## [2.1.2] - 2026-10-03
10
+ ## [2.2.0] - 2026-10-03
11
+
12
+ ### Removed
13
+
14
+ - **Breaking:** the `msm_command_center` package is removed. Import the
15
+ `core.tabular_frame@v1` models and helpers (`TabularFrameResponse`,
16
+ `TabularFrameMetaResponse`, `TabularFrameFieldResponse`,
17
+ `TabularFrameSourceResponse`, `build_tabular_frame`, `build_tabular_field`,
18
+ `CORE_TABULAR_FRAME_CONTRACT`) from `msm.api.http`. `infer_tabular_field_type`
19
+ is removed.
20
+ - **Breaking:** `build_asset_monitor_frame` and
21
+ `build_asset_monitor_workspace_document` are removed. `getAssetMonitorFrame`
22
+ builds its frame inside `apps/v1` and its response is unchanged; workspace
23
+ documents are not built by this library.
24
+ - **Breaking:** fixed income pricing support no longer returns
25
+ `response_mappings`, and the cashflow response schemas no longer carry
26
+ `x-response-mappings`. Command Center SDK 0.1.13 retired response mappings;
27
+ bind the `cashflows/frame/` and `net-cashflows/frame/` routes instead.
28
+ - **Breaking:** `getAssetMonitorFrame` returns only the `uid`,
29
+ `unique_identifier`, and `asset_type` columns, and its `meta.marketAsset` no
30
+ longer names a `tickerField`. The removed `ticker`, `name`, `figi`,
31
+ `composite_figi`, `exchange_code`, `security_type`, `security_market_sector`,
32
+ and `currency` columns were always null: the asset list does not load them.
33
+ - The `apps/v1` re-export modules are removed: `apps.v1.schemas.command_center`,
34
+ `apps.v1.schemas.resource_contracts`, `apps.v1.schemas.bulk_actions`,
35
+ `apps.v1.services.resource_collections`, `apps.v1.services.bulk_actions`, and
36
+ the `ErrorResponse` re-export in `apps.v1.schemas.common`. Import from
37
+ `msm.api.http`.
38
+ - The Command Center Asset Monitor skills are removed.
11
39
 
12
40
  ### Changed
13
41
 
42
+ - Adapter from API discovery takes an operation's `responseContract` only from
43
+ its `x-ui-contract` declaration; it no longer infers `core.tabular_frame@v1`
44
+ from a response model named `TabularFrameResponse`. Every frame route already
45
+ declares it, so the advertised contracts are unchanged.
14
46
  - Releases follow the MetaTables branch model. Every push to `development`
15
47
  publishes an `X.Y.Z.devN` build to PyPI. `main` is protected, and each merged
16
48
  pull request from `development` publishes the declared `X.Y.Z`, creates the
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: ms-markets
3
- Version: 2.1.2
3
+ Version: 2.2.0.dev4
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
@@ -329,7 +329,8 @@ Main package areas:
329
329
  - `msm.api`: user-facing Pydantic row objects and typed class methods for
330
330
  markets MetaTable records
331
331
  - `msm.api.http`: installable provider-neutral collection, discovery,
332
- bulk-preflight, observable-operation, and structured-error contracts
332
+ bulk-preflight, tabular-frame, observable-operation, and structured-error
333
+ contracts
333
334
  - `msm.constants`: static built-in keys such as asset type constants used across
334
335
  applications and examples
335
336
  - `msm.client`: client-facing Main Sequence market models and API wrappers
@@ -376,7 +377,6 @@ Recommended entry points:
376
377
  - [Getting Started](https://mainsequence-projects.github.io/MainSequenceMarkets/getting-started/)
377
378
  - [Tutorial](https://mainsequence-projects.github.io/MainSequenceMarkets/tutorial/)
378
379
  - [FastAPI v1](https://mainsequence-projects.github.io/MainSequenceMarkets/fast_api/v1/)
379
- - [Command Center](https://mainsequence-projects.github.io/MainSequenceMarkets/command_center/)
380
380
  - [Knowledge Base](https://mainsequence-projects.github.io/MainSequenceMarkets/knowledge/)
381
381
  - [Architecture Decision Records](https://mainsequence-projects.github.io/MainSequenceMarkets/ADR/)
382
382
  - [Changelog](https://mainsequence-projects.github.io/MainSequenceMarkets/changelog/)
@@ -52,7 +52,8 @@ Main package areas:
52
52
  - `msm.api`: user-facing Pydantic row objects and typed class methods for
53
53
  markets MetaTable records
54
54
  - `msm.api.http`: installable provider-neutral collection, discovery,
55
- bulk-preflight, observable-operation, and structured-error contracts
55
+ bulk-preflight, tabular-frame, observable-operation, and structured-error
56
+ contracts
56
57
  - `msm.constants`: static built-in keys such as asset type constants used across
57
58
  applications and examples
58
59
  - `msm.client`: client-facing Main Sequence market models and API wrappers
@@ -99,7 +100,6 @@ Recommended entry points:
99
100
  - [Getting Started](https://mainsequence-projects.github.io/MainSequenceMarkets/getting-started/)
100
101
  - [Tutorial](https://mainsequence-projects.github.io/MainSequenceMarkets/tutorial/)
101
102
  - [FastAPI v1](https://mainsequence-projects.github.io/MainSequenceMarkets/fast_api/v1/)
102
- - [Command Center](https://mainsequence-projects.github.io/MainSequenceMarkets/command_center/)
103
103
  - [Knowledge Base](https://mainsequence-projects.github.io/MainSequenceMarkets/knowledge/)
104
104
  - [Architecture Decision Records](https://mainsequence-projects.github.io/MainSequenceMarkets/ADR/)
105
105
  - [Changelog](https://mainsequence-projects.github.io/MainSequenceMarkets/changelog/)
@@ -2,7 +2,11 @@
2
2
 
3
3
  ## Status
4
4
 
5
- Accepted - implementation complete
5
+ Superseded - the `msm_command_center` package is removed in 2.2.0. The
6
+ `core.tabular_frame@v1` models moved to `msm.api.http` with the other Command
7
+ Center contracts, the Asset Monitor frame is built inside the `apps/v1` route
8
+ that serves it, and the workspace document builder and Asset Monitor skills are
9
+ deleted because workspace wiring is not a supported library surface.
6
10
 
7
11
  Amended by [ADR 0045](0045-squashed-initial-schema-and-namespaced-packages.md): the package uses this ADR's fallback name,
8
12
  `src/msm_command_center/`, in 2.1.0. The top-level `command_center` name
@@ -28,6 +28,7 @@ provider-specific records. The API does not flatten those separate models into `
28
28
  `main-sequence-markets__asset-screener`
29
29
  - publishes `AssetTable.unique_identifier` as the ms-markets stable asset key
30
30
  without adding a synthetic `Symbol` column
31
+ - returns the columns `uid`, `unique_identifier`, and `asset_type`
31
32
  - `GET /api/v1/asset/{uid}/`
32
33
  - resolves the asset by `uid`
33
34
  - returns `AssetDetailResponse` with top-level `uid`, `unique_identifier`,
@@ -69,6 +69,5 @@ three execution operation IDs remain mutation operations:
69
69
  `bulkDeletePortfolioGroups`
70
70
 
71
71
  The language-neutral manifest, schemas, and fixtures in command-center-sdk are
72
- the contract authority. Provider projects import the implementing Python models
73
- and helpers from `msm.api.http`; `apps.v1.schemas.bulk_actions` remains a
74
- compatibility import for this repository's FastAPI app.
72
+ the contract authority. Provider projects, including this repository's FastAPI
73
+ app, import the implementing Python models and helpers from `msm.api.http`.
@@ -75,8 +75,7 @@ Response:
75
75
  "key": "with_yield",
76
76
  "required": false
77
77
  }
78
- ],
79
- "response_mappings": []
78
+ ]
80
79
  }
81
80
  ]
82
81
  }
@@ -162,10 +161,9 @@ POST /api/v1/pricing/assets/{asset_uid}/cashflows/frame/
162
161
  POST /api/v1/pricing/assets/{asset_uid}/net-cashflows/frame/
163
162
  ```
164
163
 
165
- The original cashflow endpoints still return provider-native pricing JSON and
166
- carry `x-response-mappings` metadata for frontend/editor context. The frame
167
- endpoints are the routes to bind directly into generic table, chart, curve,
168
- transform, or agent-facing Command Center consumers.
164
+ The original cashflow endpoints still return provider-native pricing JSON. The
165
+ frame endpoints are the routes to bind directly into generic table, chart,
166
+ curve, transform, or agent-facing Command Center consumers.
169
167
 
170
168
  ## Price
171
169
 
@@ -192,8 +192,8 @@ headers or bind SDK request-header context variables.
192
192
  - classifies read/calculation operations as `query`
193
193
  - classifies create/update/delete/write operations as `mutation`
194
194
  - disables cache metadata for mutation operations and non-GET calculations
195
- - keeps provider-native responses provider-native and exposes optional
196
- `responseMappings` only as metadata
195
+ - keeps provider-native responses provider-native and does not publish
196
+ `responseMappings`
197
197
  - advertises `getAssetMonitorFrame` as a direct
198
198
  `core.tabular_frame@v1` query operation for Command Center Asset Monitor
199
199
  workspaces
@@ -2,8 +2,9 @@
2
2
 
3
3
  `ms-markets` ships its provider-neutral FastAPI contracts and helpers in the
4
4
  installable `msm.api.http` package. Connector repositories should import this
5
- package instead of copying collection, discovery, bulk-preflight, operation,
6
- or structured-error models from the `apps/v1` source tree.
5
+ package instead of copying collection, discovery, bulk-preflight,
6
+ tabular-frame, operation, or structured-error models from the `apps/v1` source
7
+ tree.
7
8
 
8
9
  ## Public import boundary
9
10
 
@@ -18,10 +19,8 @@ from msm.api.http import (
18
19
  )
19
20
  ```
20
21
 
21
- The package is part of the `msm` wheel. The repository-local
22
- `apps.v1.schemas.resource_contracts`, `apps.v1.schemas.bulk_actions`, and thin
23
- service modules remain compatibility imports for the project FastAPI app; they
24
- do not own separate implementations.
22
+ The package is part of the `msm` wheel. The project `apps/v1` FastAPI app
23
+ imports it directly; it has no re-export modules of its own.
25
24
 
26
25
  ## Collections and discovery
27
26
 
@@ -38,6 +37,14 @@ their resource identity, columns, semantic filters, and authorized actions.
38
37
  `resolve_resource_discovery(...)` rejects presentation query keys such as
39
38
  `limit`, `offset`, and `ordering`, along with undeclared semantic keys.
40
39
 
40
+ ## Tabular frames
41
+
42
+ `TabularFrameResponse` and `build_tabular_frame(...)` implement
43
+ `core.tabular_frame@v1`, the payload generic Command Center table, chart, and
44
+ transform consumers read. A route that returns a frame declares it with
45
+ `openapi_extra={"x-ui-contract": CORE_TABULAR_FRAME_CONTRACT}`; Adapter from API
46
+ discovery reads the contract from that declaration only.
47
+
41
48
  ## Bulk actions and preflight
42
49
 
43
50
  The public package contains the Command Center execution and preflight models,
@@ -79,5 +86,4 @@ without platform I/O.
79
86
 
80
87
  The public models are checked against the vendored Command Center SDK `0.1.13`
81
88
  schemas and fixtures. Focused tests also cover discovery query rejection,
82
- unexpected-error sanitization, compatibility imports, operation transitions,
83
- and owner isolation.
89
+ unexpected-error sanitization, operation transitions, and owner isolation.
@@ -6,8 +6,7 @@ The FastAPI v1 resource surface is a strict consumer of
6
6
  and valid and invalid fixtures are the wire-contract authority.
7
7
 
8
8
  The implementing Python contracts and builders are public from
9
- `msm.api.http`. The `apps.v1.schemas.resource_contracts` module is retained as
10
- a compatibility import for this repository's FastAPI app.
9
+ `msm.api.http`, which this repository's FastAPI app imports directly.
11
10
 
12
11
  ## Collections
13
12
 
@@ -55,7 +55,6 @@ the docs.
55
55
  - [Core Concepts](concepts.md)
56
56
  - [Tutorial](tutorial/index.md)
57
57
  - [FastAPI v1](fast_api/v1/index.md)
58
- - [Command Center](command_center/index.md)
59
58
  - Package reference: [msm](knowledge/msm/index.md),
60
59
  [msm_portfolios](knowledge/msm_portfolios/index.md),
61
60
  [msm_pricing](knowledge/msm_pricing/index.md)
@@ -332,25 +332,6 @@ normal run leaves assets in the category unless the cleanup flag is used. Asset
332
332
  examples reuse shared identifiers and FIGI constants from
333
333
  `examples/msm/assets/utils/reference_data.py`.
334
334
 
335
- ## Command Center asset monitor
336
-
337
- Use the Command Center helpers when a project wants to publish ms-markets asset
338
- data into a Command Center workspace:
339
-
340
- 1. Load or resolve asset rows in the project API or application layer.
341
- 2. Pass already-loaded rows into
342
- `command_center.widgets.asset_monitor.build_asset_monitor_frame(...)`.
343
- 3. Return the resulting `TabularFrameResponse` from a provider API operation
344
- such as `getAssetMonitorFrame`.
345
- 4. Expose that operation through Adapter from API discovery.
346
- 5. Bind `connection-query.dataset` into
347
- `main-sequence-markets__asset-screener.seedData`.
348
-
349
- See [Command Center Asset Monitor](../command_center/asset_monitor.md) for the
350
- full frame contract and workspace binding rules. See
351
- `examples/msm/command_center/asset_monitor_frame.py` for an import-only example
352
- that builds the canonical frame from sample asset rows.
353
-
354
335
  For timestamped facts keyed to index reference rows, use the same stamped
355
336
  TimeIndexTableUpdater workflow with `msm.data_nodes.indices.IndexTimestampedDataNode` and an
356
337
  `IndexDataNodeConfiguration` subclass. The frame contract is
@@ -94,9 +94,6 @@ nav:
94
94
  - Pricing Market Data: fast_api/v1/pricing_market_data.md
95
95
  - Fixed Income Pricer: fast_api/v1/fixed_income_pricer.md
96
96
  - Command Center Bulk Actions: fast_api/v1/command_center_bulk_actions.md
97
- - Command Center:
98
- - Overview: command_center/index.md
99
- - Asset Monitor: command_center/asset_monitor.md
100
97
  - Architecture:
101
98
  - ADR: ADR/README.md
102
99
  - Pricing Package Refactor: ADR/0005-pricing-package-refactor.md
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ms-markets"
7
- version = "2.1.2"
7
+ version = "2.2.0.dev4"
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"
@@ -106,7 +106,6 @@ msm = "msm_cli.main:main"
106
106
  packages = [
107
107
  "src/msm",
108
108
  "src/msm_cli",
109
- "src/msm_command_center",
110
109
  "src/msm_migrations",
111
110
  "src/msm_portfolios",
112
111
  "src/msm_pricing",
@@ -69,10 +69,20 @@ from .operations import (
69
69
  OperationStep,
70
70
  OperationStepStatus,
71
71
  )
72
+ from .tabular import (
73
+ CORE_TABULAR_FRAME_CONTRACT,
74
+ TabularFrameFieldResponse,
75
+ TabularFrameMetaResponse,
76
+ TabularFrameResponse,
77
+ TabularFrameSourceResponse,
78
+ build_tabular_field,
79
+ build_tabular_frame,
80
+ )
72
81
 
73
82
  __all__ = [
74
83
  "BULK_ACTION_EXECUTION_CONTRACT",
75
84
  "BULK_ACTION_PREFLIGHT_CONTRACT",
85
+ "CORE_TABULAR_FRAME_CONTRACT",
76
86
  "PRESENTATION_QUERY_KEYS",
77
87
  "RESOURCE_COLLECTION_CONTRACT",
78
88
  "RESOURCE_DISCOVERY_CONTRACT",
@@ -113,6 +123,10 @@ __all__ = [
113
123
  "ResourceSearchControl",
114
124
  "ResourceSelectFilter",
115
125
  "ResourceTextFilter",
126
+ "TabularFrameFieldResponse",
127
+ "TabularFrameMetaResponse",
128
+ "TabularFrameResponse",
129
+ "TabularFrameSourceResponse",
116
130
  "api_error",
117
131
  "api_http_error",
118
132
  "bad_request",
@@ -120,6 +134,8 @@ __all__ = [
120
134
  "build_bulk_delete_action",
121
135
  "build_resource_collection",
122
136
  "build_resource_discovery_spec",
137
+ "build_tabular_field",
138
+ "build_tabular_frame",
123
139
  "conflict",
124
140
  "dependency_unavailable",
125
141
  "explicit_uuid_selection",
@@ -1,17 +1,13 @@
1
- """Project-owned models for the ``core.tabular_frame@v1`` wire contract.
2
-
3
- The language-neutral contract is owned by ``@dev-mainsequence/command-center-sdk``.
4
- These Pydantic models implement that contract without depending on the removed
5
- Main Sequence SDK compatibility package.
6
- """
1
+ """Provider-neutral Command Center ``core.tabular_frame@v1`` contract and helpers."""
7
2
 
8
3
  from __future__ import annotations
9
4
 
10
5
  from collections.abc import Mapping, Sequence
11
- from datetime import date, datetime
12
6
  from typing import Any, Literal
13
7
 
14
- from pydantic import BaseModel, ConfigDict, Field, field_validator, model_validator
8
+ from pydantic import ConfigDict, Field, field_validator, model_validator
9
+
10
+ from ._base import HttpContractModel
15
11
 
16
12
  CORE_TABULAR_FRAME_CONTRACT = "core.tabular_frame@v1"
17
13
 
@@ -30,11 +26,7 @@ TabularFrameFieldType = Literal[
30
26
  TabularFrameFieldProvenance = Literal["backend", "manual", "inferred", "derived"]
31
27
 
32
28
 
33
- class ContractBaseModel(BaseModel):
34
- model_config = ConfigDict(extra="forbid", populate_by_name=True)
35
-
36
-
37
- class TabularFrameFieldResponse(ContractBaseModel):
29
+ class TabularFrameFieldResponse(HttpContractModel):
38
30
  key: str
39
31
  type: TabularFrameFieldType
40
32
  label: str | None = None
@@ -47,7 +39,7 @@ class TabularFrameFieldResponse(ContractBaseModel):
47
39
  warnings: list[str] | None = None
48
40
 
49
41
 
50
- class TabularFrameSourceResponse(ContractBaseModel):
42
+ class TabularFrameSourceResponse(HttpContractModel):
51
43
  kind: str
52
44
  id: str | int | float | None = None
53
45
  label: str | None = None
@@ -55,7 +47,7 @@ class TabularFrameSourceResponse(ContractBaseModel):
55
47
  context: dict[str, Any] | None = None
56
48
 
57
49
 
58
- class TabularTimeSeriesMetaResponse(ContractBaseModel):
50
+ class TabularTimeSeriesMetaResponse(HttpContractModel):
59
51
  shape: Literal["long", "wide"]
60
52
  timeField: str
61
53
  timeUnit: Literal["ms"] = "ms"
@@ -81,7 +73,7 @@ class TabularTimeSeriesMetaResponse(ContractBaseModel):
81
73
  return self
82
74
 
83
75
 
84
- class TableVisualThreshold(ContractBaseModel):
76
+ class TableVisualThreshold(HttpContractModel):
85
77
  operator: Literal["gt", "gte", "lt", "lte", "eq"]
86
78
  value: float
87
79
  backgroundColor: str | None = None
@@ -90,20 +82,20 @@ class TableVisualThreshold(ContractBaseModel):
90
82
  tone: Literal["neutral", "primary", "success", "warning", "danger"] | None = None
91
83
 
92
84
 
93
- class TableVisualColorScale(ContractBaseModel):
85
+ class TableVisualColorScale(HttpContractModel):
94
86
  negative: str | None = None
95
87
  neutral: str | None = None
96
88
  positive: str | None = None
97
89
 
98
90
 
99
- class TableVisualRange(ContractBaseModel):
91
+ class TableVisualRange(HttpContractModel):
100
92
  min: float | None = None
101
93
  max: float | None = None
102
94
  midpoint: float | None = None
103
95
  clamp: bool | None = None
104
96
 
105
97
 
106
- class TableVisualColumn(ContractBaseModel):
98
+ class TableVisualColumn(HttpContractModel):
107
99
  label: str | None = None
108
100
  format: Literal[
109
101
  "number",
@@ -154,18 +146,18 @@ class TableVisualColumn(ContractBaseModel):
154
146
  width: float | None = Field(default=None, gt=0)
155
147
 
156
148
 
157
- class TableFrameVisualsMetadata(ContractBaseModel):
149
+ class TableFrameVisualsMetadata(HttpContractModel):
158
150
  columns: dict[str, TableVisualColumn] | None = None
159
151
 
160
152
 
161
- class TabularFrameMetaResponse(ContractBaseModel):
153
+ class TabularFrameMetaResponse(HttpContractModel):
162
154
  model_config = ConfigDict(extra="allow", populate_by_name=True)
163
155
 
164
156
  timeSeries: TabularTimeSeriesMetaResponse | None = None
165
157
  tableVisuals: TableFrameVisualsMetadata | None = None
166
158
 
167
159
 
168
- class TabularFrameResponse(ContractBaseModel):
160
+ class TabularFrameResponse(HttpContractModel):
169
161
  status: TabularFrameStatus
170
162
  columns: list[str]
171
163
  rows: list[dict[str, Any]]
@@ -238,22 +230,6 @@ def build_tabular_frame(
238
230
  )
239
231
 
240
232
 
241
- def infer_tabular_field_type(value: Any) -> TabularFrameFieldType:
242
- if isinstance(value, bool):
243
- return "boolean"
244
- if isinstance(value, int):
245
- return "integer"
246
- if isinstance(value, float):
247
- return "number"
248
- if isinstance(value, datetime):
249
- return "datetime"
250
- if isinstance(value, date):
251
- return "date"
252
- if isinstance(value, (dict, list, tuple)):
253
- return "json"
254
- return "string"
255
-
256
-
257
233
  def _columns_from_rows(rows: Sequence[Mapping[str, Any]]) -> list[str]:
258
234
  columns: list[str] = []
259
235
  seen: set[str] = set()
@@ -267,7 +243,6 @@ def _columns_from_rows(rows: Sequence[Mapping[str, Any]]) -> list[str]:
267
243
 
268
244
  __all__ = [
269
245
  "CORE_TABULAR_FRAME_CONTRACT",
270
- "ContractBaseModel",
271
246
  "TabularFrameFieldProvenance",
272
247
  "TabularFrameFieldResponse",
273
248
  "TabularFrameFieldType",
@@ -278,5 +253,4 @@ __all__ = [
278
253
  "TabularTimeSeriesMetaResponse",
279
254
  "build_tabular_field",
280
255
  "build_tabular_frame",
281
- "infer_tabular_field_type",
282
256
  ]
@@ -7,6 +7,7 @@ from dataclasses import dataclass
7
7
  from typing import Any
8
8
 
9
9
  from msm.api.assets import Asset
10
+ from msm.api.http import CORE_TABULAR_FRAME_CONTRACT
10
11
  from msm_pricing import Instrument
11
12
  from msm_pricing.settings import PRICING_MARKET_DATA_SET_DEFAULT
12
13
 
@@ -48,7 +49,6 @@ class PricingOperationDefinition:
48
49
  executor: Callable[[Any, str | None, dict[str, Any]], Any]
49
50
  requires_market_data_set: bool = True
50
51
  flat_outputs: tuple[str, ...] = ()
51
- response_mappings: tuple[dict[str, Any], ...] = ()
52
52
  frame_response_model: str | None = None
53
53
 
54
54
 
@@ -94,12 +94,11 @@ def build_asset_pricing_support(
94
94
  }
95
95
  for parameter_key in sorted(definition.parameter_keys)
96
96
  ],
97
- "response_mappings": list(definition.response_mappings),
98
97
  **(
99
98
  {
100
99
  "frame_url": f"/api/v1/pricing/assets/{asset_uid}/{definition.key}/frame/",
101
100
  "frame_response_model": definition.frame_response_model,
102
- "frame_response_contract": "core.tabular_frame@v1",
101
+ "frame_response_contract": CORE_TABULAR_FRAME_CONTRACT,
103
102
  }
104
103
  if definition.frame_response_model is not None
105
104
  else {}
@@ -795,21 +794,6 @@ PRICING_OPERATION_DEFINITIONS = {
795
794
  required_parameter_keys=frozenset(),
796
795
  executor=_cashflows,
797
796
  flat_outputs=("legs",),
798
- response_mappings=(
799
- {
800
- "id": "cashflow_rows_by_leg",
801
- "label": "Cashflow rows by leg",
802
- "contract": "core.tabular_frame@v1",
803
- "statusCode": "200",
804
- "contentType": "application/json",
805
- "rowsPath": "$.legs.*[*]",
806
- "fieldTypes": {
807
- "payment_date": "date",
808
- "amount": "number",
809
- "rate": "number",
810
- },
811
- },
812
- ),
813
797
  frame_response_model="TabularFrameResponse",
814
798
  ),
815
799
  "net-cashflows": PricingOperationDefinition(
@@ -820,20 +804,6 @@ PRICING_OPERATION_DEFINITIONS = {
820
804
  required_parameter_keys=frozenset(),
821
805
  executor=_net_cashflows,
822
806
  flat_outputs=("cashflows",),
823
- response_mappings=(
824
- {
825
- "id": "net_cashflows",
826
- "label": "Net cashflows",
827
- "contract": "core.tabular_frame@v1",
828
- "statusCode": "200",
829
- "contentType": "application/json",
830
- "rowsPath": "$.cashflows",
831
- "fieldTypes": {
832
- "payment_date": "date",
833
- "net_cashflow": "number",
834
- },
835
- },
836
- ),
837
807
  frame_response_model="TabularFrameResponse",
838
808
  ),
839
809
  "carry-roll-down": PricingOperationDefinition(
@@ -3,12 +3,10 @@ from __future__ import annotations
3
3
  from mainsequence.client.exceptions import ConflictError
4
4
  from pydantic import BaseModel
5
5
 
6
- from apps.v1.schemas.resource_contracts import ResourceCollection as CompatibilityCollection
7
6
  from msm.api.http import (
8
7
  InMemoryOperationStore,
9
8
  OperationError,
10
9
  OperationNotFoundError,
11
- ResourceCollection,
12
10
  api_http_error,
13
11
  build_resource_discovery_spec,
14
12
  resolve_resource_discovery,
@@ -21,10 +19,6 @@ class ExampleRequest(BaseModel):
21
19
  symbols: list[str]
22
20
 
23
21
 
24
- def test_apps_v1_resource_contract_is_a_public_package_compatibility_import() -> None:
25
- assert CompatibilityCollection is ResourceCollection
26
-
27
-
28
22
  def test_discovery_builders_validate_semantic_query_scope() -> None:
29
23
  spec = build_resource_discovery_spec(
30
24
  resource_id="assets",
@@ -162,7 +162,7 @@ def test_get_asset_monitor_frame_returns_tabular_asset_frame(monkeypatch) -> Non
162
162
  assert response.status_code == 200
163
163
  payload = response.json()
164
164
  assert payload["status"] == "ready"
165
- assert payload["columns"][:3] == ["uid", "unique_identifier", "asset_type"]
165
+ assert payload["columns"] == ["uid", "unique_identifier", "asset_type"]
166
166
  assert payload["rows"][0]["uid"] == str(asset_uid)
167
167
  assert payload["rows"][0]["unique_identifier"] == "MXN-BONO-2031"
168
168
  assert "Symbol" not in payload["rows"][0]
@@ -12,12 +12,14 @@ from referencing import Registry, Resource
12
12
  from msm.api.http import (
13
13
  BULK_ACTION_EXECUTION_CONTRACT,
14
14
  BULK_ACTION_PREFLIGHT_CONTRACT,
15
+ CORE_TABULAR_FRAME_CONTRACT,
15
16
  BulkActionExecutionRequest,
16
17
  BulkActionPreflightResponse,
17
18
  RESOURCE_COLLECTION_CONTRACT,
18
19
  RESOURCE_DISCOVERY_CONTRACT,
19
20
  ResourceCollection,
20
21
  ResourceDiscovery,
22
+ TabularFrameResponse,
21
23
  )
22
24
 
23
25
  COMMAND_CENTER_SDK_TAG = "v0.1.13"
@@ -29,6 +31,7 @@ _CONTRACT_MODELS = {
29
31
  RESOURCE_DISCOVERY_CONTRACT: ResourceDiscovery,
30
32
  BULK_ACTION_EXECUTION_CONTRACT: BulkActionExecutionRequest,
31
33
  BULK_ACTION_PREFLIGHT_CONTRACT: BulkActionPreflightResponse,
34
+ CORE_TABULAR_FRAME_CONTRACT: TabularFrameResponse,
32
35
  }
33
36
 
34
37
 
@@ -5,12 +5,12 @@ from fastapi.testclient import TestClient
5
5
  from apps.v1.main import app
6
6
  from apps.v1.services.command_center_adapter import (
7
7
  CONTRACT_OPERATION_ID,
8
- DIRECT_FRAME_CONTRACT,
9
8
  HEALTH_OPERATION_ID,
10
9
  MUTATION_OPERATION_IDS,
11
10
  QUERY_OPERATION_IDS,
12
11
  RESOURCE_OPERATION_IDS,
13
12
  )
13
+ from msm.api.http import CORE_TABULAR_FRAME_CONTRACT
14
14
 
15
15
 
16
16
  def _contract_payload() -> dict:
@@ -106,7 +106,7 @@ def test_command_center_contract_only_classifies_canonical_frames_as_queries() -
106
106
  operation = operations[operation_id]
107
107
  assert operation["kind"] == "query", operation_id
108
108
  assert operation["capabilities"] == ["query"], operation_id
109
- assert operation["responseContract"] == DIRECT_FRAME_CONTRACT, operation_id
109
+ assert operation["responseContract"] == CORE_TABULAR_FRAME_CONTRACT, operation_id
110
110
 
111
111
  for operation_id in sorted(RESOURCE_OPERATION_IDS | {HEALTH_OPERATION_ID}):
112
112
  operation = operations[operation_id]
@@ -194,7 +194,7 @@ def test_command_center_contract_exposes_complete_index_operations() -> None:
194
194
 
195
195
  values = operations["getIndexDatasetValuesFrame"]
196
196
  assert values["kind"] == "query"
197
- assert values["responseContract"] == DIRECT_FRAME_CONTRACT
197
+ assert values["responseContract"] == CORE_TABULAR_FRAME_CONTRACT
198
198
  assert values["responseModel"] == "TabularFrameResponse"
199
199
 
200
200
 
@@ -203,19 +203,19 @@ def test_command_center_contract_documents_response_contract_boundaries() -> Non
203
203
  operations = _operation_by_id(payload)
204
204
 
205
205
  direct_frame = operations["getFixedIncomeAssetCashflowsFrame"]
206
- assert direct_frame["responseContract"] == DIRECT_FRAME_CONTRACT
206
+ assert direct_frame["responseContract"] == CORE_TABULAR_FRAME_CONTRACT
207
207
  assert direct_frame["responseModel"] == "TabularFrameResponse"
208
208
 
209
209
  portfolio_signal_weights = operations["getPortfolioSignalWeightsFrame"]
210
- assert portfolio_signal_weights["responseContract"] == DIRECT_FRAME_CONTRACT
210
+ assert portfolio_signal_weights["responseContract"] == CORE_TABULAR_FRAME_CONTRACT
211
211
  assert portfolio_signal_weights["responseModel"] == "TabularFrameResponse"
212
212
 
213
213
  portfolio_values = operations["getPortfolioValuesFrame"]
214
- assert portfolio_values["responseContract"] == DIRECT_FRAME_CONTRACT
214
+ assert portfolio_values["responseContract"] == CORE_TABULAR_FRAME_CONTRACT
215
215
  assert portfolio_values["responseModel"] == "TabularFrameResponse"
216
216
 
217
217
  asset_monitor = operations["getAssetMonitorFrame"]
218
- assert asset_monitor["responseContract"] == DIRECT_FRAME_CONTRACT
218
+ assert asset_monitor["responseContract"] == CORE_TABULAR_FRAME_CONTRACT
219
219
  assert asset_monitor["responseModel"] == "TabularFrameResponse"
220
220
 
221
221
  application_owned = operations["getFixedIncomeAssetCashflows"]