mainsequence 4.3.8__tar.gz → 4.3.9__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 (129) hide show
  1. {mainsequence-4.3.8/mainsequence.egg-info → mainsequence-4.3.9}/PKG-INFO +1 -1
  2. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/data_publishing/meta_tables/SKILL.md +20 -6
  3. {mainsequence-4.3.8 → mainsequence-4.3.9/mainsequence.egg-info}/PKG-INFO +1 -1
  4. {mainsequence-4.3.8 → mainsequence-4.3.9}/pyproject.toml +1 -1
  5. {mainsequence-4.3.8 → mainsequence-4.3.9}/LICENSE +0 -0
  6. {mainsequence-4.3.8 → mainsequence-4.3.9}/README.md +0 -0
  7. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/AGENTS.md +0 -0
  8. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/a2a_communication/SKILL.md +0 -0
  9. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/application_surfaces/api_surfaces/SKILL.md +0 -0
  10. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/adapter_from_api/SKILL.md +0 -0
  11. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/api_mock_prototyping/SKILL.md +0 -0
  12. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/app_components/SKILL.md +0 -0
  13. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/connections/SKILL.md +0 -0
  14. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/workspace_analysis/SKILL.md +0 -0
  15. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/workspace_builder/SKILL.md +0 -0
  16. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/command_center/workspace_design/SKILL.md +0 -0
  17. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/dashboards/streamlit/SKILL.md +0 -0
  18. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/data_access/exploration/SKILL.md +0 -0
  19. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/data_publishing/data_nodes/SKILL.md +0 -0
  20. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/maintenance/bug_auditor/SKILL.md +0 -0
  21. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/ms-markets/SKILL.md +0 -0
  22. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/platform_operations/access_control_and_sharing/SKILL.md +0 -0
  23. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/platform_operations/orchestration_and_releases/SKILL.md +0 -0
  24. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/project_builder/SKILL.md +0 -0
  25. {mainsequence-4.3.8 → mainsequence-4.3.9}/agent_scaffold/skills/project_to_agent/SKILL.md +0 -0
  26. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/__init__.py +0 -0
  27. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/__main__.py +0 -0
  28. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/bootstrap.py +0 -0
  29. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/__init__.py +0 -0
  30. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/api.py +0 -0
  31. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/browser_auth.py +0 -0
  32. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/cli.py +0 -0
  33. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/config.py +0 -0
  34. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/docker_utils.py +0 -0
  35. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/doctor.py +0 -0
  36. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/local_ops.py +0 -0
  37. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/migrations.py +0 -0
  38. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/model_filters.py +0 -0
  39. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/project_status.py +0 -0
  40. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/pydantic_cli.py +0 -0
  41. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/sdk_utils.py +0 -0
  42. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/ssh_utils.py +0 -0
  43. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/cli/ui.py +0 -0
  44. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/__init__.py +0 -0
  45. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/agent_runtime_models.py +0 -0
  46. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/base.py +0 -0
  47. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/client.py +0 -0
  48. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/__init__.py +0 -0
  49. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/app_component.py +0 -0
  50. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/connections.py +0 -0
  51. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/data_models.py +0 -0
  52. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/workspace.py +0 -0
  53. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/command_center/workspace_snapshot.py +0 -0
  54. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/compute_validation.py +0 -0
  55. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/data_sources_interfaces/__init__.py +0 -0
  56. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/data_sources_interfaces/duckdb.py +0 -0
  57. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/data_sources_interfaces/local_paths.py +0 -0
  58. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/data_sources_interfaces/sqlite.py +0 -0
  59. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/dtype_codec.py +0 -0
  60. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/exceptions.py +0 -0
  61. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/fastapi/__init__.py +0 -0
  62. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/fastapi/auth.py +0 -0
  63. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/metatables/__init__.py +0 -0
  64. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/metatables/core.py +0 -0
  65. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/models_foundry.py +0 -0
  66. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/models_helpers.py +0 -0
  67. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/models_user.py +0 -0
  68. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/client/utils.py +0 -0
  69. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/defaults.py +0 -0
  70. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/instrumentation/__init__.py +0 -0
  71. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/instrumentation/utils.py +0 -0
  72. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/logconf.py +0 -0
  73. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/__init__.py +0 -0
  74. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/__main__.py +0 -0
  75. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/compiled_sql/__init__.py +0 -0
  76. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/compiled_sql/v1.py +0 -0
  77. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/__init__.py +0 -0
  78. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/build_operations.py +0 -0
  79. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/data_nodes.py +0 -0
  80. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/models.py +0 -0
  81. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/namespacing.py +0 -0
  82. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/persist_managers.py +0 -0
  83. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/run_operations.py +0 -0
  84. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/data_nodes/utils.py +0 -0
  85. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/future_registry.py +0 -0
  86. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/hashing.py +0 -0
  87. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/migrations.py +0 -0
  88. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/pydantic_metadata.py +0 -0
  89. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/schema_names.py +0 -0
  90. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/meta_tables/sqlalchemy_contracts.py +0 -0
  91. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence/runtime_flags.py +0 -0
  92. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence.egg-info/SOURCES.txt +0 -0
  93. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence.egg-info/dependency_links.txt +0 -0
  94. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence.egg-info/entry_points.txt +0 -0
  95. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence.egg-info/requires.txt +0 -0
  96. {mainsequence-4.3.8 → mainsequence-4.3.9}/mainsequence.egg-info/top_level.txt +0 -0
  97. {mainsequence-4.3.8 → mainsequence-4.3.9}/setup.cfg +0 -0
  98. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_auth_precedence.py +0 -0
  99. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_build_operations_hashing.py +0 -0
  100. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_cli.py +0 -0
  101. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_cli_browser_auth.py +0 -0
  102. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_cli_migrations.py +0 -0
  103. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_client.py +0 -0
  104. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_command_center_app_component_models.py +0 -0
  105. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_command_center_data_models.py +0 -0
  106. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_command_center_models.py +0 -0
  107. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_data_access_mixin_dimension_audit.py +0 -0
  108. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_data_node_storage_dimension_queries.py +0 -0
  109. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_data_node_update_flow.py +0 -0
  110. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_dependency_extras.py +0 -0
  111. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_duckdb_interface_dimensions.py +0 -0
  112. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_filter_normalization.py +0 -0
  113. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_instrumentation.py +0 -0
  114. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_logconf.py +0 -0
  115. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_meta_table_migrations.py +0 -0
  116. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_meta_tables_client_models.py +0 -0
  117. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_meta_tables_sqlalchemy_contracts.py +0 -0
  118. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_models_user_request_bound_auth.py +0 -0
  119. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_pod_project_resolution.py +0 -0
  120. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_project_batch_jobs_from_file.py +0 -0
  121. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_run_configuration.py +0 -0
  122. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_schema_names.py +0 -0
  123. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_secret_client_model.py +0 -0
  124. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_source_table_configuration.py +0 -0
  125. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_sqlite_interface_dimensions.py +0 -0
  126. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_update_runner_uid_runtime.py +0 -0
  127. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_update_statistics.py +0 -0
  128. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_update_uid_guards.py +0 -0
  129. {mainsequence-4.3.8 → mainsequence-4.3.9}/tests/test_workspace_snapshot.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mainsequence
