matrx-orm 3.1.235__tar.gz → 3.1.236__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.
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/PKG-INFO +1 -1
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/pyproject.toml +1 -1
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_borrowed_role_never_reaches_server_calls.py +4 -4
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_lock_contention_retry.py +16 -2
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_transaction_gucs_one_round_trip.py +11 -5
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/.gitignore +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/AGENTS.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/BASE_CLASS_METHODS.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/CHANGELOG.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/CLAUDE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/MODEL_API.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/database/orm/extended/managers/ai_model_base.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/docs/migrations.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/async_postgresql.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/base_adapter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/postgrest_client_adapter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/adapters/supabase_adapter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/admin/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/admin/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/admin/router.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/auth.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/handlers.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/protocol.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/api/server.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/associations.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/cache_debug.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/catalog.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/catalog_sql.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/postgres_connection.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/postgrest.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/supabase_auth.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/supabase_config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/client/supabase_manager.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/EXTENDED-TASK.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/RELATIONS-TASKS.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/TASKS.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/admin_lane.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/async_db_manager.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/base.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/connections.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/db_function.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/diagnostics.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/expressions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/extended.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/fields.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/foreign_session_state.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/introspection.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/listen.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/loop_filters.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/model_dto.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/model_view.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/one_database.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/paginator.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/pool_maintenance.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/pool_watch.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/pooler_role.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/pydantic_bridge.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/read_write.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/registry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/relations.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/resilience.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/rls_session.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/session_context.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/signals.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/statement_ceiling.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/tls.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/transaction.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/types.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/write_queue.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/core/write_retry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/entity.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/error_handling.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/exceptions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/extended/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/extended/app_error_handler.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/identity_rule.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/local_sqlite.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/middleware/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/middleware/base.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/cli.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/ddl.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/diff.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/executor.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/integration.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/loader.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/operations.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/state.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/migrations/table_filter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/no_org_assignment.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/bulk_update_values.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/catalog_select.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/conflict.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/conflict_writes.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/create.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/db_functions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/delete.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/dynamic_admin.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/dynamic_crud.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/graph_walk.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/latest_rows.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/queue_claim.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/read.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/relational_backfill.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/staging_load.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/operations/update.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/platform_access.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/platform_db.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/py.typed +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/pytest_lock_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/pytest_plugin.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/db_objects.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/table_detailed_relationships.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/table_typescript_relationship.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/query/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/query/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/query/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/query/builder.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/query/executor.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/resources/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/resources/additional-assigners-2026-09-12.json +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/resources/org_assignment_trigger_baseline.json +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/code_handler.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/codegen_writer.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/columns.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/common.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/diff_preview.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/entity_capabilities.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/excluded_targets.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/generator.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/helpers/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/helpers/base_generators.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/helpers/entity_generators.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/helpers/git_checker.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/package_wiring.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/relationships.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/runner.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/schema.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/schema_manager.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/tables.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/views.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/FEATURE.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/attachments.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/backup_restore.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/crypto.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/host_authorization.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/items.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/model.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/mutation_receipts.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/native_enable.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/native_lifecycle.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/native_passkeys.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/native_source.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/org_service.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/org_vault_gate.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/service.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/secrets_battery/vault_history.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/coalesce.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/dag.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/errors.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/fallback.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/flush.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/lifecycle.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/managed.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/op.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/reads.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/session.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/session/telemetry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/executor.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/queries.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/registry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/types.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/sql_executor/utils.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/state.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/utils/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/utils/sql_utils.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/utils/type_converters.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/write_actor.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/scripts/git-branches.sh +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/scripts/publish.sh +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/scripts/release.sh +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/conftest.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_adapter_registry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_admin_db_columns.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_admin_response_rendering.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_admin_search_negation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_admin_search_sentinels.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_advisory_lock.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_agent_message.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_api_auth.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_api_config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_api_handlers.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_api_protocol.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_array_agg_order_by.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_association_trigger_actor_naming.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_associations.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_associations_wiring.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_bulk_hydration_offload.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_bulk_update_by_pk.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_bulk_upsert_increment_set_fields.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_cache_debug.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_call_function.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_case_when.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_catalog.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_column_scoped_writes.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_committed_row_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_composite_pk_filter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_composite_pk_write_paths.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_conflict_target.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_conflict_writes.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_connection_codecs.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_connection_poison_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_connection_primitives.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_count_composite_distinct.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_count_limit_param_leak.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_db_function_field.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_ddl_generator.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_deadlock_retry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_derived_table.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_dirty_tracking.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_dynamic_crud.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_exceptions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_execute_query_integrity_mapping.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_expression_primitives.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_fields.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_filter_jsonb_agg_array_index.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_fk_cycle_resolution.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_from_alias.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_fts.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_func_expression_args.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_graph_walk.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_having_annotate_alias.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_insert_ignore_and_admin_primitives.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_introspect_rls_policies.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_join_and_aggregate.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_latest_rows.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_listen_notify.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_local_sqlite.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_managed_write_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_matrx_entity.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_migration_diff_types.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_migration_loader.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_model_instance.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_model_meta.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_optimistic_concurrency.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_order_by_expression.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_org_assignment_inventory.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_orm_banners_are_client_safe.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_parameter_name_hydration.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_patch_jsonb_path.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_percentile_cont.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_persisted_count.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_person_scoped_session_bypasses_shared_cache.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_pool_create_never_wedges.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_pool_holder_census.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_pool_loop_recreation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_pool_maintenance.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_postgrest_filters.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_pydantic_bridge.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_query_builder.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_query_error_detail.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_query_executor_sql.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_query_timeout.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_querybuilder_clone_semantics.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_queue_claim.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_read_connection_retry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_read_write_declared.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_registry.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_registry_multi_database.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_registry_multi_schema.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_relational_backfill.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_relations.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_resilience.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_rls_session_scope.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_schema_exists.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_session_advisory_lock.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_standalone_write_session_context.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_state_cache.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_subquery_filter_raw.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_subquery_in_filter.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_subquery_nested_expressions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_supabase_auth.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_supabase_config.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_tls.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_transaction_database_identity.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_transaction_pool_release_sends_nothing.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_typed_join_projection.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_typed_predicates.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_update_case_expression.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_update_subquery.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_update_with_rebase.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_upsert_default_leak.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_upsert_with_conflict.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_values_jsonb_decode.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_watched_lifecycle.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_write_queue_deadline.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_write_retry_semantics.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/MODULE_README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/conftest.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_bulk_ops.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_cache_integration.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_crud.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_foreign_keys.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_m2m.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_manager.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_migrations_live.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_query_execution.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/test_schema_diff.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level2/verify_committed_row_guard_pg17.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/live_pooler_role.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/native_source_cases.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/native_source_oracle.rs +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/.env.example +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/generate.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/generated/.gitkeep +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/matrx_orm.yaml +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project/test_schema_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/.env.example +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/README.md +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/client_example.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/client_example.ts +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/client_supabase_example.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/sample_project_desktop/server.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/entity_tests.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_base_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_composite_pk_fk_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_composite_unique_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_dto_identity_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_entity_capability_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_enum_ordering.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_excluded_fk_targets.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_generate_schema.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_junction_analysis.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_multi_schema_output.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_schema_analysis.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_sql_expression_defaults.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_table_relationships_query.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema/test_view_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema_builder/test_array_default_parsing.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema_builder/test_enum_array_column.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema_builder/test_focused_generation_plan.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema_builder/test_host_models_aggregator.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/schema_builder/test_never_filter_columns.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/__init__.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/conftest.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_a_failed_capture_still_names_the_failure.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_cache_no_downgrade.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_capture_poison_proof.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_coalesce.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_dag.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_disk_spill_fallback.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_flush_individual_fallback.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_governed_write.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_managed.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_op_enqueue_site.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_reads.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_record_error_bounded_insert.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_record_error_storm.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_session.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_spill_guard_plugin.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/session/test_tests_never_write_live_system_error.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_backend_handed_over_mid_transaction_never_takes_our_writes.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_bulk_cache_never_stalls_the_loop.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_keyword_column_refuses_generation.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_list_of_uuids_binds_as_uuid_array.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_read_only_backend_never_refuses_our_writes.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_a_sealed_field_shows_no_character_of_its_value.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_array_arg_element_type.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_attachment_mutation_serialization.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_backup_alias_conflict.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_backup_history_restore.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_backup_restore_live.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_call_function_as.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_call_function_none_mode.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_composite_fk_is_not_a_column_fk.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_database_name_alias.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_db_functions.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_dsn_password_masking.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_dynamic_select_unregistered.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_first_asks_the_database_for_one_row.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_foreign_session_state.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_immutable_insert_or_exact_verify.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_keyed_digest.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_model_cls_refactor.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_native_enable.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_native_lifecycle.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_native_lifecycle_fences.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_native_passkey_receipts.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_native_source.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_no_blocking_asyncpg_tls.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_one_database.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_order_by_desc_nulls_last.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_org_vault_gate.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_package_wiring_views.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_pooler_role_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_secret_audit_names_its_organization.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_secrets_battery.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_secrets_minting_keys.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_shared_lock_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_sql_param_casts.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_state_cache_sweeps_stale.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_statement_ceiling_warning.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_sync_twins_guard.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_update_result_truthiness.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_user_visible_lookup.py +0 -0
- {matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/test_vault_aggregate_recovery_stateful.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: matrx-orm
|
|
3
|
-
Version: 3.1.
|
|
3
|
+
Version: 3.1.236
|
|
4
4
|
Summary: Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching
|
|
5
5
|
Project-URL: Homepage, https://github.com/AI-Matrix-Engine/aidream-current
|
|
6
6
|
Project-URL: Repository, https://github.com/AI-Matrix-Engine/aidream-current
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "matrx-orm"
|
|
3
|
-
version = "3.1.
|
|
3
|
+
version = "3.1.236"
|
|
4
4
|
description = "Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "MIT" }
|
|
@@ -91,7 +91,7 @@ class ServerBackend:
|
|
|
91
91
|
self.in_tx = False
|
|
92
92
|
self.local_role = None
|
|
93
93
|
|
|
94
|
-
async def execute(self, sql: str, *args: Any,
|
|
94
|
+
async def execute(self, sql: str, *args: Any, **_kw: Any) -> str: # noqa: ASYNC109 — mirrors asyncpg's connection signature
|
|
95
95
|
self.statements.append(sql)
|
|
96
96
|
s = sql.strip().upper()
|
|
97
97
|
if s == "BEGIN":
|
|
@@ -111,7 +111,7 @@ class ServerBackend:
|
|
|
111
111
|
self.server_calls += 1
|
|
112
112
|
return [{"id": "row-1"}]
|
|
113
113
|
|
|
114
|
-
async def fetch(self, sql: str, *args: Any,
|
|
114
|
+
async def fetch(self, sql: str, *args: Any, **_kw: Any) -> list[dict[str, Any]]: # noqa: ASYNC109 — mirrors asyncpg's connection signature
|
|
115
115
|
self.statements.append(sql)
|
|
116
116
|
if "set_config" in sql:
|
|
117
117
|
self._apply_set_config(sql, args)
|
|
@@ -120,7 +120,7 @@ class ServerBackend:
|
|
|
120
120
|
return self._server_only()
|
|
121
121
|
return []
|
|
122
122
|
|
|
123
|
-
async def fetchval(self, sql: str, *args: Any,
|
|
123
|
+
async def fetchval(self, sql: str, *args: Any, **_kw: Any) -> Any: # noqa: ASYNC109 — mirrors asyncpg's connection signature
|
|
124
124
|
self.statements.append(sql)
|
|
125
125
|
if "current_user" in sql:
|
|
126
126
|
return self.current_user
|
|
@@ -131,7 +131,7 @@ class ServerBackend:
|
|
|
131
131
|
return self._server_only()[0]["id"]
|
|
132
132
|
return None
|
|
133
133
|
|
|
134
|
-
async def fetchrow(self, sql: str, *args: Any,
|
|
134
|
+
async def fetchrow(self, sql: str, *args: Any, **_kw: Any) -> Any: # noqa: ASYNC109 — mirrors asyncpg's connection signature
|
|
135
135
|
if "set_config" in sql:
|
|
136
136
|
self._apply_set_config(sql, args)
|
|
137
137
|
if "current_user" in sql:
|
|
@@ -76,6 +76,18 @@ class _FakeConn:
|
|
|
76
76
|
raise exc
|
|
77
77
|
return [{"id": "row"}]
|
|
78
78
|
|
|
79
|
+
# The borrowed-role re-run (foreign_session_state) pins a transaction, reads the
|
|
80
|
+
# role and resets it before re-running the statement once.
|
|
81
|
+
@asynccontextmanager
|
|
82
|
+
async def transaction(self):
|
|
83
|
+
yield
|
|
84
|
+
|
|
85
|
+
async def execute(self, query: str, *args: object, **_kw: object) -> str:
|
|
86
|
+
return "SELECT 1"
|
|
87
|
+
|
|
88
|
+
async def fetchrow(self, query: str, *args: object, **_kw: object):
|
|
89
|
+
return {"borrowed": "postgres", "login": "postgres"}
|
|
90
|
+
|
|
79
91
|
|
|
80
92
|
@pytest.fixture
|
|
81
93
|
def fake_pool(monkeypatch):
|
|
@@ -203,11 +215,13 @@ async def test_inside_a_transaction_it_is_NEVER_reissued(fake_pool, monkeypatch)
|
|
|
203
215
|
@pytest.mark.asyncio
|
|
204
216
|
async def test_a_permission_denial_is_never_retried_as_contention(fake_pool):
|
|
205
217
|
denial = asyncpg.exceptions.InsufficientPrivilegeError("permission denied")
|
|
206
|
-
conn = fake_pool([denial, None])
|
|
218
|
+
conn = fake_pool([denial, denial, None, None])
|
|
207
219
|
|
|
208
220
|
with pytest.raises(PermissionDeniedError):
|
|
209
221
|
await AsyncDatabaseManager.execute_query(
|
|
210
222
|
"test", SELECT, "user", verify_empty=False
|
|
211
223
|
)
|
|
212
224
|
|
|
213
|
-
|
|
225
|
+
# Exactly ONE re-run, as the login role (a borrowed pooler role is reset —
|
|
226
|
+
# foreign_session_state); never the contention loop's budget.
|
|
227
|
+
assert conn.calls == 2
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/tests/level1/test_transaction_gucs_one_round_trip.py
RENAMED
|
@@ -66,13 +66,14 @@ async def test_begin_sets_ceilings_and_declared_context_in_one_round_trip(monkey
|
|
|
66
66
|
gucs = [call for call in conn.calls if "set_config" in call[0]]
|
|
67
67
|
assert len(gucs) == 1, statements
|
|
68
68
|
sql, args = gucs[0]
|
|
69
|
-
assert sql.count("set_config(") ==
|
|
69
|
+
assert sql.count("set_config(") == 6
|
|
70
70
|
assert args == (
|
|
71
71
|
"restrict_nonsystem_relation_kind", "",
|
|
72
72
|
"lock_timeout", "5000",
|
|
73
73
|
"app.actor_tier", "agent",
|
|
74
74
|
"app.actor_system", "flashcards",
|
|
75
75
|
"app.actor_agent", "a1",
|
|
76
|
+
"role", "none", # a borrowed role is reset; always last
|
|
76
77
|
)
|
|
77
78
|
|
|
78
79
|
|
|
@@ -84,10 +85,15 @@ async def test_nothing_declared_emits_only_the_foreign_state_clear(monkeypatch)
|
|
|
84
85
|
configure_session_context(None)
|
|
85
86
|
async with transaction_module.transaction("quiet"):
|
|
86
87
|
pass
|
|
87
|
-
#
|
|
88
|
-
# restrict_nonsystem_relation_kind is cleared
|
|
89
|
-
|
|
90
|
-
assert conn.calls
|
|
88
|
+
# What every transaction carries: another pooler client's leaked
|
|
89
|
+
# restrict_nonsystem_relation_kind is cleared and a borrowed role is reset to the
|
|
90
|
+
# login role (matrx_orm.core.foreign_session_state).
|
|
91
|
+
assert [sql for sql, _ in conn.calls] == [
|
|
92
|
+
"BEGIN",
|
|
93
|
+
"SELECT set_config($1, $2, true), set_config($3, $4, true)",
|
|
94
|
+
"COMMIT",
|
|
95
|
+
]
|
|
96
|
+
assert conn.calls[1][1] == ("restrict_nonsystem_relation_kind", "", "role", "none")
|
|
91
97
|
|
|
92
98
|
|
|
93
99
|
def test_a_bad_guc_name_is_refused_before_it_reaches_sql() -> None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/table_detailed_relationships.py
RENAMED
|
File without changes
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/python_sql/table_typescript_relationship.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/resources/additional-assigners-2026-09-12.json
RENAMED
|
File without changes
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/resources/org_assignment_trigger_baseline.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{matrx_orm-3.1.235 → matrx_orm-3.1.236}/matrx_orm/schema_builder/helpers/entity_generators.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|