metaobjects 0.19.4__tar.gz → 0.19.6__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.
- {metaobjects-0.19.4 → metaobjects-0.19.6}/PKG-INFO +7 -3
- {metaobjects-0.19.4 → metaobjects-0.19.6}/README.md +6 -2
- {metaobjects-0.19.4 → metaobjects-0.19.6}/pyproject.toml +1 -1
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validation_passes.py +37 -3
- {metaobjects-0.19.4 → metaobjects-0.19.6}/uv.lock +1 -1
- {metaobjects-0.19.4 → metaobjects-0.19.6}/.gitignore +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/LICENSE +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/hatch_build.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/agent_context/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/agent_context/scaffold.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/api_model.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/builder.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/naming.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/paths.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/apidocs/renderer.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/attr_class_map.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/cli.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/KNOWN_GAPS.md +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/config.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/extract_delegate_emitter.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/extract_schema_emitter.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/format.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/fr010_field_mapping.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generator_registry.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/entity_model.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/extractor_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/filter_allowlist_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/fr019_shared_enum.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/m2m_codegen.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/output_parser_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/output_prompt_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/payload_vo_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/render_helper_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/router_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/template_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/tph_plan.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/trace_helper_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/instance_artifacts.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/output_format_spec_emitter.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/overwrite_policy.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/runner.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/runtime/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/runtime/filter_parser.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/output_pattern.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/template_data.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/template_spec.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/type_map.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/core_types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/datatype.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/documentation/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/documentation/doc_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/documentation/doc_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/documentation/doc_schema.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/errors.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/merge.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/meta_data_loader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/registered_validation.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/directory_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/file_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/meta_data_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/uri_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_discriminator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_field_readonly.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_source_escapes.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_source_parameter_ref.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_source_physical_names.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/attr/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/attr/attr_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/attr/meta_attr.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/field/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/field/field_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/field/meta_field.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/identity/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/identity/identity_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/identity/meta_identity.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/index/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/index/index_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/index/meta_index.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/meta_object.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/meta_object_aware.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_class_registry.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_extract.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/value_object.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/relationship/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/relationship/derive_m2m_fields.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/relationship/meta_relationship.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/relationship/relationship_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/validator/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/validator/validator_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/meta_data.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/meta_root.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/db/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/db/db_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/db/db_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/origin/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/origin/meta_origin.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/origin/origin_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/source/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/source/meta_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/source/source_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/layout/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/layout/layout_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/layout/meta_layout.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/ui/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/ui/ui_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/meta_view.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/view_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/provider_extends.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/template/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/template/meta_template.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/template/prompt_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/template/template_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/naming_refs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/parser.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/parser_yaml.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/py.typed +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/registry.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/registry_manifest.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/email_document.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/escapers.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/KNOWN_GAPS.md +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/coerce.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/extract.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/extract_map.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/json_forgiving_reader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/locate.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/normalize.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/strip.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/xml_forgiving_reader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/filesystem_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/output_format_renderer.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/output_format_spec.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/prompt_field.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/prompt_overrides.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/prompt_style.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/renderer.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/verify.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/runtime/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/runtime/llm_recorder.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/runtime/n2m_resolver.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/runtime/object_manager.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/runtime/tph.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/serializer_json.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/shared/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/shared/base_types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/shared/separators.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/shared/structural.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/source/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/source/error_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/source/json_path.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/source/semantic_diff.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/source/yaml_positions.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/attr.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/db.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/documentation.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/field.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/identity.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/index.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/layout.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/object.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/origin.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/prompt.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/relationship.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/source.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/template.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/ui-web.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/ui.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/validator.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/spec_metamodel/view.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/super_resolve.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/validation_types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/yaml_desugar.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/extends/expected/BaseEntity.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/extends/expected/Program.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/extends/meta.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/nested-array/expected/AuthorBrief.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/nested-array/expected/PostBrief.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/nested-array/meta.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/scalars/expected/Metric.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/scalars/expected/Report.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/scalars/meta.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/vanilla/expected/Subscriber.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/golden/vanilla/meta.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_abstract_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_api_docs_builder.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_api_docs_paths.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli_providers.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli_registry.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli_staleness_nudge.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli_verify_strict.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_cli_verify_subverbs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_constants_config.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_entity_model.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_enum_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_extends_abstract_field_inheritance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_extractor_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_filter_allowlist_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_format.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_fr010_nested_object_prompt.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_fr010_output_codegen.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_fr019_shared_provided_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_generator_extension_seams.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_golden.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_inherit_without_restate_gate.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_inheritance_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_instance_artifacts.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_m2m_codegen.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_origin_nullability.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_output_parser_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_overwrite_policy.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_payload_vo_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_projection_compile.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_render_helper_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_render_helper_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_reverse_finders.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_router_autoset.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_router_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_runner.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_data.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_output_pattern.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_scope_helpers.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_scope_walk.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_template_spec.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_tph_codegen.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_trace_helper_generator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_type_map.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_validation_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/codegen/test_write_through.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/capabilities.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/conformance-expected-failures.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/conformance_adapter.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/corpus.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/expected_failures.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/fixture_discovery.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/navigator.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_api_docs_cross_port_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_extract_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_extract_object_verdict.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_fr010_loader_attrs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_fr011_attrs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_generator_registry_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_object_model_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_provider_composition_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_registry_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_runner_hardfail.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_spec_metamodel_embed.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_strict_attr_load.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_template_codegen_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_template_generator_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/test_yaml_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/conformance/yaml-conformance-expected-failures.json +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/api_contract_assertions.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/api_contract_jsonb_server.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/api_contract_m2m_server.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/api_contract_server.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/generated_jsonb_app.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/generated_m2m_app.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/generated_router_app.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/generated_tph_app.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/meta_ai_trace.yaml +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/normalization.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/postgres_container.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/query_runner.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/scenarios.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract_generated.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract_jsonb.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract_m2m.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract_m2m_generated.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_api_contract_tph_generated.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_generated_router_uuid_pk.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_llm_call_trace.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_normalization.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_query_scenarios.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/integration/test_runtime_return_types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/open_closed_proof_test.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_coerce.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_extract.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_extract_map.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_json_forgiving_reader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_locate.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_model.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_normalize.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_strip.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/extract/test_xml_forgiving_reader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/prompt/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/prompt/test_output_format_renderer.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_email_document.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_filesystem_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_output_format_renderer_nested.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_output_prompt_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_render_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_render_max_chars.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_verify.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/render/test_verify_conformance.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_fr5c_merge_attribution.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_fr5d_reference_resolution.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_fr5e_database_source_shape.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_json_path.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_semantic_diff.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_source_on_node.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/source/test_yaml_positions.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/test_api_docs_accuracy.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/__init__.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_agent_context_staleness.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_capabilities.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_common_attrs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_core_types.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_effective_package.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_errors.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_field_enum.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_field_map_validation.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_field_uuid_dbcolumntype.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_fr016_source_name_and_kind_aliases.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_index_lookup.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_llm_recorder.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_loader.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_loader_bom.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_loader_class.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_merge.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_meta_attr.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_meta_data.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_meta_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_module_shortcuts.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_n2m_resolver.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_n2m_resolver_inherited.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_object_manager_autoset_stamping.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_object_manager_uuid_coercion.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_object_manager_write_through.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_one_primary_source.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_parser.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_parser_yaml.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_provider.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_provider_extension.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_registry.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_registry_completeness.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_registry_extend.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_registry_sealed.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_relationship_referential_actions.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_resolution_key.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_runtime_resolution_key_binding.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_serializer.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_shared_constants.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_smoke.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_source_escapes.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_sources.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_strict_child_placement.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_super_resolve.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_template_toolcall.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_template_wrong_subtype_attrs.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_attr_schema.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_filter_values.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_origin_195.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_origin_paths.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_sort_field.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_validation_warnings.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_write_coercion_arrays.py +0 -0
- {metaobjects-0.19.4 → metaobjects-0.19.6}/tests/unit/test_yaml_desugar.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: metaobjects
|
|
3
|
-
Version: 0.19.
|
|
3
|
+
Version: 0.19.6
|
|
4
4
|
Summary: Cross-language metadata standard: declare typed entities once, generate idiomatic drift-checked code across languages — Python port.
|
|
5
5
|
Project-URL: Homepage, https://metaobjects.dev
|
|
6
6
|
Project-URL: Repository, https://github.com/metaobjectsdev/metaobjects
|
|
@@ -45,11 +45,13 @@ other language port.
|
|
|
45
45
|
|
|
46
46
|
## Install
|
|
47
47
|
|
|
48
|
+
Requires **Python 3.11+**.
|
|
49
|
+
|
|
48
50
|
```bash
|
|
49
51
|
pip install metaobjects
|
|
50
52
|
```
|
|
51
53
|
|
|
52
|
-
|
|
54
|
+
The only runtime dependency is PyYAML.
|
|
53
55
|
|
|
54
56
|
## Quick start
|
|
55
57
|
|
|
@@ -77,7 +79,9 @@ The primary public API is the **loader** (`load_directory` / `load_uris` /
|
|
|
77
79
|
`load_string`, `MetaDataLoader`, `LoadResult`, `ErrorCode`, `MetaError`). The
|
|
78
80
|
distribution also ships the Python implementations of the other pillars used by the CLI
|
|
79
81
|
and tooling: `codegen` (Pydantic + FastAPI emit), `render` (Mustache + payload-VO +
|
|
80
|
-
verify), `runtime` (
|
|
82
|
+
verify), and `runtime` (a DB-API 2 `ObjectManager` — pg8000 / psycopg — no SQLAlchemy).
|
|
83
|
+
Schema migrations are owned by the TypeScript `meta` CLI (ADR-0015); there is
|
|
84
|
+
**no `migrate` module** in this distribution.
|
|
81
85
|
|
|
82
86
|
## Authoring formats
|
|
83
87
|
|
|
@@ -10,11 +10,13 @@ other language port.
|
|
|
10
10
|
|
|
11
11
|
## Install
|
|
12
12
|
|
|
13
|
+
Requires **Python 3.11+**.
|
|
14
|
+
|
|
13
15
|
```bash
|
|
14
16
|
pip install metaobjects
|
|
15
17
|
```
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
The only runtime dependency is PyYAML.
|
|
18
20
|
|
|
19
21
|
## Quick start
|
|
20
22
|
|
|
@@ -42,7 +44,9 @@ The primary public API is the **loader** (`load_directory` / `load_uris` /
|
|
|
42
44
|
`load_string`, `MetaDataLoader`, `LoadResult`, `ErrorCode`, `MetaError`). The
|
|
43
45
|
distribution also ships the Python implementations of the other pillars used by the CLI
|
|
44
46
|
and tooling: `codegen` (Pydantic + FastAPI emit), `render` (Mustache + payload-VO +
|
|
45
|
-
verify), `runtime` (
|
|
47
|
+
verify), and `runtime` (a DB-API 2 `ObjectManager` — pg8000 / psycopg — no SQLAlchemy).
|
|
48
|
+
Schema migrations are owned by the TypeScript `meta` CLI (ADR-0015); there is
|
|
49
|
+
**no `migrate` module** in this distribution.
|
|
46
50
|
|
|
47
51
|
## Authoring formats
|
|
48
52
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "metaobjects"
|
|
3
|
-
version = "0.19.
|
|
3
|
+
version = "0.19.6"
|
|
4
4
|
description = "Cross-language metadata standard: declare typed entities once, generate idiomatic drift-checked code across languages — Python port."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -110,6 +110,7 @@ from ..meta.core.relationship.relationship_constants import (
|
|
|
110
110
|
from ..meta.core.identity.identity_constants import (
|
|
111
111
|
IDENTITY_SUBTYPE_REFERENCE,
|
|
112
112
|
IDENTITY_REFERENCE_ATTR_REFERENCES,
|
|
113
|
+
IDENTITY_REFERENCE_ATTR_ENFORCE,
|
|
113
114
|
)
|
|
114
115
|
from ..shared.separators import PACKAGE_SEP
|
|
115
116
|
from ..meta.core.object.object_constants import (
|
|
@@ -2290,6 +2291,20 @@ def _validate_relationships(root: MetaData, errors: list[MetaError]) -> None:
|
|
|
2290
2291
|
),
|
|
2291
2292
|
))
|
|
2292
2293
|
continue
|
|
2294
|
+
# A junction is a physical join table — it MUST be an object.entity.
|
|
2295
|
+
# ADR-0046 lets a value carry navigation-only references, so value-purity
|
|
2296
|
+
# no longer implicitly guarantees a two-reference junction is an entity;
|
|
2297
|
+
# assert it here. (A value/projection has no table to join through.)
|
|
2298
|
+
if junction.sub_type != OBJECT_SUBTYPE_ENTITY:
|
|
2299
|
+
errors.append(MetaError(
|
|
2300
|
+
f'relationship "{obj.name}.{rel.name}" '
|
|
2301
|
+
f'@{RELATIONSHIP_ATTR_THROUGH} "{through}" resolves to '
|
|
2302
|
+
f"{junction.type}.{junction.sub_type}, not an entity — a junction is a "
|
|
2303
|
+
f"persisted join table and must be object.entity.",
|
|
2304
|
+
ErrorCode.ERR_INVALID_RELATIONSHIP,
|
|
2305
|
+
envelope=rel.source,
|
|
2306
|
+
))
|
|
2307
|
+
continue
|
|
2293
2308
|
ref_count = _count_junction_references(junction)
|
|
2294
2309
|
if ref_count != 2:
|
|
2295
2310
|
errors.append(MetaError(
|
|
@@ -2619,12 +2634,31 @@ def _validate_max_occurs(
|
|
|
2619
2634
|
)
|
|
2620
2635
|
|
|
2621
2636
|
|
|
2622
|
-
# FR-024 value purity (ADR-0028): a value object
|
|
2623
|
-
#
|
|
2624
|
-
#
|
|
2637
|
+
# FR-024 value purity (ADR-0028): a value object owns NO identity and NO source.
|
|
2638
|
+
# ADR-0046 admits ONE exception: a navigation-only identity.reference with explicit
|
|
2639
|
+
# @enforce: false — an outbound pointer to an entity (a DTO/message referencing X by
|
|
2640
|
+
# id) is not persistence. Its target still resolves (dangling → ERR_INVALID_REFERENCE
|
|
2641
|
+
# via the registry-derived pass) and codegen emits no FK/DDL. The value's OWN identity
|
|
2642
|
+
# (primary/secondary) and any enforced reference (a physical FK it has no table to
|
|
2643
|
+
# hold) stay banned. Mirrors TS subtype-rules.ts validateValuePurity.
|
|
2625
2644
|
def _validate_value_purity(node: MetaObject, errors: list[MetaError]) -> None:
|
|
2626
2645
|
for child in node.children():
|
|
2627
2646
|
if child.type == TYPE_IDENTITY:
|
|
2647
|
+
if child.sub_type == IDENTITY_SUBTYPE_REFERENCE:
|
|
2648
|
+
# ADR-0046: navigation-only reference is the sanctioned exception.
|
|
2649
|
+
if child.get_meta_attr(IDENTITY_REFERENCE_ATTR_ENFORCE) is False:
|
|
2650
|
+
continue
|
|
2651
|
+
errors.append(
|
|
2652
|
+
MetaError(
|
|
2653
|
+
f"value object '{node.fqn()}' has an enforced reference "
|
|
2654
|
+
f"({TYPE_IDENTITY}.{child.sub_type} '{child.name}') — a value is not "
|
|
2655
|
+
f"persisted and has no table to hold a physical FK; declare a "
|
|
2656
|
+
f"navigation-only reference with @enforce: false (FR-024, ADR-0028, ADR-0046)",
|
|
2657
|
+
ErrorCode.ERR_SUBTYPE_RULE_VIOLATION,
|
|
2658
|
+
envelope=child.source,
|
|
2659
|
+
)
|
|
2660
|
+
)
|
|
2661
|
+
continue
|
|
2628
2662
|
errors.append(
|
|
2629
2663
|
MetaError(
|
|
2630
2664
|
f"value object '{node.fqn()}' must not have an identity "
|
|
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
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/extract_delegate_emitter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/entity_model.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/extractor_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/fr019_shared_enum.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/payload_vo_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/router_generator.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/generators/template_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/output_format_spec_emitter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/output_pattern.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/template_data.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/codegen/template_codegen/template_spec.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
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/directory_source.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/sources/meta_data_source.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_source_parameter_ref.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/loader/validate_source_physical_names.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/field/field_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/identity/identity_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/identity/meta_identity.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/index/index_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/meta_object_aware.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_class_registry.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/object/object_extract.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/relationship/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/core/validator/validator_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/db/db_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/db/db_provider.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/origin/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/origin/meta_origin.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/source/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/persistence/source/meta_source.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/layout/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/layout/meta_layout.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/ui/ui_provider.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/meta_view.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/presentation/view/view_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/meta/template/template_constants.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
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/json_forgiving_reader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/extract/xml_forgiving_reader.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/output_format_renderer.py
RENAMED
|
File without changes
|
{metaobjects-0.19.4 → metaobjects-0.19.6}/src/metaobjects/render/prompt/output_format_spec.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
|