3
- Version: 4.3.8
3
+ Version: 4.3.9
4
4
  Summary: Main Sequence SDK
5
5
  Author-email: Main Sequence GmbH <dev@main-sequence.io>
6
6
  License: MainSequence GmbH SDK License Agreement
@@ -127,10 +127,22 @@ Do not hand-build contract fragments when the SQLAlchemy helper can derive them.
127
127
  For `platform_managed`, inherit from `PlatformManagedMetaTable`.
128
128
 
129
129
  Declare an explicit project-prefixed SQLAlchemy `__tablename__`. Use
130
- `schema_table_name(project_or_app, concept)` from `mainsequence.meta_tables` to
131
- generate that name. The mixin derives only the logical `storage_hash` from
132
- storage-relevant configuration and table shape; it must not use that hash as the
133
- SQLAlchemy table name.
130
+ `schema_table_name(app, concept, suffix=None)` from `mainsequence.meta_tables`
131
+ to generate that name:
132
+
133
+ ```python
134
+ def schema_table_name(
135
+ app: str,
136
+ concept: str,
137
+ suffix: str | None = None,
138
+ ) -> str: ...
139
+ ```
140
+
141
+ Use `app` for the project/package prefix, `concept` for the table concept, and
142
+ `suffix` for a namespace, variant, or bounded specialization when the same
143
+ concept exists in multiple logical scopes. The mixin derives only the logical
144
+ `storage_hash` from storage-relevant configuration and table shape; it must not
145
+ use that hash as the SQLAlchemy table name.
134
146
 
135
147
  When a platform-managed table must support in-place contract migrations from its
136
148
  first version, use Alembic. Keep the SDK model as a normal
@@ -179,6 +191,7 @@ from mainsequence.meta_tables import PlatformManagedMetaTable, schema_table_name
179
191
 
180
192
  PROJECT_NAME = "sdk_examples"
181
193
  ACCOUNT_TABLE_NAME = schema_table_name(PROJECT_NAME, "account")
194
+ BROKER_ACCOUNT_TABLE_NAME = schema_table_name(PROJECT_NAME, "account", suffix="broker")
182
195
 
183
196
 
184
197
  class Account(PlatformManagedMetaTable, Base):
@@ -326,8 +339,9 @@ SQLAlchemy table name used by the provider model. Keep that table name stable
326
339
  when a class is renamed or moved but must keep the same platform identity.
327
340
  When declaring an explicit identifier, explicit physical table name, or Alembic
328
341
  version table name, prefix it with the project or package name rather than using
329
- a bare table name. Use `schema_table_name(project_or_app, concept)` for the
330
- physical table and Alembic version table names.
342
+ a bare table name. Use `schema_table_name(app, concept, suffix=None)` for the
343
+ physical table and Alembic version table names. Use `suffix` for a namespace or
344
+ variant, for example `schema_table_name("msm", "positions", suffix="broker")`.
331
345
 
332
346
  Do not ask users to construct backend migration payloads, call low-level
333
347
  migration request models, or use SDK helper functions directly. The backend
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mainsequence
3
- Version: 4.3.8
3
+ Version: 4.3.9
4
4
  Summary: Main Sequence SDK
5
5
  Author-email: Main Sequence GmbH <dev@main-sequence.io>
6
6
  License: MainSequence GmbH SDK License Agreement
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "mainsequence"
7
- version = "4.3.8"
7
+ version = "4.3.9"
8
8
  description = "Main Sequence SDK "
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
File without changes
File without changes
File without changes