mainsequence-metatable 0.1.5.dev6__tar.gz → 0.1.6.dev7__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.
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.agents/skills/client/metatables-local-development/SKILL.md +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.agents/skills/client/metatables-meta-tables/SKILL.md +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.agents/skills/client/metatables-migrations/SKILL.md +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.agents/skills/client/metatables-time-index-table-updates/SKILL.md +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.agents/skills/client/metatables-upgrade-legacy-app/SKILL.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/MANIFEST.in +3 -2
- {mainsequence_metatable-0.1.5.dev6/mainsequence_metatable.egg-info → mainsequence_metatable-0.1.6.dev7}/PKG-INFO +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/README.md +1 -1
- mainsequence_metatable-0.1.6.dev7/alembic.ini +3 -0
- mainsequence_metatable-0.1.6.dev7/api/metatables/main.py +5 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0004-approved-application-migrations.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0008-mysql-mssql-table-workflows.md +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0010-import-external-tables-and-views.md +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0013-application-owned-migrations.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/client/0011-cli-local-development-with-managed-admin.md +10 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/build-an-updater.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/query-and-mutate.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/quickstart.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/read-existing-time-index-tables.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/tutorial.md +11 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/architecture.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/architecture-and-boundaries.md +16 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/documentation.md +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/testing.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/README.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/data_sources/README.md +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/README.md +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/__main__.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/migrations/__init__.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/migrations/env.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/scripts/setup_metatables.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/README.md +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/docs}/examples/tutorial/__main__.py +2 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/docs}/examples/tutorial/migrations/__init__.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/migrations/env.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/catalog-migrations.md +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/hosted-runtime.md +13 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/pyproject.toml +10 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/build_reference.py +5 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_boundaries.py +18 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_client_api_coverage.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_distribution_sources.py +15 -17
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_docs.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/test_postgresql.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/mainsequence_metatable.egg-info}/PKG-INFO +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src}/mainsequence_metatable.egg-info/SOURCES.txt +213 -212
- mainsequence_metatable-0.1.6.dev7/src/mainsequence_metatable.egg-info/top_level.txt +1 -0
- mainsequence_metatable-0.1.5.dev6/scripts/build_package.py → mainsequence_metatable-0.1.6.dev7/src/metatables/_build.py +7 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/_skill_bundle.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/auth/boundary.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/auth/local_actor.py +7 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/bootstrap.py +28 -23
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/credential_admin.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/development.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/main.py +54 -47
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/column_search.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/contract_validation.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/data_sources.py +19 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/managed_finalize.py +16 -16
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/migration_connection.py +11 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/namespaces.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/run_logs.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/runtime_context.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/schema_graph.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/security.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_cascade.py +11 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_crud.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_delete.py +13 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_filter.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_import.py +14 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_introspection.py +15 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_patch.py +16 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_registration.py +18 -15
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_response.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_search_document.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_sql.py +10 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/table_update_pipeline.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/time_index_delete.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/time_index_reads.py +18 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/time_index_stats.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_batch.py +15 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_chunk_insert.py +22 -17
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_constants.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_crud.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_details.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_graph.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_index_statistics.py +17 -14
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_registration.py +10 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_runs.py +10 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/routes/update_statistics.py +10 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/runtime.py +21 -15
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/runtime_control.py +8 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/source_passwords.py +4 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/source_registrations.py +12 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/access.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/runtime.py +7 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_cascade_delete.py +6 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_connection.py +7 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_introspection.py +7 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_table_delete.py +7 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_tables.py +7 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_time_index.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_time_index_delete.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_time_index_queries.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_time_index_stats.py +7 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/postgresql_time_index_write.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/source_validation.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/sqlite_connection.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/sqlite_introspection.py +6 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/table_cursor.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/catalog.py +8 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/contracts.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/hosted.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/hosted_access.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/migration_connection.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/native.py +15 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/operations.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/postgresql_access.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/registry.py +14 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/relation_tables.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/relational.py +10 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/restricted_sql.py +7 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/sqlite_access.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/contracts/values.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/catalog_rules.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/catalog_data_sources.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/credential_keys.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/credential_store.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/data_source_provider.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/local_credentials.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/local_workspace.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/runtime_binding.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/runtime_data_sources.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/source_validation.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/env.py +5 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0001_initial.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0002_security_model.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0004_historical_run_graphs.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0005_database_access.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0006_local_credentials.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0007_external_relation_names.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0008_upload_receipts.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/bootstrap_migrations.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/catalog_schema.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/create_table.py +14 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/finalize_managed.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/import_relations.py +17 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/introspect_table.py +10 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/read_time_index.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/register_catalog.py +14 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/cascade.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/catalog.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/database.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/grants.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/labels.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/locking.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/models.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/physical_operations.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/projections.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/run_graphs.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/schema_graph.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/table_body_filter.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/table_queries.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/table_response.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/update_graph.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/update_pipeline.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/updates.py +4 -4
- mainsequence_metatable-0.1.6.dev7/src/metatables/api/metatables/main.py +8 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/app.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/local.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/project.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/README.md +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/data_sources/README.md +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/README.md +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/__main__.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/migrations/__init__.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/migrations/env.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/scripts/setup_metatables.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/README.md +8 -8
- {mainsequence_metatable-0.1.5.dev6/docs → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/__main__.py +2 -3
- {mainsequence_metatable-0.1.5.dev6/docs → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/__init__.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/env.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_caller_assertions.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_data_source_identity.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_development_client.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_hosted_environment_target.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_local_mode.py +19 -19
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_platform_fact_cache.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_runtime_bootstrap.py +27 -27
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_runtime_scaffold.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_runtime_selection.py +19 -19
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_runtime_storage_binding.py +21 -21
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/auth/test_source_passwords.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/catalog/test_catalog_foundation.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/catalog/test_contract_projection.py +8 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/catalog/test_database_config.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/catalog/test_index_statistics.py +4 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/catalog/test_migration.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/conftest.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/test_bounded_transfer.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/test_relation_batching.py +16 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/test_relation_import.py +7 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/test_storage_layouts.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/test_table_contracts.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/Dockerfile +0 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/conftest.py +21 -21
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_api_contract.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_application_migration.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_bootstrap_recovery.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_catalog_contract.py +14 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_credential_catalog.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_physical_contract.py +16 -16
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_relation_import.py +15 -15
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_runtime_bootstrap.py +12 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_sql_security.py +14 -14
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/test_update_client.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_operations/test_physical_operations.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_operations/test_postgresql_operations.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_operations/test_runtime_and_temporal.py +11 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/documentation/test_project_checks.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_api_endpoint.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_application_owned_migrations.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_catalog_outage.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_api_contract.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_data_source_registry.py +24 -24
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_local_actor_client_api.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_local_cli_workflow.py +9 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_local_client_selection.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_managed_finalize_client_api.py +15 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_namespaces_admin_http.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_remaining_client_routes.py +31 -25
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_run_graphs.py +12 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_run_logs.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_runtime_transition.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_sdk_local_startup.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_sqlite_runtime.py +18 -18
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_delete_client_api.py +13 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_filter_client_api.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_introspection_client_api.py +13 -10
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_patch_client_api.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_search_document_api.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_stats_api.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_update_pipeline.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_table_updates_http.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_time_index_delete_client_api.py +16 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_time_index_reads_client_api.py +14 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_update_batch_client_api.py +9 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_update_chunk_insert_client_api.py +17 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_update_dependency_priority_client_api.py +11 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_update_index_statistics_client_api.py +14 -12
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_update_registration_client_api.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/examples/test_documented_examples.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/examples/test_postgresql_examples.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/examples/test_setup_launch.py +13 -13
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/examples/test_tutorial.py +14 -9
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_credential_store.py +17 -14
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_data_source_rules.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_local_data_sources.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_postgresql_connection.py +9 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_postgresql_sql.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_postgresql_tables.py +9 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_postgresql_time_index_queries.py +18 -11
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_source_validation.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_sqlite_operations.py +19 -17
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/labels/test_labels.py +16 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/operations/test_create_table_operation.py +8 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/operations/test_create_table_postgres.py +11 -8
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/operations/test_physical_operation_journal.py +4 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/operations/test_register_catalog.py +13 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/operations/test_search_documents.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/packaging/test_client_skills.py +1 -1
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/packaging/test_distribution_sources.py +21 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/packaging/test_editable_build.py +10 -4
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/packaging/test_installed_distribution.py +63 -14
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_governed_sql_scope.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_local_actor_membership.py +3 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_migration_boundary.py +2 -2
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_namespace_grants.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_security_api.py +14 -14
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_table_body_filter.py +7 -7
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_table_grants.py +5 -5
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/permissions/test_table_queries.py +6 -6
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/uv.lock +1 -1
- mainsequence_metatable-0.1.5.dev6/alembic.ini +0 -3
- mainsequence_metatable-0.1.5.dev6/api/metatables/main.py +0 -8
- mainsequence_metatable-0.1.5.dev6/mainsequence_metatable.egg-info/top_level.txt +0 -3
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/.mainsequence/workflows/metatables-api.yaml +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/LICENSE +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/compose.database-tests.yml +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0001-unified-api-storage-and-local-sqlite.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0002-application-administration-and-table-ownership.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0005-run-logs-and-local-file-capture.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0006-historical-run-graphs.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0007-database-enforced-table-access.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0007-database-roles-and-privileges.svg +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0007-query-enforcement-path.svg +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0009-shared-credential-store.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/api/0012-bounded-data-transfer-and-safe-retries.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/client/0003-api-endpoint-resolution.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/adr/index.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/authentication-and-errors.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/data-sources.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/openapi.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/overview.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/reference.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/tables-and-migrations.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/api/time-index-and-updates.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/assets/branding/metatables.svg +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/assets/diagrams/local-client-experience.svg +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/bounded-transfers.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/define-and-migrate-tables.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/installation-and-connection.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/local-storage.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/register-existing-tables.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/upgrade-legacy-app.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/data-sources.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/identity-and-scope.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/permissions-namespaces-labels.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/runs-and-execution-graphs.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/table-contracts-and-lifecycle.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/concepts/time-index-tables-and-updates.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/database-backends.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/releasing.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/bounded_reader.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/data_sources/mssql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/data_sources/mysql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/data_sources/postgresql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/data_sources/register.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/external_table.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/migrations/versions/metatables_local_example/0001.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/local_app/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/query.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/quickstart.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/reader.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/scripts/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/data/README.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/data/yahoo_spy_qqq_iwm_2026-06-15_2026-07-17.csv +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/frames.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6/api/app → mainsequence_metatable-0.1.6.dev7/docs/examples/tutorial/migrations/versions}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/migrations/versions/metatables_market_tutorial/0001_create_market_tutorial_tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/migrations/versions/metatables_market_tutorial/0002_create_rolling_volatility.py +0 -0
- {mainsequence_metatable-0.1.5.dev6/api/app/routes → mainsequence_metatable-0.1.6.dev7/docs/examples/tutorial/migrations/versions/metatables_market_tutorial}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/operations.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/tutorial/updaters.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/updater.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/index.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/configuration.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/local-runtime.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/recovery-and-observability.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/run-history.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/operations/run-logs.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/reference/capabilities.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/reference/cli.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/reference/python.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/security/index.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/security/ownership-and-sharing.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/security/permissions.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/mkdocs.yml +0 -0
- {mainsequence_metatable-0.1.5.dev6/api/backend/operations → mainsequence_metatable-0.1.6.dev7/scripts}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_examples_debug.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/check_project.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/dev_release_version.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/scripts/test_databases.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/setup.cfg +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src}/mainsequence_metatable.egg-info/dependency_links.txt +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src}/mainsequence_metatable.egg-info/entry_points.txt +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src}/mainsequence_metatable.egg-info/requires.txt +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/_admin_source.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6/docs/examples/tutorial/migrations/versions → mainsequence_metatable-0.1.6.dev7/src/metatables/api/app}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/auth/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/auth/caller_assertions.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/configuration.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/development_client.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/platform_cache.py +0 -0
- {mainsequence_metatable-0.1.5.dev6/docs/examples/tutorial/migrations/versions/metatables_market_tutorial → mainsequence_metatable-0.1.6.dev7/src/metatables/api/app/routes}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/app/transfer.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/postgresql.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/temporal.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/timescaledb.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/adapters/maintenance/validation.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/catalog_ddl.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/catalog_types.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/pages.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/backends/streaming.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/contracts/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/contracts/relation_import.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/contracts/storage_layouts.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/contracts/table_contracts.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/data_source_rules.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/index_statistics.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/label_rules.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/permission_rules.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/domain/update_constants.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/platform_principals.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/integrations/run_logs.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/0003_run_log_capture.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/migrations/versions/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6/examples/tutorial/migrations/versions → mainsequence_metatable-0.1.6.dev7/src/metatables/api/backend/operations}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/operations/search_documents.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/sqlite_types.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/persistence/upload_receipts.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/backend/presentation/data_source_summary.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/metatables/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/api/metatables/configuration.yaml +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/admin_install.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/filters.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/migrations.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/cli/skills.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/compiled_sql/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/compiled_sql/mssql.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/compiled_sql/v1.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/dtype_codec.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/endpoint.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/bounded_reader.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/data_sources/mssql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/data_sources/mysql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/data_sources/postgresql.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/data_sources/register.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/external_table.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/migrations/versions/metatables_local_example/0001.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/local_app/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/query.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/quickstart.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/reader.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/scripts/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/data/README.md +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/data/yahoo_spy_qqq_iwm_2026-06-15_2026-07-17.csv +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/frames.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6/examples/tutorial/migrations/versions/metatables_market_tutorial → mainsequence_metatable-0.1.6.dev7/src/metatables/examples/tutorial/migrations/versions}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/versions/metatables_market_tutorial/0001_create_market_tutorial_tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/migrations/versions/metatables_market_tutorial/0002_create_rolling_volatility.py +0 -0
- {mainsequence_metatable-0.1.5.dev6/scripts → mainsequence_metatable-0.1.6.dev7/src/metatables/examples/tutorial/migrations/versions/metatables_market_tutorial}/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/operations.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/tables.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/tutorial/updaters.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7/src/metatables}/examples/updater.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/future_registry.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/hashing.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/instrumentation.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/local_connection.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/local_files.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/local_run_logs.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/log_contract.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/alembic.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/connection.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/env.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/provider.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/registry.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/runner.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/scaffold.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/templates/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/templates/env.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/templates/script.py.mako +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/migrations/tls.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/models.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/pydantic_metadata.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/run_logging.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/runtime.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/runtime_context.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/runtime_contract.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/schema_names.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/sdk_compat.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/sqlalchemy_contracts.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/time_index_table_refs.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/transfer.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/transfer_contract.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/transport.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/update_configuration_contract.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/configuration.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/dependencies.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/managers.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/namespacing.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/runner.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/updaters.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/updaters/utils.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/src/metatables/upload.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/capabilities.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/client_signatures.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/contracts/database_operations.json +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/Dockerfile.dockerignore +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/provider/__init__.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/provider/env.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/database_backend/provider/versions/0001_measurement.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_admin_installation.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_api_coverage.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_migration_scaffold.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_migration_tls.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_package.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_signatures.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_client_value_behaviors.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/e2e/test_public_imports.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/integrations/test_local_run_logs.py +0 -0
- {mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/tests/packaging/test_dev_release_version.py +0 -0
|
@@ -12,11 +12,11 @@ development fixtures and test writes in the local runtime, then return to the
|
|
|
12
12
|
intended environment as part of the requested workflow. Respect an explicitly
|
|
13
13
|
requested target or backend-specific test scope.
|
|
14
14
|
|
|
15
|
-
In a copied skill, resolve the `docs/` and `examples/` paths below relative to
|
|
15
|
+
In a copied skill, resolve the `docs/` and `src/metatables/examples/` paths below relative to
|
|
16
16
|
this skill's `references/` directory. In the MetaTables source checkout, resolve
|
|
17
17
|
them from the repository root. Read `docs/operations/local-runtime.md` for runtime
|
|
18
18
|
selection and persistence, and `docs/client/installation-and-connection.md` when
|
|
19
|
-
installing or troubleshooting. `examples/local_app/README.md` provides a complete
|
|
19
|
+
installing or troubleshooting. `src/metatables/examples/local_app/README.md` provides a complete
|
|
20
20
|
installed-package migration/write/read example.
|
|
21
21
|
|
|
22
22
|
## Select local storage deliberately
|
|
@@ -12,7 +12,7 @@ client. It covers application-facing models and workflows. Client-library
|
|
|
12
12
|
implementation, this repository's development/release tooling, and API internals
|
|
13
13
|
have separate ownership.
|
|
14
14
|
|
|
15
|
-
In a copied skill, resolve the `docs/` and `examples/` paths below relative to
|
|
15
|
+
In a copied skill, resolve the `docs/` and `src/metatables/examples/` paths below relative to
|
|
16
16
|
this skill's `references/` directory. The client CLI bundles the matching version's
|
|
17
17
|
guides and examples there, including their linked documents. In the MetaTables
|
|
18
18
|
source checkout, read the same paths from the repository root.
|
|
@@ -51,7 +51,7 @@ contract. Preserve the user's existing authorization and scope.
|
|
|
51
51
|
evolution.
|
|
52
52
|
- Existing externally owned tables use `register_external_sqlalchemy_model` with
|
|
53
53
|
their actual physical binding. Registration does not create the physical table;
|
|
54
|
-
see `docs/client/register-existing-tables.md` and `examples/external_table.py`.
|
|
54
|
+
see `docs/client/register-existing-tables.md` and `src/metatables/examples/external_table.py`.
|
|
55
55
|
- `backend_managed` is a separate low-level API provisioning intent. Do not use it
|
|
56
56
|
as a substitute for ordinary managed application-table migrations.
|
|
57
57
|
|
|
@@ -62,7 +62,7 @@ are fingerprints, not table identity. See `docs/concepts/identity-and-scope.md`.
|
|
|
62
62
|
|
|
63
63
|
## SQLAlchemy contract rules
|
|
64
64
|
|
|
65
|
-
Use `examples/tables.py` as the tested pattern. Declare an explicit
|
|
65
|
+
Use `src/metatables/examples/tables.py` as the tested pattern. Declare an explicit
|
|
66
66
|
application-prefixed physical name with `schema_table_name(app, concept)`, a
|
|
67
67
|
stable logical identifier, and an intention-rich `__metatable_description__`.
|
|
68
68
|
Give columns useful `info={"label": ..., "description": ...}` metadata. Explain
|
|
@@ -84,7 +84,7 @@ revisions; do not recompute identity from columns or rewrite applied history.
|
|
|
84
84
|
|
|
85
85
|
## Queries and mutations
|
|
86
86
|
|
|
87
|
-
Read `docs/client/query-and-mutate.md` and `examples/query.py`. Use
|
|
87
|
+
Read `docs/client/query-and-mutate.md` and `src/metatables/examples/query.py`. Use
|
|
88
88
|
`compile_sqlalchemy_statement` with bound parameters. The request sends SQL and
|
|
89
89
|
selects one DataSource; the API executes as the authenticated user, and the
|
|
90
90
|
selected database backend enforces Reader/Writer permissions on the tables
|
|
@@ -16,7 +16,7 @@ For upgrading older client imports, SQL scopes or provider integration, use the
|
|
|
16
16
|
[legacy upgrade skill](../metatables-upgrade-legacy-app/SKILL.md). This skill
|
|
17
17
|
covers authoring and running application schema revisions.
|
|
18
18
|
|
|
19
|
-
In a copied skill, resolve the `docs/` and `examples/` paths below relative to
|
|
19
|
+
In a copied skill, resolve the `docs/` and `src/metatables/examples/` paths below relative to
|
|
20
20
|
this skill's `references/` directory. The client CLI bundles the matching version's
|
|
21
21
|
guides and examples there, including their linked documents. In the MetaTables
|
|
22
22
|
source checkout, read the same paths from the repository root.
|
|
@@ -28,7 +28,7 @@ verification within the requested scope.
|
|
|
28
28
|
|
|
29
29
|
Read `docs/client/define-and-migrate-tables.md`,
|
|
30
30
|
`docs/concepts/table-contracts-and-lifecycle.md`, and the tested
|
|
31
|
-
`examples/tables.py`. Managed authoring is migration-first: define SQLAlchemy
|
|
31
|
+
`src/metatables/examples/tables.py`. Managed authoring is migration-first: define SQLAlchemy
|
|
32
32
|
models, select a provider, author and apply a revision with the client, then
|
|
33
33
|
finalize catalog bindings through the API. Use the
|
|
34
34
|
[table skill](../metatables-meta-tables/SKILL.md) for contract design.
|
|
@@ -106,7 +106,7 @@ and finalizes contracts through the API. Treat connection material as private.
|
|
|
106
106
|
|
|
107
107
|
Use the application's setup entry point when available. Python code can call
|
|
108
108
|
`metatables.upgrade_application("ledger.migrations:migration")`;
|
|
109
|
-
`examples/scripts/setup_metatables.py` shows the pattern. Remove the retired
|
|
109
|
+
`src/metatables/examples/scripts/setup_metatables.py` shows the pattern. Remove the retired
|
|
110
110
|
`application_migration_providers` setting and use Python references instead of aliases.
|
|
111
111
|
Application migration histories remain separate from API system migrations.
|
|
112
112
|
|
|
@@ -12,7 +12,7 @@ client. It covers application-facing models and workflows. Client-library
|
|
|
12
12
|
implementation, this repository's development/release tooling, and API internals
|
|
13
13
|
have separate ownership.
|
|
14
14
|
|
|
15
|
-
In a copied skill, resolve the `docs/` and `examples/` paths below relative to
|
|
15
|
+
In a copied skill, resolve the `docs/` and `src/metatables/examples/` paths below relative to
|
|
16
16
|
this skill's `references/` directory. The client CLI bundles the matching version's
|
|
17
17
|
guides and examples there, including their linked documents. In the MetaTables
|
|
18
18
|
source checkout, read the same paths from the repository root.
|
|
@@ -24,8 +24,8 @@ verification within the requested scope.
|
|
|
24
24
|
|
|
25
25
|
Read `docs/client/build-an-updater.md`,
|
|
26
26
|
`docs/concepts/time-index-tables-and-updates.md`, and the tested
|
|
27
|
-
`examples/updater.py`. Use `docs/client/read-existing-time-index-tables.md` and
|
|
28
|
-
`examples/reader.py` for consumers that only need existing output.
|
|
27
|
+
`src/metatables/examples/updater.py`. Use `docs/client/read-existing-time-index-tables.md` and
|
|
28
|
+
`src/metatables/examples/reader.py` for consumers that only need existing output.
|
|
29
29
|
|
|
30
30
|
The storage contract is a `PlatformTimeIndexMetaTable` SQLAlchemy class. The
|
|
31
31
|
producer is a `TimeIndexTableUpdater`; the API record is `TimeIndexTableUpdate`.
|
|
@@ -41,7 +41,7 @@ choices, first-run/backfill bounds, and whether identity must be preserved from
|
|
|
41
41
|
the task and existing code. Clarify only unresolved choices that change the
|
|
42
42
|
published contract. Keep storage description, namespace, identifier, cadence,
|
|
43
43
|
columns, and FK/index metadata on the authoring model, not the updater config.
|
|
44
|
-
Use intention-rich table and column descriptions; see `examples/tables.py`.
|
|
44
|
+
Use intention-rich table and column descriptions; see `src/metatables/examples/tables.py`.
|
|
45
45
|
|
|
46
46
|
Migrate and bind the output class before constructing the producer. Pass explicit
|
|
47
47
|
`config` and `output_table`; do not create/register tables inside `update()`.
|
|
@@ -14,7 +14,7 @@ in the MainSequence SDK.
|
|
|
14
14
|
|
|
15
15
|
Read `docs/client/upgrade-legacy-app.md` for the conversion table and before/after
|
|
16
16
|
repository compiler examples. In a copied skill, resolve the `docs/` and
|
|
17
|
-
`examples/` paths here relative to this skill's `references/` directory. In the
|
|
17
|
+
`src/metatables/examples/` paths here relative to this skill's `references/` directory. In the
|
|
18
18
|
MetaTables source checkout, resolve them from the repository root.
|
|
19
19
|
|
|
20
20
|
Use `docs/client/installation-and-connection.md` to establish the target package
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
include alembic.ini mkdocs.yml uv.lock compose.database-tests.yml
|
|
2
2
|
include .mainsequence/workflows/metatables-api.yaml
|
|
3
|
-
include api/metatables/
|
|
3
|
+
include api/metatables/main.py
|
|
4
|
+
include src/metatables/api/metatables/configuration.yaml
|
|
4
5
|
recursive-include docs *.md *.json *.py *.csv *.mako *.svg
|
|
5
|
-
recursive-include examples *.md *.json *.py *.csv *.mako
|
|
6
|
+
recursive-include src/metatables/examples *.md *.json *.py *.csv *.mako
|
|
6
7
|
recursive-include scripts *.py
|
|
7
8
|
recursive-include tests *.py *.json Dockerfile Dockerfile.dockerignore
|
|
8
9
|
graft .agents/skills/client
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mainsequence-metatable
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.6.dev7
|
|
4
4
|
Summary: Main Sequence MetaTables Python client and standalone API
|
|
5
5
|
Author-email: Main Sequence GmbH <dev@main-sequence.io>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -100,7 +100,7 @@ through Settings; startup never runs Alembic.
|
|
|
100
100
|
The [documentation index](docs/index.md) separates client, API, operations, and
|
|
101
101
|
contributor guides. The [capability reference](docs/reference/capabilities.md)
|
|
102
102
|
records implemented and unavailable operations, including inherited methods and
|
|
103
|
-
CLI commands. Runnable guide assets live in [examples](examples/README.md).
|
|
103
|
+
CLI commands. Runnable guide assets live in [examples](src/metatables/examples/README.md).
|
|
104
104
|
|
|
105
105
|
## Client skills
|
|
106
106
|
|
|
@@ -45,7 +45,7 @@ through Settings; startup never runs Alembic.
|
|
|
45
45
|
The [documentation index](docs/index.md) separates client, API, operations, and
|
|
46
46
|
contributor guides. The [capability reference](docs/reference/capabilities.md)
|
|
47
47
|
records implemented and unavailable operations, including inherited methods and
|
|
48
|
-
CLI commands. Runnable guide assets live in [examples](examples/README.md).
|
|
48
|
+
CLI commands. Runnable guide assets live in [examples](src/metatables/examples/README.md).
|
|
49
49
|
|
|
50
50
|
## Client skills
|
|
51
51
|
|
|
@@ -50,7 +50,7 @@ remain explicit Settings operations.
|
|
|
50
50
|
|
|
51
51
|
## Example integration
|
|
52
52
|
|
|
53
|
-
`examples/scripts/setup_metatables.py` only reserves, upgrades and finalizes the
|
|
53
|
+
`src/metatables/examples/scripts/setup_metatables.py` only reserves, upgrades and finalizes the
|
|
54
54
|
tutorial provider. Every data-dependent tutorial command calls it first. VS Code
|
|
55
55
|
launches then seed instruments and run producers through `--prepare-data` before
|
|
56
56
|
the requested example. Offline preview and endpoint-only connect skip preparation.
|
|
@@ -46,7 +46,7 @@ ownership and unknown-outcome reconciliation. Local verification is complete; ho
|
|
|
46
46
|
|
|
47
47
|
`POST /data-sources/` accepts `mysql` and `mssql`, and validation opens their
|
|
48
48
|
connections and runs `SELECT 1`. At the time of the original decision, the
|
|
49
|
-
static feature registry declared no table support for either. The physical operations in `api/backend/integrations/`
|
|
49
|
+
static feature registry declared no table support for either. The physical operations in `src/metatables/api/backend/integrations/`
|
|
50
50
|
use PostgreSQL or SQLite connections, SQL and introspection; they cannot act on
|
|
51
51
|
the registered MySQL or MSSQL source.
|
|
52
52
|
|
|
@@ -172,14 +172,14 @@ engine matrices in routes, Admin and documentation.
|
|
|
172
172
|
|
|
173
173
|
Refactor the current SQLite and PostgreSQL paths into this contract before
|
|
174
174
|
adding MySQL and MSSQL implementations. In particular, remove engine decisions
|
|
175
|
-
from `api/app/bootstrap.py`, `api/app/routes/application_migrations.py`,
|
|
176
|
-
`api/app/routes/table_sql.py`, `api/app/routes/runtime_context.py`, and
|
|
177
|
-
`api/backend/integrations/source_validation.py`; route existing SQLite and
|
|
175
|
+
from `src/metatables/api/app/bootstrap.py`, `src/metatables/api/app/routes/application_migrations.py`,
|
|
176
|
+
`src/metatables/api/app/routes/table_sql.py`, `src/metatables/api/app/routes/runtime_context.py`, and
|
|
177
|
+
`src/metatables/api/backend/integrations/source_validation.py`; route existing SQLite and
|
|
178
178
|
PostgreSQL work through the bound backend in this first step, before implementing
|
|
179
179
|
MySQL or MSSQL table support. During the refactor, retain the existing MySQL/MSSQL
|
|
180
180
|
connection probes without pretending they satisfy the full backend contract.
|
|
181
181
|
Move the branches in `postgresql_*`
|
|
182
|
-
physical helpers and `api/backend/database_operations/runtime.py` into adapter
|
|
182
|
+
physical helpers and `src/metatables/api/backend/database_operations/runtime.py` into adapter
|
|
183
183
|
implementations or shared engine-neutral helpers. This refactor must preserve
|
|
184
184
|
current SQLite and PostgreSQL behavior under the existing contract tests. It
|
|
185
185
|
prevents the new engines from multiplying conditionals across every endpoint.
|
|
@@ -60,10 +60,10 @@ explicitly identified as belonging to the Vite application.
|
|
|
60
60
|
|
|
61
61
|
| Area | Current evidence | Required change |
|
|
62
62
|
| --- | --- | --- |
|
|
63
|
-
| HTTP workflow | Generated OpenAPI has `POST /meta-tables/register/` and `POST /meta-tables/{uid}/introspect/`, but no import action. `api/app/routes/table_registration.py` requires one caller-authored contract. | One import operation with discovery, preview, selection, reconciliation, and structured results. |
|
|
64
|
-
| Discovery | `TableBackend` in `api/backend/backends/contracts.py` introspects a known name. It has no relation discovery or batch introspection contract. | Add narrow discovery and read operations to this existing facet. |
|
|
63
|
+
| HTTP workflow | Generated OpenAPI has `POST /meta-tables/register/` and `POST /meta-tables/{uid}/introspect/`, but no import action. `src/metatables/api/app/routes/table_registration.py` requires one caller-authored contract. | One import operation with discovery, preview, selection, reconciliation, and structured results. |
|
|
64
|
+
| Discovery | `TableBackend` in `src/metatables/api/backend/backends/contracts.py` introspects a known name. It has no relation discovery or batch introspection contract. | Add narrow discovery and read operations to this existing facet. |
|
|
65
65
|
| External source resolution | `CatalogDataSourceProvider.get()` calls `RuntimeStorageBinding.require_execution_source()`. A saved non-runtime source cannot be used by table operations. | Resolve sources according to the authorized operation; preserve the runtime restriction for managed DDL, migrations, and caller-written SQL. |
|
|
66
|
-
| Restart invariants | `RuntimeBootstrap.inspect()` in `api/app/bootstrap.py` rejects any `MetaTable` or `PhysicalOperation` referencing another source. | Permit externally owned MetaTables on registered sources, while keeping physical mutation journals and managed tables bound to the runtime source. |
|
|
66
|
+
| Restart invariants | `RuntimeBootstrap.inspect()` in `src/metatables/api/app/bootstrap.py` rejects any `MetaTable` or `PhysicalOperation` referencing another source. | Permit externally owned MetaTables on registered sources, while keeping physical mutation journals and managed tables bound to the runtime source. |
|
|
67
67
|
| View access | `postgresql_access.py` and `sqlite_access.py` require ordinary tables. `hosted.py` rejects MySQL objects other than base tables and MSSQL objects other than user tables. | Explicit view admission and read semantics. Changing an introspection query alone is insufficient. |
|
|
68
68
|
| Physical metadata | `MetaTable.kind` distinguishes relational and time-index tables. Contract normalization preserves extra physical fields but does not validate `relation_kind` as a first-class invariant. | Validate physical relation kind independently of the existing logical kind. A view is a relational MetaTable. |
|
|
69
69
|
| Names and types | `catalog_rules.py` and `table_contracts.py` impose an unqualified 63-character table-name rule; `models.py` stores `String(63)`. Some type validation retains PostgreSQL assumptions. | Preserve legal external identifiers and native types through adapter normalization, without truncation or executing catalog expressions. |
|
|
@@ -118,7 +118,7 @@ generic capability registry is introduced.
|
|
|
118
118
|
### 2. Extend the existing backend contract
|
|
119
119
|
|
|
120
120
|
Add these conceptual operations to `DatabaseBackend.tables` in
|
|
121
|
-
`api/backend/backends/contracts.py`; retain `backend_for(source)` as the only
|
|
121
|
+
`src/metatables/api/backend/backends/contracts.py`; retain `backend_for(source)` as the only
|
|
122
122
|
engine dispatch point:
|
|
123
123
|
|
|
124
124
|
```text
|
|
@@ -556,11 +556,11 @@ availability.
|
|
|
556
556
|
|
|
557
557
|
## Implementation and verification record
|
|
558
558
|
|
|
559
|
-
- Shared orchestration: `api/backend/operations/import_relations.py`; engine
|
|
559
|
+
- Shared orchestration: `src/metatables/api/backend/operations/import_relations.py`; engine
|
|
560
560
|
discovery, read-only sessions and safe runtime-view validation:
|
|
561
|
-
`api/backend/backends/relation_tables.py`, selected by the existing registry.
|
|
562
|
-
- Published commands/results: `api/backend/contracts/relation_import.py` and
|
|
563
|
-
`api/app/routes/table_import.py`. Existing introspect handles Writer refresh.
|
|
561
|
+
`src/metatables/api/backend/backends/relation_tables.py`, selected by the existing registry.
|
|
562
|
+
- Published commands/results: `src/metatables/api/backend/contracts/relation_import.py` and
|
|
563
|
+
`src/metatables/api/app/routes/table_import.py`. Existing introspect handles Writer refresh.
|
|
564
564
|
- Migration `0007_external_relation_names` widens hosted physical names to 128
|
|
565
565
|
characters. SQLite retains its descriptive legacy VARCHAR width without a table
|
|
566
566
|
rebuild; SQLite does not enforce that width. Missing relation kinds read as table.
|
|
@@ -80,7 +80,7 @@ dropped tables. Revision files already applied remain immutable.
|
|
|
80
80
|
|
|
81
81
|
## MetaTables system migrations
|
|
82
82
|
|
|
83
|
-
The API continues to own `api.backend.migrations`, `metatables_catalog_version`
|
|
83
|
+
The API continues to own `metatables.api.backend.migrations`, `metatables_catalog_version`
|
|
84
84
|
and the explicit admin bootstrap/upgrade operation in Settings. Application
|
|
85
85
|
migration commands do not invoke that operation. Applications must keep their
|
|
86
86
|
physical names and version tables separate from reserved system objects.
|
|
@@ -10,6 +10,11 @@ Date: 2026-09-30
|
|
|
10
10
|
|
|
11
11
|
Status: Accepted.
|
|
12
12
|
|
|
13
|
+
Amended 2026-10-01 (MetaTables #11): `METATABLES_API_URL` selects only a loopback
|
|
14
|
+
development API. Hosted clients resolve their SDK-owned Environment's deployment
|
|
15
|
+
automatically under amended ADR 0003. Document both CLI and Python selection;
|
|
16
|
+
`--local` and `configure_local_client()` continue configuring the URL automatically.
|
|
17
|
+
|
|
13
18
|
Amended 2026-10-01: both SDK session sources use the developer's saved session
|
|
14
19
|
from the machine's credential store, which the Main Sequence CLI and the VS Code
|
|
15
20
|
extension share. The API process receives only its backend and reads that
|
|
@@ -42,7 +47,7 @@ Vite already proxies `/api` and the frontend already supports direct access in
|
|
|
42
47
|
development mode. This is the local runtime to expose through the installed CLI.
|
|
43
48
|
|
|
44
49
|
The remaining setup assumes two manually prepared source checkouts. The launcher
|
|
45
|
-
requires `api/app/main.py` inside its backend directory and a pre-existing Admin
|
|
50
|
+
requires `src/metatables/api/app/main.py` inside its backend directory and a pre-existing Admin
|
|
46
51
|
`node_modules` directory. The installed CLI starts only the API. System bootstrap
|
|
47
52
|
and application-owned migrations also need supported client commands.
|
|
48
53
|
|
|
@@ -137,8 +142,9 @@ ownership, permissions, loopback target and current launcher identity, and uses
|
|
|
137
142
|
the API's existing Git/runtime checks. An absent, stale or mismatched local
|
|
138
143
|
connection produces a local launch error; it never falls back to hosted discovery.
|
|
139
144
|
The explicit local selection applies to the operation scope in the CLI and the
|
|
140
|
-
configured Python process. Other invocations
|
|
141
|
-
|
|
145
|
+
configured Python process. Other invocations use ADR 0003's Environment-scoped
|
|
146
|
+
hosted discovery unless a loopback development URL is configured. A hosted URL
|
|
147
|
+
in `METATABLES_API_URL` is rejected; it cannot override Environment selection.
|
|
142
148
|
|
|
143
149
|
For execution and authoring, `--provider ledger.migrations:migration` resolves in
|
|
144
150
|
the application's Python environment. The selected API supplies its environment
|
|
@@ -200,7 +206,7 @@ SDK authentication and API identity refresh requirements still apply.
|
|
|
200
206
|
|
|
201
207
|
Move reusable combined-launch orchestration into the installed Python package.
|
|
202
208
|
Both the public CLI and the existing VS Code developer launch should use it.
|
|
203
|
-
Validate importable API modules instead of requiring `api/app/main.py` inside the
|
|
209
|
+
Validate importable API modules instead of requiring `src/metatables/api/app/main.py` inside the
|
|
204
210
|
consuming application. Reuse the current supervisor and private connection-file
|
|
205
211
|
mechanism rather than creating a second independent runtime lifecycle.
|
|
206
212
|
|
|
@@ -18,7 +18,7 @@ ad hoc storage definition inside `update()`.
|
|
|
18
18
|
```python
|
|
19
19
|
from datetime import datetime, timezone
|
|
20
20
|
from uuid import UUID
|
|
21
|
-
from examples.updater import BalanceConfig, run
|
|
21
|
+
from metatables.examples.updater import BalanceConfig, run
|
|
22
22
|
|
|
23
23
|
run(BalanceConfig(
|
|
24
24
|
account_uid=UUID("your-existing-account-uuid"),
|
|
@@ -13,7 +13,7 @@ the database applies your Reader and Writer grants to every table it touches.
|
|
|
13
13
|
[The query example](../examples/query.py) selects account rows by name:
|
|
14
14
|
|
|
15
15
|
```python
|
|
16
|
-
from examples.query import find_accounts
|
|
16
|
+
from metatables.examples.query import find_accounts
|
|
17
17
|
|
|
18
18
|
result = find_accounts("runtime-data-source-uuid", "Savings")
|
|
19
19
|
```
|
{mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/quickstart.md
RENAMED
|
@@ -4,7 +4,7 @@ Start with an existing table you can view. Complete [installation and
|
|
|
4
4
|
connection](installation-and-connection.md), then run:
|
|
5
5
|
|
|
6
6
|
```bash
|
|
7
|
-
python -m examples.quickstart TABLE_UID
|
|
7
|
+
python -m metatables.examples.quickstart TABLE_UID
|
|
8
8
|
```
|
|
9
9
|
|
|
10
10
|
The [example](../examples/quickstart.py) retrieves the resource through
|
|
@@ -9,7 +9,7 @@ identity, existing MetaTable object, or update resource.
|
|
|
9
9
|
|
|
10
10
|
```python
|
|
11
11
|
from datetime import datetime, timezone
|
|
12
|
-
from examples.reader import balances
|
|
12
|
+
from metatables.examples.reader import balances
|
|
13
13
|
|
|
14
14
|
frame = balances(
|
|
15
15
|
"balance-table-uuid", "account-uuid",
|
{mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/client/tutorial.md
RENAMED
|
@@ -5,7 +5,7 @@ an instrument table and three time-index tables, load recorded prices, calculate
|
|
|
5
5
|
daily returns and rolling volatility, and read published results independently.
|
|
6
6
|
Choose different execution roots and inspect successes and simulated failures.
|
|
7
7
|
|
|
8
|
-
The complete code is in [examples/tutorial](../examples/tutorial/README.md).
|
|
8
|
+
The complete code is in [src/metatables/examples/tutorial](../examples/tutorial/README.md).
|
|
9
9
|
Run commands from the MetaTables repository root in the Python environment where
|
|
10
10
|
[MetaTables and the compatible SDK](installation-and-connection.md) are installed.
|
|
11
11
|
The sample contains recorded SPY, QQQ, and IWM prices; a symbol is simply the key
|
|
@@ -14,7 +14,7 @@ identifying one instrument. No market-data service is needed for this exercise.
|
|
|
14
14
|
## 1. Preview the data
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
|
-
python -m examples.tutorial preview
|
|
17
|
+
python -m metatables.examples.tutorial preview
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
This command needs no API connection. Expect `Recorded prices: 69 rows` and
|
|
@@ -27,7 +27,7 @@ dates per symbol. A return needs a preceding price, so each symbol has 22 return
|
|
|
27
27
|
and calculates each symbol's change independently:
|
|
28
28
|
|
|
29
29
|
```python
|
|
30
|
-
from examples.tutorial.frames import daily_returns, recorded_prices, rolling_volatility
|
|
30
|
+
from metatables.examples.tutorial.frames import daily_returns, recorded_prices, rolling_volatility
|
|
31
31
|
|
|
32
32
|
prices = recorded_prices()
|
|
33
33
|
returns = daily_returns(prices)
|
|
@@ -86,11 +86,11 @@ These are system migrations only. The tutorial's application migrations run
|
|
|
86
86
|
in the application's Python process through the client in both modes:
|
|
87
87
|
|
|
88
88
|
```bash
|
|
89
|
-
python -m examples.scripts.setup_metatables --development-client .local/development-client.json
|
|
89
|
+
python -m metatables.examples.scripts.setup_metatables --development-client .local/development-client.json
|
|
90
90
|
```
|
|
91
91
|
|
|
92
92
|
Omit `--development-client` to use hosted deployment discovery. The application
|
|
93
|
-
process loads `examples.tutorial.migrations:migration` and uses the selected
|
|
93
|
+
process loads `metatables.examples.tutorial.migrations:migration` and uses the selected
|
|
94
94
|
runtime's environment connection. The API needs no tutorial provider installation
|
|
95
95
|
or configuration. The script reserves missing catalog bindings, applies outstanding
|
|
96
96
|
Alembic revisions locally, and finalizes tables. It does not seed rows or run producers.
|
|
@@ -113,7 +113,7 @@ tutorial code so it loads the updated provider before setup.
|
|
|
113
113
|
## 4. Seed the instrument table
|
|
114
114
|
|
|
115
115
|
```bash
|
|
116
|
-
python -m examples.tutorial seed
|
|
116
|
+
python -m metatables.examples.tutorial seed
|
|
117
117
|
```
|
|
118
118
|
|
|
119
119
|
Expect the three instrument rows. [operations.py](../examples/tutorial/operations.py)
|
|
@@ -127,8 +127,8 @@ Seed first because the three time-index tables' foreign keys require those symbo
|
|
|
127
127
|
## 5. Run the connected updaters
|
|
128
128
|
|
|
129
129
|
```bash
|
|
130
|
-
python -m examples.tutorial update --root returns
|
|
131
|
-
python -m examples.tutorial update --root volatility
|
|
130
|
+
python -m metatables.examples.tutorial update --root returns
|
|
131
|
+
python -m metatables.examples.tutorial update --root volatility
|
|
132
132
|
```
|
|
133
133
|
|
|
134
134
|
[updaters.py](../examples/tutorial/updaters.py) contains three producers:
|
|
@@ -190,8 +190,8 @@ only once.
|
|
|
190
190
|
## 6. Read the result independently
|
|
191
191
|
|
|
192
192
|
```bash
|
|
193
|
-
python -m examples.tutorial read --root returns --symbol SPY
|
|
194
|
-
python -m examples.tutorial read --root volatility --symbol SPY
|
|
193
|
+
python -m metatables.examples.tutorial read --root returns --symbol SPY
|
|
194
|
+
python -m metatables.examples.tutorial read --root volatility --symbol SPY
|
|
195
195
|
```
|
|
196
196
|
|
|
197
197
|
The reader resolves the published table by logical identifier and selects one
|
|
@@ -199,7 +199,7 @@ symbol. Without `--prepare-data`, it does not construct or execute an updater:
|
|
|
199
199
|
|
|
200
200
|
```python
|
|
201
201
|
from metatables import TimeIndexTableRef
|
|
202
|
-
from examples.tutorial.tables import RETURN_IDENTIFIER
|
|
202
|
+
from metatables.examples.tutorial.tables import RETURN_IDENTIFIER
|
|
203
203
|
|
|
204
204
|
reference = TimeIndexTableRef.from_identifier(RETURN_IDENTIFIER)
|
|
205
205
|
frame = reference.get_df_between_dates(
|
|
@@ -64,7 +64,7 @@ also uses SQLAlchemy to describe the user's application tables.
|
|
|
64
64
|
|
|
65
65
|
A user defines `class Account(PlatformManagedMetaTable, Base)` to author storage.
|
|
66
66
|
After registration, `metatables.MetaTable` represents its HTTP resource. Inside
|
|
67
|
-
the service, `api.backend.persistence.models.MetaTable` is the catalog ORM row.
|
|
67
|
+
the service, `metatables.api.backend.persistence.models.MetaTable` is the catalog ORM row.
|
|
68
68
|
They describe the same resource at different boundaries; they are not interchangeable.
|
|
69
69
|
Client applications import `metatables`, not the API persistence models.
|
|
70
70
|
|
|
@@ -1,17 +1,25 @@
|
|
|
1
1
|
# Architecture and dependency boundaries
|
|
2
2
|
|
|
3
3
|
The distribution has two public surfaces. `src/metatables` is the installed
|
|
4
|
-
client, authoring helpers, migrations, updaters, and readers. `api`
|
|
5
|
-
|
|
4
|
+
client, authoring helpers, migrations, updaters, and readers. `src/metatables/api`
|
|
5
|
+
contains the HTTP service, catalog, domain rules, and physical storage operations.
|
|
6
|
+
Client applications import `metatables`; server modules use `metatables.api` and
|
|
7
|
+
bundled examples use `metatables.examples`. Package discovery is restricted to
|
|
8
|
+
`src`, so the wheel owns only the `metatables` top-level package.
|
|
9
|
+
|
|
10
|
+
`api/metatables/main.py` is a file entrypoint for the platform deployment workflow.
|
|
11
|
+
It imports the namespaced server and is omitted from the wheel. There are no
|
|
12
|
+
top-level `api` or `examples` compatibility packages: applications can own those
|
|
13
|
+
names independently, including when they launch the installed MetaTables CLI.
|
|
6
14
|
|
|
7
15
|
| Directory | Owns |
|
|
8
16
|
| --- | --- |
|
|
9
|
-
| `api/app` | FastAPI routes, dependency wiring, HTTP errors, local launcher admission. |
|
|
10
|
-
| `api/backend/domain` and `contracts` | Storage access constraints, lifecycle, permission decisions, payload normalization. |
|
|
11
|
-
| `api/backend/persistence` | Catalog ORM, queries, grants, membership, journals, update state. |
|
|
12
|
-
| `api/backend/integrations` | SDK adapters and physical operations with PostgreSQL and SQLite communication adapters. |
|
|
13
|
-
| `api/backend/backends` | DatabaseBackend contract, engine registry, catalog, table and SQL implementations. |
|
|
14
|
-
| `api/backend/migrations` | Catalog schema history. |
|
|
17
|
+
| `src/metatables/api/app` | FastAPI routes, dependency wiring, HTTP errors, local launcher admission. |
|
|
18
|
+
| `src/metatables/api/backend/domain` and `contracts` | Storage access constraints, lifecycle, permission decisions, payload normalization. |
|
|
19
|
+
| `src/metatables/api/backend/persistence` | Catalog ORM, queries, grants, membership, journals, update state. |
|
|
20
|
+
| `src/metatables/api/backend/integrations` | SDK adapters and physical operations with PostgreSQL and SQLite communication adapters. |
|
|
21
|
+
| `src/metatables/api/backend/backends` | DatabaseBackend contract, engine registry, catalog, table and SQL implementations. |
|
|
22
|
+
| `src/metatables/api/backend/migrations` | Catalog schema history. |
|
|
15
23
|
| `src/metatables/models.py` | API resource clients and MetaTables-specific DataSource behavior. |
|
|
16
24
|
| `src/metatables/migrations` | Application provider lifecycle and scoped Alembic access. |
|
|
17
25
|
| `src/metatables/updaters` | Producer execution and configuration hashing. |
|
|
@@ -22,7 +22,7 @@ decisions in the SDK repository.
|
|
|
22
22
|
|
|
23
23
|
1. Update behavior and relevant tests together.
|
|
24
24
|
2. Update the authored concept/workflow pages and the capability inventory.
|
|
25
|
-
3. Keep runnable examples in `examples/` and exercise them in `tests/examples`.
|
|
25
|
+
3. Keep runnable examples in `src/metatables/examples/` and exercise them in `tests/examples`.
|
|
26
26
|
4. Regenerate references and check links, imports, examples, and the site.
|
|
27
27
|
|
|
28
28
|
```bash
|
|
@@ -38,7 +38,7 @@ The reference generator derives HTTP paths and schemas from `create_app`, Python
|
|
|
38
38
|
exports from `metatables.__all__`, and CLI arguments from Typer. Capability status
|
|
39
39
|
is maintained deliberately in the inventory because reflection cannot establish
|
|
40
40
|
behavioral support. The generator also publishes copies of tested example assets
|
|
41
|
-
inside the documentation site; edit their originals in `examples/`.
|
|
41
|
+
inside the documentation site; edit their originals in `src/metatables/examples/`.
|
|
42
42
|
|
|
43
43
|
The test suite rejects stale generated artifacts. The documentation checker
|
|
44
44
|
validates local Markdown links, heading links, Python-block syntax, and skill
|
{mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/contributing/testing.md
RENAMED
|
@@ -84,7 +84,7 @@ referenced behavior tests. A route listing is not a substitute for executing the
|
|
|
84
84
|
test. Signature and database-operation contracts live beside it; documentation is
|
|
85
85
|
not used as a test fixture store.
|
|
86
86
|
|
|
87
|
-
`tests/examples` executes the assets in `examples/`. Contract construction,
|
|
87
|
+
`tests/examples` executes the assets in `src/metatables/examples/`. Contract construction,
|
|
88
88
|
bound SQL, incremental frame shape, and SQLite persistence run without an API.
|
|
89
89
|
A PostgreSQL example test also creates the authored relations, persists producer
|
|
90
90
|
rows, and executes the compiled bound query in the disposable database. Network
|
{mainsequence_metatable-0.1.5.dev6 → mainsequence_metatable-0.1.6.dev7}/docs/examples/README.md
RENAMED
|
@@ -21,7 +21,7 @@ For one connected walkthrough, start with the [market tutorial](tutorial/README.
|
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
23
|
python -m pytest -q tests/examples
|
|
24
|
-
python -m examples.quickstart TABLE_UID
|
|
24
|
+
python -m metatables.examples.quickstart TABLE_UID
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
The [managed-table guide](../client/define-and-migrate-tables.md) explains how
|
|
@@ -14,7 +14,7 @@ They create a catalog registration; they do not provision a database.
|
|
|
14
14
|
4. Run the script with your edited file:
|
|
15
15
|
|
|
16
16
|
```sh
|
|
17
|
-
python examples/data_sources/register.py /path/to/my-source.json --validate
|
|
17
|
+
python src/metatables/examples/data_sources/register.py /path/to/my-source.json --validate
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
Each run creates a registration. Omit `--validate` to register without connecting.
|
|
@@ -24,8 +24,8 @@ In another terminal in the same project and Python environment:
|
|
|
24
24
|
```bash
|
|
25
25
|
metatables --local runtime status
|
|
26
26
|
metatables --local runtime initialize
|
|
27
|
-
metatables --local migrations upgrade --provider examples.local_app.migrations:migration
|
|
28
|
-
python -m examples.local_app
|
|
27
|
+
metatables --local migrations upgrade --provider metatables.examples.local_app.migrations:migration
|
|
28
|
+
python -m metatables.examples.local_app
|
|
29
29
|
metatables --local meta-table list
|
|
30
30
|
```
|
|
31
31
|
|
|
@@ -41,7 +41,7 @@ selected dialect, upserts one note, and reads it back. Ordinary reads and writes
|
|
|
41
41
|
the existing row before any write:
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
python -m examples.local_app --read-only
|
|
44
|
+
python -m metatables.examples.local_app --read-only
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
The API retains its selected database across restarts and branches. Initialization
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"""Run with python -m examples.local_app from your application's Git checkout."""
|
|
1
|
+
"""Run with python -m metatables.examples.local_app from your application's Git checkout."""
|
|
2
2
|
|
|
3
3
|
import json
|
|
4
4
|
|
|
@@ -8,9 +8,9 @@ from metatables import configure_local_client
|
|
|
8
8
|
def write_and_read(*, write: bool = True):
|
|
9
9
|
from sqlalchemy import MetaData, select
|
|
10
10
|
|
|
11
|
-
from examples.local_app.tables import Note
|
|
12
11
|
from metatables import MetaTable
|
|
13
12
|
from metatables.compiled_sql.v1 import compile_sqlalchemy_statement, dialect_insert
|
|
13
|
+
from metatables.examples.local_app.tables import Note
|
|
14
14
|
|
|
15
15
|
resource = MetaTable.get(identifier=Note.__metatable_identifier__)
|
|
16
16
|
table = Note.__table__.to_metadata(MetaData(), schema=resource.physical_schema,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""Only this application's note table belongs to this application-owned provider."""
|
|
2
2
|
|
|
3
|
-
from examples.local_app.tables import Base, Note
|
|
3
|
+
from metatables.examples.local_app.tables import Base, Note
|
|
4
4
|
from metatables.migrations import (
|
|
5
5
|
build_alembic_version_metatable,
|
|
6
6
|
build_metatable_migration_provider,
|
|
@@ -13,9 +13,9 @@ Version = build_alembic_version_metatable(
|
|
|
13
13
|
table_name='metatables_local_example__alembic_version',
|
|
14
14
|
)
|
|
15
15
|
migration = build_metatable_migration_provider(
|
|
16
|
-
package='examples.local_app', migration_namespace='metatables_local_example',
|
|
17
|
-
script_location='examples.local_app.migrations:',
|
|
18
|
-
version_location_prefix='examples.local_app.migrations:versions',
|
|
16
|
+
package='metatables.examples.local_app', migration_namespace='metatables_local_example',
|
|
17
|
+
script_location='metatables.examples.local_app.migrations:',
|
|
18
|
+
version_location_prefix='metatables.examples.local_app.migrations:versions',
|
|
19
19
|
target_metadata=Base.metadata, alembic_registry=Version,
|
|
20
20
|
metatable_models=build_metatable_model_registry([Note], base=Base),
|
|
21
21
|
)
|
|
@@ -10,7 +10,7 @@ def setup_metatables():
|
|
|
10
10
|
|
|
11
11
|
with api_endpoint_scope():
|
|
12
12
|
print(f"Preparing tutorial on MetaTables API: {resolve_api_endpoint().url}", flush=True)
|
|
13
|
-
result = upgrade_application('examples.tutorial.migrations:migration', timeout=120)
|
|
13
|
+
result = upgrade_application('metatables.examples.tutorial.migrations:migration', timeout=120)
|
|
14
14
|
print(f"Tutorial DataSource: {result['data_source_uid']}; revision: {result['revision']} "
|
|
15
15
|
f"({'migrated' if result['migrated'] else 'already current'})", flush=True)
|
|
16
16
|
return result
|
|
@@ -22,7 +22,7 @@ def main():
|
|
|
22
22
|
help="Use the private connection from the running local API/Admin launcher")
|
|
23
23
|
args = parser.parse_args()
|
|
24
24
|
if args.development_client:
|
|
25
|
-
from api.app.development_client import configure_development_client
|
|
25
|
+
from metatables.api.app.development_client import configure_development_client
|
|
26
26
|
|
|
27
27
|
configure_development_client(args.development_client)
|
|
28
28
|
setup_metatables()
|