@blue-labs/language 4.1.2 → 5.0.0-rc.0
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.
- package/dist/Blue-B7SYp5QY.mjs +8237 -0
- package/dist/Blue-CTQkRrnu.js +98 -0
- package/dist/conformance.d.ts +3 -0
- package/dist/conformance.d.ts.map +1 -0
- package/dist/conformance.js +6 -0
- package/dist/conformance.mjs +1258 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -27
- package/dist/index.mjs +679 -6799
- package/dist/lib/Blue.d.ts +5 -2
- package/dist/lib/Blue.d.ts.map +1 -1
- package/dist/lib/conformance/BlueConformanceSuiteRunner.d.ts +68 -0
- package/dist/lib/conformance/BlueConformanceSuiteRunner.d.ts.map +1 -0
- package/dist/lib/conformance/BlueLanguageConformanceReport.d.ts +37 -0
- package/dist/lib/conformance/BlueLanguageConformanceReport.d.ts.map +1 -0
- package/dist/lib/conformance/JavaBlueIdCalculator.d.ts +19 -0
- package/dist/lib/conformance/JavaBlueIdCalculator.d.ts.map +1 -0
- package/dist/lib/conformance/conformance-expect.d.ts +17 -0
- package/dist/lib/conformance/conformance-expect.d.ts.map +1 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/.gitkeep +1 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_double_1e0.yaml +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_double_negative_zero.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_double_overflow_rejected.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_empty_list.yaml +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_empty_object_list_element_rejected.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_empty_placeholder.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_integer_1_vs_double_1_0.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_invalid_this_placeholder_rejected.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_large_integer_quoted_explicit_integer.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_list_sugar_equivalence.yaml +12 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_malformed_empty_rejected.yaml +8 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_null_list_element_rejected.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_object_field_null_removal.yaml +8 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_payload_only_scalar_typed_identity.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_plain_blueid_validation.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_pos_rejected.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_previous_invalid_blueid_rejected.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_replace_rejected.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_root_empty_object.yaml +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_root_list.yaml +8 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_root_null_rejected.yaml +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_root_pure_reference.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_root_scalar.yaml +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_scalar_sugar_equivalence.yaml +8 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_type_alias_rejected_in_direct_blueid_input.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/blueid/B_unquoted_large_integer_rejected.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/circular/C_circular_reference_set_ids.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/circular/C_duplicate_preliminary_ids_deterministic_or_rejected.yaml +12 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/circular/C_this_placeholder_rejected_outside_cyclic_api.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/circular/C_three_document_cycle_stable_order.yaml +18 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/circular/C_zero_blueid_rejected_in_final_input.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/lint/L_no_profile_era_language_conformance_terms.yaml +45 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/manifest.yaml +234 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_collapse_does_not_produce_mixed_blueid.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_collapse_nested_subtree_preserves_node_blueid.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_collapse_preserves_node_blueid.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_expand_missing_nested_content_fails.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_expand_nested_reference_preserves_node_blueid.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_expand_preserves_node_blueid.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_expand_wrong_nested_provider_content_fails.yaml +12 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_provider_missing_content_fails.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/provider/F_provider_wrong_blueid_rejected.yaml +13 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/changingCoreTypeDescriptionChangesBlueId.yaml +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryBooleanNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryDictionaryNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryDoubleNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryIntegerNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryListNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/registry/coreRegistryTextNodeHashesToPublishedBlueId.yaml +7 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_blue_imports.yaml +15 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_blue_imports_type_itemType_keyType_valueType.yaml +24 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_canonical_overlay_no_previous_no_pos.yaml +18 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_canonicalization_deterministic_for_same_resolved_view.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_child_field_labels_materialize_until_overridden.yaml +26 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_contracts_canonicalization_deterministic.yaml +18 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_contracts_merge_as_content.yaml +21 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_core_type_compatibility_nominal_by_blueid.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_enum_integer_vs_double.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_inherited_append_only_policy.yaml +16 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_inherited_item_type.yaml +13 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_inherited_keyType_valueType.yaml +16 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_instance_field_kept.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_provider_reference_canonicalizes_back.yaml +13 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_provider_reference_with_overlay_keeps_overlay.yaml +16 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_double_multiple_of_exact.yaml +17 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_double_multiple_of_rejects_decimal_approximation.yaml +12 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_enum_order_and_duplicates_canonical.yaml +26 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_integer_multiple_of_lcm_merge.yaml +17 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_large_integer_minimum_with_type_alias.yaml +15 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_value_shapes.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_schema_wrong_kind_keywords_rejected.yaml +10 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_source_empty_object_list_to_empty.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_source_null_list_to_empty.yaml +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_source_recursive_empty_object_list_to_empty.yaml +15 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_top_level_type_name_description_not_inherited.yaml +21 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_type_aliases_removed_from_canonical_overlay.yaml +15 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_type_derived_field_removed.yaml +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/fixtures/resolver/R_view_path_root_is_empty_string.yaml +25 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/language/1.0/spec.md +2932 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/Boolean.blue +6 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/Dictionary.blue +17 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/Double.blue +12 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/Integer.blue +11 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/List.blue +14 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/Text.blue +9 -0
- package/dist/lib/conformance/fixtures/blue-language-1.0/registry/blue-language-1.0/manifest.yaml +8 -0
- package/dist/lib/errors/BlueError.d.ts +23 -1
- package/dist/lib/errors/BlueError.d.ts.map +1 -1
- package/dist/lib/identity/CyclicSetIdentityService.d.ts +1 -1
- package/dist/lib/identity/CyclicSetIdentityService.d.ts.map +1 -1
- package/dist/lib/identity/SemanticIdentityService.d.ts.map +1 -1
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/mapping/ComplexObjectConverter.d.ts.map +1 -1
- package/dist/lib/mapping/ConverterFactory.d.ts.map +1 -1
- package/dist/lib/mapping/ValueConverter.d.ts.map +1 -1
- package/dist/lib/merge/Merger.d.ts +4 -0
- package/dist/lib/merge/Merger.d.ts.map +1 -1
- package/dist/lib/merge/MergingProcessor.d.ts +10 -0
- package/dist/lib/merge/MergingProcessor.d.ts.map +1 -1
- package/dist/lib/merge/processors/DictionaryProcessor.d.ts.map +1 -1
- package/dist/lib/merge/processors/ListProcessor.d.ts +2 -0
- package/dist/lib/merge/processors/ListProcessor.d.ts.map +1 -1
- package/dist/lib/merge/processors/SchemaPropagator.d.ts +13 -0
- package/dist/lib/merge/processors/SchemaPropagator.d.ts.map +1 -0
- package/dist/lib/merge/processors/SchemaVerifier.d.ts +16 -0
- package/dist/lib/merge/processors/SchemaVerifier.d.ts.map +1 -0
- package/dist/lib/merge/processors/SequentialMergingProcessor.d.ts +2 -0
- package/dist/lib/merge/processors/SequentialMergingProcessor.d.ts.map +1 -1
- package/dist/lib/merge/processors/TypeAssigner.d.ts.map +1 -1
- package/dist/lib/merge/processors/ValuePropagator.d.ts.map +1 -1
- package/dist/lib/merge/processors/index.d.ts +2 -0
- package/dist/lib/merge/processors/index.d.ts.map +1 -1
- package/dist/lib/merge/utils/default.d.ts.map +1 -1
- package/dist/lib/model/Node.d.ts +18 -1
- package/dist/lib/model/Node.d.ts.map +1 -1
- package/dist/lib/model/NodeDeserializer.d.ts +5 -0
- package/dist/lib/model/NodeDeserializer.d.ts.map +1 -1
- package/dist/lib/model/ResolvedNode.d.ts.map +1 -1
- package/dist/lib/model/Schema.d.ts +14 -0
- package/dist/lib/model/Schema.d.ts.map +1 -0
- package/dist/lib/model/index.d.ts +1 -0
- package/dist/lib/model/index.d.ts.map +1 -1
- package/dist/lib/preprocess/Preprocessor.d.ts +8 -1
- package/dist/lib/preprocess/Preprocessor.d.ts.map +1 -1
- package/dist/lib/provider/InMemoryNodeProvider.d.ts.map +1 -1
- package/dist/lib/provider/RepositoryBasedNodeProvider.d.ts +2 -0
- package/dist/lib/provider/RepositoryBasedNodeProvider.d.ts.map +1 -1
- package/dist/lib/provider/VerifyingNodeProvider.d.ts +14 -0
- package/dist/lib/provider/VerifyingNodeProvider.d.ts.map +1 -0
- package/dist/lib/repository/BuiltinRuntimeTypes.d.ts +360 -0
- package/dist/lib/repository/BuiltinRuntimeTypes.d.ts.map +1 -0
- package/dist/lib/repository/RepositoryContentCanonicalizer.d.ts.map +1 -1
- package/dist/lib/repository/RepositoryRuntime.d.ts +1 -1
- package/dist/lib/repository/RepositoryRuntime.d.ts.map +1 -1
- package/dist/lib/snapshot/CanonicalOverlayPatchEngine.d.ts +6 -0
- package/dist/lib/snapshot/CanonicalOverlayPatchEngine.d.ts.map +1 -0
- package/dist/lib/snapshot/FrozenNode.d.ts +80 -0
- package/dist/lib/snapshot/FrozenNode.d.ts.map +1 -0
- package/dist/lib/snapshot/FrozenNodeToBlueIdInput.d.ts +5 -0
- package/dist/lib/snapshot/FrozenNodeToBlueIdInput.d.ts.map +1 -0
- package/dist/lib/snapshot/ResolvedReferenceCache.d.ts +8 -0
- package/dist/lib/snapshot/ResolvedReferenceCache.d.ts.map +1 -0
- package/dist/lib/snapshot/ResolvedSnapshot.d.ts +8 -0
- package/dist/lib/snapshot/ResolvedSnapshot.d.ts.map +1 -0
- package/dist/lib/snapshot/index.d.ts +6 -0
- package/dist/lib/snapshot/index.d.ts.map +1 -0
- package/dist/lib/types/BlueRepository.d.ts +1 -1
- package/dist/lib/utils/BlueIdCalculator.d.ts +19 -1
- package/dist/lib/utils/BlueIdCalculator.d.ts.map +1 -1
- package/dist/lib/utils/BlueIds.d.ts +9 -1
- package/dist/lib/utils/BlueIds.d.ts.map +1 -1
- package/dist/lib/utils/BlueNumbers.d.ts +7 -0
- package/dist/lib/utils/BlueNumbers.d.ts.map +1 -0
- package/dist/lib/utils/ListControls.d.ts.map +1 -1
- package/dist/lib/utils/MergeReverser.d.ts +10 -0
- package/dist/lib/utils/MergeReverser.d.ts.map +1 -1
- package/dist/lib/utils/NodePatch/patch-utils.d.ts +1 -1
- package/dist/lib/utils/NodeProviderWrapper.d.ts +4 -0
- package/dist/lib/utils/NodeProviderWrapper.d.ts.map +1 -1
- package/dist/lib/utils/NodeToBlueIdInput.d.ts +34 -0
- package/dist/lib/utils/NodeToBlueIdInput.d.ts.map +1 -0
- package/dist/lib/utils/NodeToMapListOrValue.d.ts.map +1 -1
- package/dist/lib/utils/NodeTransformer.d.ts.map +1 -1
- package/dist/lib/utils/NodeTypeMatcher.d.ts +27 -1
- package/dist/lib/utils/NodeTypeMatcher.d.ts.map +1 -1
- package/dist/lib/utils/NodeTypes.d.ts +1 -0
- package/dist/lib/utils/NodeTypes.d.ts.map +1 -1
- package/dist/lib/utils/Properties.d.ts +97 -10
- package/dist/lib/utils/Properties.d.ts.map +1 -1
- package/dist/lib/utils/TypeSchema.d.ts +0 -1
- package/dist/lib/utils/TypeSchema.d.ts.map +1 -1
- package/dist/lib/utils/index.d.ts +4 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/schema/jsonBlue.d.ts +1 -1
- package/dist/schema/utils.d.ts.map +1 -1
- package/dist/utils/yamlBlue/type/float.d.ts.map +1 -1
- package/package.json +8 -3
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
id: R_provider_reference_with_overlay_keeps_overlay
|
|
2
|
+
category: Canonicalization
|
|
3
|
+
operation: canonicalize
|
|
4
|
+
description: provider materialization canonicalizes back to a pure reference plus
|
|
5
|
+
instance overlay
|
|
6
|
+
source:
|
|
7
|
+
type:
|
|
8
|
+
blueId: 5ajuwjHoLj33yG5t5UFsJtUb3vnRaJQEMPqSLz6VyoHK
|
|
9
|
+
local: overlay
|
|
10
|
+
provider:
|
|
11
|
+
- requestedBlueId: 5ajuwjHoLj33yG5t5UFsJtUb3vnRaJQEMPqSLz6VyoHK
|
|
12
|
+
node: {}
|
|
13
|
+
expectedCanonicalOverlay:
|
|
14
|
+
type:
|
|
15
|
+
blueId: 5ajuwjHoLj33yG5t5UFsJtUb3vnRaJQEMPqSLz6VyoHK
|
|
16
|
+
local: overlay
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
id: R_schema_double_multiple_of_exact
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: Double multipleOf uses exact rational arithmetic over IEEE 754 binary64
|
|
5
|
+
values
|
|
6
|
+
source:
|
|
7
|
+
type:
|
|
8
|
+
blueId: 9eWaHYz2vKrFofdHTHAizNNu8xP6QE3WQ5y7DGrGZvyJ
|
|
9
|
+
schema:
|
|
10
|
+
multipleOf: 0.5
|
|
11
|
+
value: 1.5
|
|
12
|
+
expectedResolved:
|
|
13
|
+
type:
|
|
14
|
+
blueId: 9eWaHYz2vKrFofdHTHAizNNu8xP6QE3WQ5y7DGrGZvyJ
|
|
15
|
+
schema:
|
|
16
|
+
multipleOf: 0.5
|
|
17
|
+
value: 1.5
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
id: R_schema_double_multiple_of_rejects_decimal_approximation
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: Double multipleOf uses exact binary64 rational arithmetic, not decimal epsilon behavior
|
|
5
|
+
expectError: true
|
|
6
|
+
expectedErrorCategory: SchemaViolation
|
|
7
|
+
source:
|
|
8
|
+
type:
|
|
9
|
+
blueId: 9eWaHYz2vKrFofdHTHAizNNu8xP6QE3WQ5y7DGrGZvyJ
|
|
10
|
+
schema:
|
|
11
|
+
multipleOf: 0.1
|
|
12
|
+
value: 0.3
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
id: R_schema_enum_order_and_duplicates_canonical
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: enum order and duplicate entries normalize to a duplicate-free canonical
|
|
5
|
+
effective schema
|
|
6
|
+
source:
|
|
7
|
+
type:
|
|
8
|
+
schema:
|
|
9
|
+
enum:
|
|
10
|
+
- B
|
|
11
|
+
- A
|
|
12
|
+
- A
|
|
13
|
+
schema:
|
|
14
|
+
enum:
|
|
15
|
+
- A
|
|
16
|
+
- B
|
|
17
|
+
expectedResolved:
|
|
18
|
+
type:
|
|
19
|
+
schema:
|
|
20
|
+
enum:
|
|
21
|
+
- value: A
|
|
22
|
+
- value: B
|
|
23
|
+
schema:
|
|
24
|
+
enum:
|
|
25
|
+
- value: A
|
|
26
|
+
- value: B
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
id: R_schema_integer_multiple_of_lcm_merge
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: inherited and instance integer multipleOf constraints merge deterministically
|
|
5
|
+
using LCM
|
|
6
|
+
source:
|
|
7
|
+
type:
|
|
8
|
+
schema:
|
|
9
|
+
multipleOf: 4
|
|
10
|
+
schema:
|
|
11
|
+
multipleOf: 6
|
|
12
|
+
expectedResolved:
|
|
13
|
+
type:
|
|
14
|
+
schema:
|
|
15
|
+
multipleOf: 4
|
|
16
|
+
schema:
|
|
17
|
+
multipleOf: 12
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: R_schema_large_integer_minimum_with_type_alias
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: preprocess
|
|
4
|
+
description: schema numeric explicit Integer node may use a core alias before preprocessing
|
|
5
|
+
source:
|
|
6
|
+
schema:
|
|
7
|
+
minimum:
|
|
8
|
+
type: Integer
|
|
9
|
+
value: '9007199254740992'
|
|
10
|
+
expectedPreprocessed:
|
|
11
|
+
schema:
|
|
12
|
+
minimum:
|
|
13
|
+
type:
|
|
14
|
+
blueId: E2LM6qgzWG9ttagq2xTmiZkgYEAgkYedFCmU9v7NnVEq
|
|
15
|
+
value: '9007199254740992'
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
id: R_schema_wrong_kind_keywords_rejected
|
|
2
|
+
category: Schema
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: schema keywords applied to incompatible value kinds fail deterministically
|
|
5
|
+
expectError: true
|
|
6
|
+
expectedErrorCategory: SchemaViolation
|
|
7
|
+
source:
|
|
8
|
+
schema:
|
|
9
|
+
minLength: 1
|
|
10
|
+
value: 123
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
id: R_source_empty_object_list_to_empty
|
|
2
|
+
category: Resolution
|
|
3
|
+
operation: preprocess
|
|
4
|
+
description: source list empty object normalizes to exact empty placeholder
|
|
5
|
+
source:
|
|
6
|
+
items:
|
|
7
|
+
- A
|
|
8
|
+
- {}
|
|
9
|
+
- B
|
|
10
|
+
expectedPreprocessed:
|
|
11
|
+
items:
|
|
12
|
+
- value: A
|
|
13
|
+
- $empty: true
|
|
14
|
+
- value: B
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
id: R_source_null_list_to_empty
|
|
2
|
+
category: Resolution
|
|
3
|
+
operation: preprocess
|
|
4
|
+
description: source list null normalizes to exact empty placeholder
|
|
5
|
+
source:
|
|
6
|
+
items:
|
|
7
|
+
- A
|
|
8
|
+
- null
|
|
9
|
+
- B
|
|
10
|
+
expectedPreprocessed:
|
|
11
|
+
items:
|
|
12
|
+
- value: A
|
|
13
|
+
- $empty: true
|
|
14
|
+
- value: B
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: R_source_recursive_empty_object_list_to_empty
|
|
2
|
+
category: Resolution
|
|
3
|
+
operation: preprocess
|
|
4
|
+
description: source list element that recursively cleans to an empty object normalizes
|
|
5
|
+
to exact empty placeholder
|
|
6
|
+
source:
|
|
7
|
+
items:
|
|
8
|
+
- A
|
|
9
|
+
- x: null
|
|
10
|
+
- B
|
|
11
|
+
expectedPreprocessed:
|
|
12
|
+
items:
|
|
13
|
+
- value: A
|
|
14
|
+
- $empty: true
|
|
15
|
+
- value: B
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
id: R_top_level_type_name_description_not_inherited
|
|
2
|
+
category: Resolution
|
|
3
|
+
operation: resolve
|
|
4
|
+
description: root name and description from an inline type are not inherited onto
|
|
5
|
+
the instance root
|
|
6
|
+
source:
|
|
7
|
+
type:
|
|
8
|
+
name: Base Type
|
|
9
|
+
description: Base description
|
|
10
|
+
inherited: true
|
|
11
|
+
own: child
|
|
12
|
+
expectedResolved:
|
|
13
|
+
type:
|
|
14
|
+
name: Base Type
|
|
15
|
+
description: Base description
|
|
16
|
+
inherited:
|
|
17
|
+
value: true
|
|
18
|
+
inherited:
|
|
19
|
+
value: true
|
|
20
|
+
own:
|
|
21
|
+
value: child
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
id: R_type_aliases_removed_from_canonical_overlay
|
|
2
|
+
category: Canonicalization
|
|
3
|
+
operation: canonicalize
|
|
4
|
+
description: type aliases are removed from canonical overlay after preprocessing
|
|
5
|
+
source:
|
|
6
|
+
blue:
|
|
7
|
+
imports:
|
|
8
|
+
Label:
|
|
9
|
+
blueId: GX7CFUmSDrE2MzptunLCCdZwnuwwrenRQqEnHL4x3uoC
|
|
10
|
+
type: Label
|
|
11
|
+
value: hello
|
|
12
|
+
expectedCanonicalOverlay:
|
|
13
|
+
type:
|
|
14
|
+
blueId: GX7CFUmSDrE2MzptunLCCdZwnuwwrenRQqEnHL4x3uoC
|
|
15
|
+
value: hello
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
id: R_type_derived_field_removed
|
|
2
|
+
category: Canonicalization
|
|
3
|
+
operation: canonicalize
|
|
4
|
+
description: canonical overlay omits content inherited from the type root
|
|
5
|
+
source:
|
|
6
|
+
type:
|
|
7
|
+
inherited: from-type
|
|
8
|
+
local: from-instance
|
|
9
|
+
expectedCanonicalOverlay:
|
|
10
|
+
type: {}
|
|
11
|
+
local: from-instance
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
id: R_view_path_root_is_empty_string
|
|
2
|
+
category: Resolution
|
|
3
|
+
operation: assertViewPath
|
|
4
|
+
description: Blue Language view paths use RFC 6901 root as the empty string; slash
|
|
5
|
+
selects an empty-key member
|
|
6
|
+
document:
|
|
7
|
+
"": empty-key
|
|
8
|
+
regular:
|
|
9
|
+
items:
|
|
10
|
+
- first
|
|
11
|
+
- second
|
|
12
|
+
a/b:
|
|
13
|
+
c~d: escaped
|
|
14
|
+
assertions:
|
|
15
|
+
- path: ''
|
|
16
|
+
expectedRoot: true
|
|
17
|
+
- path: /
|
|
18
|
+
expectedNode:
|
|
19
|
+
value: empty-key
|
|
20
|
+
- path: /regular/items/0
|
|
21
|
+
expectedNode:
|
|
22
|
+
value: first
|
|
23
|
+
- path: /a~1b/c~0d
|
|
24
|
+
expectedNode:
|
|
25
|
+
value: escaped
|