Skip to content

Conversation

@TristanSpeakEasy
Copy link
Member

Summary

Improved unmarshalling and validation error messages for EitherValue types to make it easier to identify the root cause of failures.

Changes

  • Enhanced error context in EitherValue unmarshalling: Updated error messages to provide clearer information about which type alternatives failed and why
  • Improved validation error formatting: Modified validation error output to better indicate the source of validation failures
  • Updated unmarshaller logic: Refined the unmarshalling process to capture and report more detailed error information
  • Added comprehensive test coverage: Expanded test cases to cover edge cases and validate improved error messages

Impact

This change improves the developer experience when working with EitherValue types by:

  • Making validation errors more actionable and easier to debug
  • Providing clearer context about which type alternative failed during unmarshalling
  • Reducing time spent troubleshooting schema validation issues

Testing

  • Added new test cases in values/core/eithervalue_test.go
  • Updated existing tests in marshaller/unmarshalling_test.go
  • Added invalid OpenAPI test case in openapi/openapi_examples_test.go

@TristanSpeakEasy TristanSpeakEasy requested a review from a team as a code owner September 30, 2025 03:10
@TristanSpeakEasy TristanSpeakEasy added bug Something isn't working tests Test-related changes and improvements validation Related to validation logic marshalling Related to data marshalling/unmarshalling labels Sep 30, 2025
@TristanSpeakEasy TristanSpeakEasy force-pushed the fix/eithervalue-error-handling branch from 5a087cb to 1d0d3fa Compare September 30, 2025 03:21
@github-actions
Copy link

📊 Test Coverage Report

Current Coverage: 68.3%
Main Branch Coverage: 68.3%

Coverage Change: ✅ No change

Coverage by Package

github.com/speakeasy-api/openapi/arazzo/arazzo.go:57:					WithSkipValidation				100.0%
github.com/speakeasy-api/openapi/arazzo/arazzo.go:65:					Unmarshal					91.7%
github.com/speakeasy-api/openapi/arazzo/arazzo.go:88:					Marshal						100.0%
github.com/speakeasy-api/openapi/arazzo/arazzo.go:93:					Sync						0.0%
github.com/speakeasy-api/openapi/arazzo/arazzo.go:101:					Validate					88.5%
github.com/speakeasy-api/openapi/arazzo/cmd/root.go:6:					Apply						0.0%
github.com/speakeasy-api/openapi/arazzo/cmd/validate.go:29:				runValidate					0.0%
github.com/speakeasy-api/openapi/arazzo/cmd/validate.go:39:				validateArazzo					0.0%
github.com/speakeasy-api/openapi/arazzo/cmd/validate.go:69:				GetValidateCommand				0.0%
github.com/speakeasy-api/openapi/arazzo/components.go:41:				Validate					84.6%
github.com/speakeasy-api/openapi/arazzo/core/criterion.go:33:				Unmarshal					80.0%
github.com/speakeasy-api/openapi/arazzo/core/criterion.go:73:				SyncChanges					0.0%
github.com/speakeasy-api/openapi/arazzo/core/factory_registration.go:11:		init						50.0%
github.com/speakeasy-api/openapi/arazzo/core/reusable.go:27:				Unmarshal					0.0%
github.com/speakeasy-api/openapi/arazzo/core/reusable.go:60:				SyncChanges					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/condition.go:41:			newCondition					87.5%
github.com/speakeasy-api/openapi/arazzo/criterion/condition.go:80:			Validate					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/condition.go:106:			handleQuotedString				100.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:53:			Validate					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:84:			IsTypeProvided					66.7%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:104:			GetCore						0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:109:			IsTypeProvided					66.7%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:118:			GetType						60.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:131:			GetVersion					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:139:			Populate					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:175:			Sync						66.7%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:183:			GetCondition					0.0%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:188:			Validate					66.7%
github.com/speakeasy-api/openapi/arazzo/criterion/criterion.go:228:			validateCondition				53.3%
github.com/speakeasy-api/openapi/arazzo/criterion/factory_registration.go:6:		init						50.0%
github.com/speakeasy-api/openapi/arazzo/factory_registration.go:12:			init						92.9%
github.com/speakeasy-api/openapi/arazzo/failureaction.go:57:				Validate					58.3%
github.com/speakeasy-api/openapi/arazzo/info.go:32:					Validate					75.0%
github.com/speakeasy-api/openapi/arazzo/parameter.go:48:				Validate					81.5%
github.com/speakeasy-api/openapi/arazzo/payloadreplacement.go:30:			Validate					76.5%
github.com/speakeasy-api/openapi/arazzo/requestbody.go:32:				Validate					93.3%
github.com/speakeasy-api/openapi/arazzo/reusable.go:41:					Get						0.0%
github.com/speakeasy-api/openapi/arazzo/reusable.go:49:					IsReference					0.0%
github.com/speakeasy-api/openapi/arazzo/reusable.go:53:					GetReferencedObject				0.0%
github.com/speakeasy-api/openapi/arazzo/reusable.go:101:				Validate					87.5%
github.com/speakeasy-api/openapi/arazzo/reusable.go:135:				validateReference				71.4%
github.com/speakeasy-api/openapi/arazzo/reusable.go:203:				validateComponentReference			62.5%
github.com/speakeasy-api/openapi/arazzo/reusable.go:226:				typeToComponentType				75.0%
github.com/speakeasy-api/openapi/arazzo/reusable.go:240:				componentTypeToReusableType			0.0%
github.com/speakeasy-api/openapi/arazzo/sourcedescription.go:19:			Find						75.0%
github.com/speakeasy-api/openapi/arazzo/sourcedescription.go:55:			Validate					76.9%
github.com/speakeasy-api/openapi/arazzo/step.go:23:					Find						75.0%
github.com/speakeasy-api/openapi/arazzo/step.go:69:					Validate					80.8%
github.com/speakeasy-api/openapi/arazzo/successaction.go:52:				Validate					75.0%
github.com/speakeasy-api/openapi/arazzo/successaction.go:117:				validationActionWorkflowIDAndStepID		77.8%
github.com/speakeasy-api/openapi/arazzo/walk.go:51:					Walk						100.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:60:					walk						69.2%
github.com/speakeasy-api/openapi/arazzo/walk.go:91:					walkInfo					66.7%
github.com/speakeasy-api/openapi/arazzo/walk.go:106:					walkSourceDescriptions				88.9%
github.com/speakeasy-api/openapi/arazzo/walk.go:125:					walkSourceDescription				66.7%
github.com/speakeasy-api/openapi/arazzo/walk.go:140:					walkWorkflows					100.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:159:					walkWorkflow					62.5%
github.com/speakeasy-api/openapi/arazzo/walk.go:199:					walkReusableParameters				88.9%
github.com/speakeasy-api/openapi/arazzo/walk.go:218:					walkReusableParameter				66.7%
github.com/speakeasy-api/openapi/arazzo/walk.go:234:					walkJSONSchema					87.5%
github.com/speakeasy-api/openapi/arazzo/walk.go:254:					convertSchemaMatchFunc				100.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:268:					convertSchemaLocation				100.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:286:					walkSteps					88.9%
github.com/speakeasy-api/openapi/arazzo/walk.go:305:					walkStep					66.7%
github.com/speakeasy-api/openapi/arazzo/walk.go:335:					walkReusableSuccessActions			22.2%
github.com/speakeasy-api/openapi/arazzo/walk.go:354:					walkReusableSuccessAction			0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:370:					walkReusableFailureActions			22.2%
github.com/speakeasy-api/openapi/arazzo/walk.go:389:					walkReusableFailureAction			0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:405:					walkComponents					14.3%
github.com/speakeasy-api/openapi/arazzo/walk.go:440:					walkComponentInputs				0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:459:					walkComponentParameters				0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:478:					walkParameter					0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:493:					walkComponentSuccessActions			0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:512:					walkSuccessAction				0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:527:					walkComponentFailureActions			0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:546:					walkFailureAction				0.0%
github.com/speakeasy-api/openapi/arazzo/walk.go:610:					getMatchFunc					55.0%
github.com/speakeasy-api/openapi/arazzo/workflow.go:21:					Find						75.0%
github.com/speakeasy-api/openapi/arazzo/workflow.go:64:					Validate					62.2%
github.com/speakeasy-api/openapi/cache/manager.go:23:					ClearAllCaches					100.0%
github.com/speakeasy-api/openapi/cache/manager.go:31:					ClearURLCache					100.0%
github.com/speakeasy-api/openapi/cache/manager.go:38:					ClearReferenceCache				100.0%
github.com/speakeasy-api/openapi/cache/manager.go:45:					ClearFieldCache					100.0%
github.com/speakeasy-api/openapi/cache/manager.go:57:					GetAllCacheStats				100.0%
github.com/speakeasy-api/openapi/cmd/openapi/main.go:22:				getVersionInfo					0.0%
github.com/speakeasy-api/openapi/cmd/openapi/main.go:117:				init						0.0%
github.com/speakeasy-api/openapi/cmd/openapi/main.go:156:				main						0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:31:			main						0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:38:			updateExamples					0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:54:			processPackage					0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:89:			parseExamplesFile				0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:115:			extractExample					0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:159:			parseDocComment					0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:191:			generateTitleFromName				0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:207:			extractOutputComment				0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:234:			generateReadmeContent				0.0%
github.com/speakeasy-api/openapi/cmd/update-examples/main.go:255:			updateReadmeFile				0.0%
github.com/speakeasy-api/openapi/errors/errors.go:16:					Error						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:21:					Is						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:26:					As						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:36:					Wrap						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:45:					Error						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:52:					Is						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:56:					As						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:60:					Unwrap						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:67:					Is						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:72:					As						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:77:					New						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:82:					Join						100.0%
github.com/speakeasy-api/openapi/errors/errors.go:90:					UnwrapErrors					100.0%
github.com/speakeasy-api/openapi/expression/expression.go:83:				String						0.0%
github.com/speakeasy-api/openapi/expression/expression.go:88:				Validate					100.0%
github.com/speakeasy-api/openapi/expression/expression.go:186:				IsExpression					83.3%
github.com/speakeasy-api/openapi/expression/expression.go:214:				GetType						100.0%
github.com/speakeasy-api/openapi/expression/expression.go:220:				GetParts					91.7%
github.com/speakeasy-api/openapi/expression/expression.go:242:				GetJSONPointer					100.0%
github.com/speakeasy-api/openapi/expression/expression.go:247:				getType						100.0%
github.com/speakeasy-api/openapi/expression/expression.go:262:				validateName					100.0%
github.com/speakeasy-api/openapi/expression/expressions.go:4:				ExtractExpressions				100.0%
github.com/speakeasy-api/openapi/expression/factory_registration.go:8:			init						50.0%
github.com/speakeasy-api/openapi/expression/value.go:11:				GetValueOrExpressionValue			0.0%
github.com/speakeasy-api/openapi/extensions/core/extensions.go:16:			UnmarshalExtensionModel				75.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:29:				NewElem						0.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:43:				New						75.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:55:				Init						100.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:59:				SetCore						75.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:68:				GetCore						0.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:72:				Populate					0.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:90:				UnmarshalExtensionModel				66.7%
github.com/speakeasy-api/openapi/extensions/extensions.go:115:				GetExtensionValue				70.0%
github.com/speakeasy-api/openapi/extensions/extensions.go:137:				IsEqual						100.0%
github.com/speakeasy-api/openapi/extensions/factory_registration.go:6:			init						75.0%
github.com/speakeasy-api/openapi/hashing/hashing.go:15:					Hash						100.0%
github.com/speakeasy-api/openapi/hashing/hashing.go:27:					toHashableString				91.7%
github.com/speakeasy-api/openapi/hashing/hashing.go:106:				structToHashableString				95.7%
github.com/speakeasy-api/openapi/hashing/hashing.go:155:				yamlNodeToHashableString			0.0%
github.com/speakeasy-api/openapi/hashing/hashing.go:179:				sequencedMapToHashableString			92.9%
github.com/speakeasy-api/openapi/internal/interfaces/interfaces.go:41:			ImplementsInterface				0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:14:			CreateStringYamlNode				0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:24:			CreateIntYamlNode				0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:34:			CreateBoolYamlNode				0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:44:			CreateMapYamlNode				0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:61:			isInterfaceNil					0.0%
github.com/speakeasy-api/openapi/internal/testutils/utils.go:74:			AssertEqualSequencedMap				0.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:33:			ClassifyReference				100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:100:			IsURL						100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:109:			IsFilePath					100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:118:			IsFragment					100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:130:			JoinWith					92.9%
github.com/speakeasy-api/openapi/internal/utils/references.go:164:			joinURL						66.7%
github.com/speakeasy-api/openapi/internal/utils/references.go:188:			joinFilePath					100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:224:			getWindowsDir					80.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:235:			joinWindowsPaths				100.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:269:			isWindowsAbsolutePath				80.0%
github.com/speakeasy-api/openapi/internal/utils/references.go:283:			JoinReference					100.0%
github.com/speakeasy-api/openapi/internal/utils/slices.go:3:				MapSlice					0.0%
github.com/speakeasy-api/openapi/internal/utils/string_builder.go:19:			BuildAbsoluteReference				100.0%
github.com/speakeasy-api/openapi/internal/utils/string_builder.go:28:			BuildString					0.0%
github.com/speakeasy-api/openapi/internal/utils/string_builder.go:50:			JoinWithSeparator				100.0%
github.com/speakeasy-api/openapi/internal/utils/url_cache.go:18:			ParseURLCached					100.0%
github.com/speakeasy-api/openapi/internal/utils/url_cache.go:25:			Parse						100.0%
github.com/speakeasy-api/openapi/internal/utils/url_cache.go:49:			Clear						100.0%
github.com/speakeasy-api/openapi/internal/utils/url_cache.go:62:			GetURLCacheStats				100.0%
github.com/speakeasy-api/openapi/internal/utils/url_cache.go:72:			ClearGlobalURLCache				100.0%
github.com/speakeasy-api/openapi/internal/utils/versions.go:9:				ParseVersion					100.0%
github.com/speakeasy-api/openapi/json/json.go:17:					YAMLToJSON					0.0%
github.com/speakeasy-api/openapi/json/json.go:29:					handleYAMLNode					0.0%
github.com/speakeasy-api/openapi/json/json.go:50:					handleMappingNode				0.0%
github.com/speakeasy-api/openapi/json/json.go:81:					handleSequenceNode				0.0%
github.com/speakeasy-api/openapi/json/json.go:101:					handleScalarNode				0.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:37:				WithStructTags					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:43:				getOptions					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:58:				String						0.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:63:				Validate					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:74:				GetTarget					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:91:				PartsToJSONPointer				0.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:100:			getCurrentStackTarget				100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:120:			getTarget					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:148:			getMapTarget					78.9%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:188:			getSliceTarget					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:223:			getStructTarget					86.4%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:271:			getKeyBasedStructTarget				100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:319:			getIndexBasedStructTarget			87.5%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:335:			getNavigableWithKeyTarget			80.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:355:			getNavigableWithIndexTarget			80.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:375:			getNavigableNoderTarget				77.8%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:393:			buildPath					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:404:			EscapeString					100.0%
github.com/speakeasy-api/openapi/jsonpointer/jsonpointer.go:408:			escape						100.0%
github.com/speakeasy-api/openapi/jsonpointer/models.go:16:				navigateModel					89.9%
github.com/speakeasy-api/openapi/jsonpointer/navigation.go:23:				unescapeValue					100.0%
github.com/speakeasy-api/openapi/jsonpointer/navigation.go:29:				getIndex					100.0%
github.com/speakeasy-api/openapi/jsonpointer/navigation.go:39:				getNavigationStack				100.0%
github.com/speakeasy-api/openapi/jsonpointer/yamlnode.go:10:				getYamlNodeTarget				61.1%
github.com/speakeasy-api/openapi/jsonpointer/yamlnode.go:51:				getYamlDocumentTarget				66.7%
github.com/speakeasy-api/openapi/jsonpointer/yamlnode.go:60:				getYamlMappingTarget				88.9%
github.com/speakeasy-api/openapi/jsonpointer/yamlnode.go:117:				getYamlSequenceTarget				90.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/core/factory_registration.go:9:	init						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/discriminator.go:29:			GetPropertyName					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/discriminator.go:37:			GetMapping					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/discriminator.go:45:			GetExtensions					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/discriminator.go:53:			Validate					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/discriminator.go:69:			IsEqual						42.9%
github.com/speakeasy-api/openapi/jsonschema/oas3/externaldoc.go:30:			GetDescription					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/externaldoc.go:38:			GetURL						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/externaldoc.go:46:			GetExtensions					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/externaldoc.go:54:			IsEqual						53.8%
github.com/speakeasy-api/openapi/jsonschema/oas3/externaldoc.go:83:			Validate					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/factory_registration.go:12:		init						86.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:35:				increment					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:162:				Inline						96.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:224:				analyzeReferences				75.3%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:404:				inlineRecursive					72.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:628:				getAbsRef					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:641:				inlineSchemaInPlace				81.8%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:664:				removeUnusedDefs				94.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:703:				generateUniqueDefName				25.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:719:				rewriteExternalReference			50.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/inline.go:799:				consolidateDefinitions				81.5%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:45:			NewJSONSchemaFromSchema				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:54:			NewJSONSchemaFromReference			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:65:			NewJSONSchemaFromBool				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:75:			NewReferencedScheme				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:108:			GetExtensions					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:125:			GetParent					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:141:			GetTopLevelParent				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:154:			SetParent					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:167:			SetTopLevelParent				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:175:			IsEqual						60.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:190:			Validate					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:218:			ConcreteToReferenceable				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:226:			ReferenceableToConcrete				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:231:			ShallowCopy					88.9%
github.com/speakeasy-api/openapi/jsonschema/oas3/jsonschema.go:258:			PopulateWithParent				88.9%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:22:			IsResolved					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:31:			IsReference					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:41:			GetReference					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:51:			GetRef						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:60:			GetAbsRef					83.3%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:75:			Resolve						100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:93:			GetResolvedObject				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:103:			GetResolvedSchema				88.2%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:142:			MustGetResolvedSchema				66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:154:			GetReferenceResolutionInfo			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:170:			resolve						95.2%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:263:			joinReferenceChain				60.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:274:			resolveJSONSchemaWithTracking			95.2%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:321:			resolveDefsReference				77.8%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:365:			tryResolveDefsUsingJSONPointerNavigation	0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:411:			getParentJSONPointer				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/resolution.go:425:			unmarshaler					71.4%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:86:				ShallowCopy					72.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:187:				GetRef						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:195:				IsReference					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:203:				GetExclusiveMaximum				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:211:				GetExclusiveMinimum				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:219:				GetType						71.4%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:236:				GetAllOf					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:244:				GetOneOf					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:252:				GetAnyOf					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:260:				GetDiscriminator				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:268:				GetExamples					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:276:				GetPrefixItems					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:284:				GetContains					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:292:				GetMinContains					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:300:				GetMaxContains					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:308:				GetIf						0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:316:				GetElse						0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:324:				GetThen						0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:332:				GetDependentSchemas				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:340:				GetPatternProperties				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:348:				GetPropertyNames				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:356:				GetUnevaluatedItems				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:364:				GetUnevaluatedProperties			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:372:				GetItems					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:380:				GetAnchor					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:388:				GetNot						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:396:				GetProperties					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:404:				GetDefs						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:412:				GetTitle					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:420:				GetMultipleOf					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:428:				GetMaximum					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:436:				GetMinimum					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:444:				GetMaxLength					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:452:				GetMinLength					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:460:				GetPattern					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:468:				GetFormat					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:476:				GetMaxItems					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:484:				GetMinItems					100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:492:				GetUniqueItems					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:500:				GetMaxProperties				66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:508:				GetMinProperties				66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:516:				GetRequired					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:524:				GetEnum						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:532:				GetAdditionalProperties				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:540:				GetDescription					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:548:				GetDefault					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:556:				GetConst					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:564:				GetNullable					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:572:				GetReadOnly					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:580:				GetWriteOnly					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:588:				GetExternalDocs					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:596:				GetExample					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:604:				GetDeprecated					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:612:				GetSchema					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:620:				GetXML						0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:628:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:638:				IsEqual						60.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:883:				GetParent					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:892:				SetParent					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:900:				PopulateWithParent				75.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:930:				equalJSONSchemas				80.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:940:				equalJSONSchemaSlices				25.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:956:				equalSequencedMaps				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:985:				equalSlices					87.5%
github.com/speakeasy-api/openapi/jsonschema/oas3/schema.go:1001:			equalValueSlices				87.5%
github.com/speakeasy-api/openapi/jsonschema/oas3/validation.go:46:			Validate					0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/validation.go:58:			Validate					90.3%
github.com/speakeasy-api/openapi/jsonschema/oas3/validation.go:130:			getRootCauses					73.1%
github.com/speakeasy-api/openapi/jsonschema/oas3/validation.go:186:			initValidation					76.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:16:				NewExclusiveMaximumFromBool			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:22:				NewExclusiveMaximumFromFloat64			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:28:				NewExclusiveMinimumFromBool			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:34:				NewExclusiveMinimumFromFloat64			0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:40:				NewTypeFromArray				0.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/value.go:47:				NewTypeFromString				100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/walk.go:35:				WalkExternalDocs				75.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/walk.go:46:				Walk						100.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/walk.go:55:				walkSchema					44.4%
github.com/speakeasy-api/openapi/jsonschema/oas3/walk.go:223:				walkExternalDocs				83.3%
github.com/speakeasy-api/openapi/jsonschema/oas3/walk.go:259:				getSchemaMatchFunc				60.0%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:36:				GetName						66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:44:				GetNamespace					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:52:				GetPrefix					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:60:				GetAttribute					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:68:				GetWrapped					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:76:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:84:				IsEqual						47.4%
github.com/speakeasy-api/openapi/jsonschema/oas3/xml.go:120:				Validate					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:38:				GetRootNode					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:42:				GetRootNodeLine					0.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:49:				SetRootNode					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:53:				GetValid					0.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:57:				GetValidYaml					0.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:61:				DetermineValidity				85.7%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:76:				SetValid					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:81:				SetConfig					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:85:				GetConfig					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:92:				GetJSONPointer					87.5%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:115:				GetJSONPath					100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:137:				Marshal						75.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:165:				resetNodeStylesForYAML				100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:170:				resetNodeStylesForYAMLRecursive			73.3%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:212:				findNodePath					85.7%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:246:				findNodePathInMapping				86.7%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:281:				findNodePathInSequence				83.3%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:297:				resolveAlias					60.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:311:				getNodeKeyString				66.7%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:326:				buildJSONPointer				100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:342:				escapeJSONPointerToken				100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:350:				buildJSONPath					94.4%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:385:				needsBracketNotation				100.0%
github.com/speakeasy-api/openapi/marshaller/coremodel.go:399:				escapeJSONPathProperty				100.0%
github.com/speakeasy-api/openapi/marshaller/extensions.go:35:				UnmarshalExtension				78.6%
github.com/speakeasy-api/openapi/marshaller/extensions.go:70:				syncExtensions					84.9%
github.com/speakeasy-api/openapi/marshaller/factory.go:43:				RegisterType					87.5%
github.com/speakeasy-api/openapi/marshaller/factory.go:63:				CreateInstance					100.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:82:				IsRegistered					100.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:92:				isTesting					100.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:97:				init						58.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:160:				buildFieldCacheForType				91.9%
github.com/speakeasy-api/openapi/marshaller/factory.go:255:				getFieldMapCached				100.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:272:				ClearGlobalFieldCache				100.0%
github.com/speakeasy-api/openapi/marshaller/factory.go:285:				GetFieldCacheStats				100.0%
github.com/speakeasy-api/openapi/marshaller/marshal.go:26:				Marshal						66.7%
github.com/speakeasy-api/openapi/marshaller/marshal.go:48:				Sync						71.4%
github.com/speakeasy-api/openapi/marshaller/model.go:58:				GetCore						66.7%
github.com/speakeasy-api/openapi/marshaller/model.go:68:				GetCoreAny					0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:89:				GetRootNode					60.0%
github.com/speakeasy-api/openapi/marshaller/model.go:100:				GetRootNodeLine					0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:111:				GetRootNodeColumn				0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:122:				GetPropertyLine					92.9%
github.com/speakeasy-api/openapi/marshaller/model.go:156:				SetCore						100.0%
github.com/speakeasy-api/openapi/marshaller/model.go:163:				SetCoreAny					100.0%
github.com/speakeasy-api/openapi/marshaller/model.go:171:				GetCachedReferencedObject			0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:178:				StoreReferencedObjectInCache			0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:182:				GetCachedReferenceDocument			0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:194:				StoreReferenceDocumentInCache			0.0%
github.com/speakeasy-api/openapi/marshaller/model.go:198:				InitCache					0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:35:					Unmarshal					100.0%
github.com/speakeasy-api/openapi/marshaller/node.go:50:					GetValue					100.0%
github.com/speakeasy-api/openapi/marshaller/node.go:54:					GetValueType					100.0%
github.com/speakeasy-api/openapi/marshaller/node.go:58:					SyncValue					85.7%
github.com/speakeasy-api/openapi/marshaller/node.go:72:					SetPresent					100.0%
github.com/speakeasy-api/openapi/marshaller/node.go:76:					GetKeyNode					100.0%
github.com/speakeasy-api/openapi/marshaller/node.go:80:					GetKeyNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:87:					GetKeyNodeOrRootLine				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:95:					GetValueNode					0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:99:					GetValueNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:106:				GetValueNodeOrRootLine				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:115:				GetSliceValueNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:133:				GetMapKeyNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:152:				GetMapKeyNodeOrRootLine				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:161:				GetMapValueNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/marshaller/node.go:180:				GetNavigableNode				0.0%
github.com/speakeasy-api/openapi/marshaller/populator.go:33:				Populate					47.4%
github.com/speakeasy-api/openapi/marshaller/populator.go:70:				PopulateWithParent				47.4%
github.com/speakeasy-api/openapi/marshaller/populator.go:107:				PopulateModel					81.4%
github.com/speakeasy-api/openapi/marshaller/populator.go:213:				populateValueWithParent				73.6%
github.com/speakeasy-api/openapi/marshaller/populator.go:324:				getSequencedMapInterface			81.8%
github.com/speakeasy-api/openapi/marshaller/populator.go:372:				getSourceForPopulation				66.7%
github.com/speakeasy-api/openapi/marshaller/populator.go:391:				isEmbeddedSequencedMapType			100.0%
github.com/speakeasy-api/openapi/marshaller/sequencedmap.go:24:				unmarshalSequencedMap				88.1%
github.com/speakeasy-api/openapi/marshaller/sequencedmap.go:115:			populateSequencedMap				78.1%
github.com/speakeasy-api/openapi/marshaller/sequencedmap.go:187:			syncSequencedMapChanges				80.9%
github.com/speakeasy-api/openapi/marshaller/syncer.go:20:				SyncValue					85.7%
github.com/speakeasy-api/openapi/marshaller/syncer.go:100:				syncChanges					78.9%
github.com/speakeasy-api/openapi/marshaller/syncer.go:282:				syncArraySlice					86.4%
github.com/speakeasy-api/openapi/marshaller/syncer.go:382:				reorderArrayElements				73.5%
github.com/speakeasy-api/openapi/marshaller/syncer.go:481:				dereferenceAndInitializeIfNeededToLastPtr	100.0%
github.com/speakeasy-api/openapi/marshaller/syncer.go:500:				dereferenceToLastPtr				100.0%
github.com/speakeasy-api/openapi/marshaller/syncer.go:508:				getUnderlyingValue				100.0%
github.com/speakeasy-api/openapi/marshaller/syncer.go:516:				initializeAndGetSequencedMapInterface		100.0%
github.com/speakeasy-api/openapi/marshaller/syncer.go:557:				getSourceInterface				71.4%
github.com/speakeasy-api/openapi/marshaller/syncer.go:573:				dereferenceType					100.0%
github.com/speakeasy-api/openapi/marshaller/tests/core/factory_registration.go:10:	init						0.0%
github.com/speakeasy-api/openapi/marshaller/tests/core/models.go:103:			Unmarshal					0.0%
github.com/speakeasy-api/openapi/marshaller/tests/factory_registration.go:9:		init						0.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:33:				Unmarshal					78.6%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:64:				UnmarshalNode					77.8%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:83:				UnmarshalCore					80.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:103:			UnmarshalModel					100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:107:			UnmarshalKeyValuePair				100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:124:			DecodeNode					0.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:128:			unmarshal					78.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:230:			unmarshalMapping				75.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:255:			unmarshalModel					86.6%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:442:			unmarshalStruct					100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:446:			decodeNode					80.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:469:			unmarshalSequence				82.6%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:513:			unmarshalNode					66.7%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:564:			implementsInterface				75.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:585:			isEmbeddedSequencedMap				100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:590:			isStructType					100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:595:			isSliceType					100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:600:			isMapType					100.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:605:			validateNodeKind				83.3%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:620:			isTypeMismatchError				75.0%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:631:			initializeEmbeddedSequencedMap			66.7%
github.com/speakeasy-api/openapi/marshaller/unmarshaller.go:658:			getOptionalParentName				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:14:				Bootstrap					100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:31:				createBootstrapInfo				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:50:				createBootstrapServers				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:64:				createBootstrapTags				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:78:				createBootstrapPaths				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:121:				createUserResponses				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:130:				createBootstrapComponents			100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:139:				createBootstrapSchemas				100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:196:				createBootstrapResponses			100.0%
github.com/speakeasy-api/openapi/openapi/bootstrap.go:232:				createBootstrapSecuritySchemes			100.0%
github.com/speakeasy-api/openapi/openapi/bundle.go:117:					Bundle						83.3%
github.com/speakeasy-api/openapi/openapi/bundle.go:170:					bundleObject					80.0%
github.com/speakeasy-api/openapi/openapi/bundle.go:213:					bundleSchema					82.8%
github.com/speakeasy-api/openapi/openapi/bundle.go:286:					rewriteRefsInBundledSchemas			80.0%
github.com/speakeasy-api/openapi/openapi/bundle.go:298:					rewriteRefsInSchema				90.5%
github.com/speakeasy-api/openapi/openapi/bundle.go:341:					bundleGenericReference				80.6%
github.com/speakeasy-api/openapi/openapi/bundle.go:415:					generateComponentName				75.0%
github.com/speakeasy-api/openapi/openapi/bundle.go:427:					generateComponentNameWithHashConflictResolution	91.7%
github.com/speakeasy-api/openapi/openapi/bundle.go:476:					generateFilePathBasedNameWithConflictResolution	63.6%
github.com/speakeasy-api/openapi/openapi/bundle.go:520:					generateFilePathBasedName			89.7%
github.com/speakeasy-api/openapi/openapi/bundle.go:582:					normalizePathForComponentName			86.5%
github.com/speakeasy-api/openapi/openapi/bundle.go:673:					generateCounterBasedName			66.7%
github.com/speakeasy-api/openapi/openapi/bundle.go:719:					updateReferencesToComponents			69.2%
github.com/speakeasy-api/openapi/openapi/bundle.go:782:					updateReference					100.0%
github.com/speakeasy-api/openapi/openapi/bundle.go:797:					addComponentsToDocument				44.2%
github.com/speakeasy-api/openapi/openapi/bundle.go:904:					handleReference					86.4%
github.com/speakeasy-api/openapi/openapi/bundle.go:953:					detectPathStyle					60.0%
github.com/speakeasy-api/openapi/openapi/callbacks.go:29:				NewCallback					0.0%
github.com/speakeasy-api/openapi/openapi/callbacks.go:36:				GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/callbacks.go:43:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:67:					Clean						95.7%
github.com/speakeasy-api/openapi/openapi/clean.go:157:					trackSchemaReferences				85.7%
github.com/speakeasy-api/openapi/openapi/clean.go:186:					trackPathItemReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:199:					trackParameterReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:212:					trackExampleReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:225:					trackRequestBodyReference			100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:238:					trackResponseReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:251:					trackHeaderReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:264:					trackCallbackReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:277:					trackLinkReference				100.0%
github.com/speakeasy-api/openapi/openapi/clean.go:290:					trackSecuritySchemeReference			28.6%
github.com/speakeasy-api/openapi/openapi/clean.go:303:					extractComponentName				75.0%
github.com/speakeasy-api/openapi/openapi/clean.go:312:					removeUnusedComponentsFromDocument		89.3%
github.com/speakeasy-api/openapi/openapi/cmd/bootstrap.go:43:				runBootstrap					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/bootstrap.go:52:				createBootstrapDocument				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/bundle.go:49:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/bundle.go:54:				runBundleCommand				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:60:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:64:				runClean					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:85:				cleanOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:114:				countComponents					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:156:				reportCleaningResults				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/clean.go:183:				GetCleanCommand					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/inline.go:48:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/inline.go:52:				runInline					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/inline.go:73:				inlineOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/inline.go:106:				GetInlineCommand				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/join.go:57:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/join.go:62:				runJoinCommand					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/localize.go:88:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/localize.go:92:				runLocalize					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/localize.go:103:				localizeOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/localize.go:185:				GetLocalizeCommand				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:91:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:96:				runOptimize					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:117:				optimizeOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:152:				boxedCode					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:212:				createInteractiveCallback			0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:267:				isValidComponentName				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:285:				reportOptimizationResults			0.0%
github.com/speakeasy-api/openapi/openapi/cmd/optimize.go:299:				GetOptimizeCommand				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/root.go:6:					Apply						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:22:				NewOpenAPIProcessor				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:42:				LoadDocument					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:70:				ReportValidationErrors				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:81:				WriteDocument					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:105:				PrintSuccess					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/shared.go:112:				PrintInfo					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/upgrade.go:42:				init						0.0%
github.com/speakeasy-api/openapi/openapi/cmd/upgrade.go:47:				runUpgrade					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/upgrade.go:68:				upgradeOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/upgrade.go:109:				GetUpgradeCommand				0.0%
github.com/speakeasy-api/openapi/openapi/cmd/validate.go:28:				runValidate					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/validate.go:38:				validateOpenAPI					0.0%
github.com/speakeasy-api/openapi/openapi/cmd/validate.go:68:				GetValidateCommand				0.0%
github.com/speakeasy-api/openapi/openapi/components.go:47:				GetSchemas					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:55:				GetResponses					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:63:				GetParameters					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:71:				GetExamples					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:79:				GetRequestBodies				66.7%
github.com/speakeasy-api/openapi/openapi/components.go:87:				GetHeaders					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:95:				GetSecuritySchemes				66.7%
github.com/speakeasy-api/openapi/openapi/components.go:103:				GetLinks					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:111:				GetCallbacks					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:119:				GetPathItems					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:127:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/components.go:135:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/core/factory_registration.go:11:		init						0.0%
github.com/speakeasy-api/openapi/openapi/core/paths.go:16:				NewPaths					0.0%
github.com/speakeasy-api/openapi/openapi/core/paths.go:35:				NewPathItem					0.0%
github.com/speakeasy-api/openapi/openapi/core/reference.go:28:				Unmarshal					0.0%
github.com/speakeasy-api/openapi/openapi/core/reference.go:57:				SyncChanges					0.0%
github.com/speakeasy-api/openapi/openapi/core/security.go:29:				GetMapKeyNodeOrRoot				0.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:42:				GetContentType					0.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:69:				GetContentTypeValue				100.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:77:				GetStyle					100.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:86:				GetExplode					100.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:94:				GetAllowReserved				100.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:102:				GetHeaders					0.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:110:				GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/encoding.go:118:				Validate					94.4%
github.com/speakeasy-api/openapi/openapi/examples.go:34:				GetSummary					66.7%
github.com/speakeasy-api/openapi/openapi/examples.go:42:				GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/examples.go:50:				GetValue					66.7%
github.com/speakeasy-api/openapi/openapi/examples.go:58:				GetExternalValue				66.7%
github.com/speakeasy-api/openapi/openapi/examples.go:66:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/examples.go:74:				ResolveExternalValue				0.0%
github.com/speakeasy-api/openapi/openapi/examples.go:80:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/factory_registration.go:13:			init						94.6%
github.com/speakeasy-api/openapi/openapi/header.go:47:					GetSchema					66.7%
github.com/speakeasy-api/openapi/openapi/header.go:55:					GetRequired					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:63:					GetDeprecated					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:71:					GetStyle					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:79:					GetExplode					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:87:					GetContent					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:95:					GetExample					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:103:					GetExamples					0.0%
github.com/speakeasy-api/openapi/openapi/header.go:111:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/header.go:119:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/header.go:127:					Validate					92.9%
github.com/speakeasy-api/openapi/openapi/info.go:40:					GetTitle					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:48:					GetVersion					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:56:					GetSummary					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:64:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:72:					GetTermsOfService				66.7%
github.com/speakeasy-api/openapi/openapi/info.go:80:					GetContact					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:88:					GetLicense					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:96:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:104:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/info.go:151:					GetName						66.7%
github.com/speakeasy-api/openapi/openapi/info.go:159:					GetURL						66.7%
github.com/speakeasy-api/openapi/openapi/info.go:167:					GetEmail					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:175:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:183:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/info.go:221:					GetName						66.7%
github.com/speakeasy-api/openapi/openapi/info.go:229:					GetIdentifier					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:237:					GetURL						66.7%
github.com/speakeasy-api/openapi/openapi/info.go:245:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/info.go:253:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/inline.go:135:					Inline						88.9%
github.com/speakeasy-api/openapi/openapi/inline.go:156:					inlineObject					88.2%
github.com/speakeasy-api/openapi/openapi/inline.go:315:					inlineReference					80.0%
github.com/speakeasy-api/openapi/openapi/inline.go:364:					rewriteRefsWithMapping				65.0%
github.com/speakeasy-api/openapi/openapi/inline.go:403:					removeUnusedComponents				94.1%
github.com/speakeasy-api/openapi/openapi/join.go:66:					Join						94.1%
github.com/speakeasy-api/openapi/openapi/join.go:102:					initializeUsedNames				74.5%
github.com/speakeasy-api/openapi/openapi/join.go:195:					joinSingleDocument				83.3%
github.com/speakeasy-api/openapi/openapi/join.go:231:					joinPaths					71.4%
github.com/speakeasy-api/openapi/openapi/join.go:283:					mergePathItemOperations				92.3%
github.com/speakeasy-api/openapi/openapi/join.go:320:					createPathItemWithOperations			100.0%
github.com/speakeasy-api/openapi/openapi/join.go:332:					generateConflictPath				100.0%
github.com/speakeasy-api/openapi/openapi/join.go:348:					joinWebhooks					83.3%
github.com/speakeasy-api/openapi/openapi/join.go:366:					joinComponents					62.5%
github.com/speakeasy-api/openapi/openapi/join.go:388:					joinSchemas					89.5%
github.com/speakeasy-api/openapi/openapi/join.go:429:					joinOtherComponents				50.3%
github.com/speakeasy-api/openapi/openapi/join.go:670:					generateJoinComponentName			75.0%
github.com/speakeasy-api/openapi/openapi/join.go:682:					generateJoinFilePathBasedName			84.6%
github.com/speakeasy-api/openapi/openapi/join.go:710:					generateJoinCounterBasedName			100.0%
github.com/speakeasy-api/openapi/openapi/join.go:722:					updateReferencesInDocument			79.2%
github.com/speakeasy-api/openapi/openapi/join.go:781:					updateComponentReference			20.0%
github.com/speakeasy-api/openapi/openapi/join.go:800:					joinTags					100.0%
github.com/speakeasy-api/openapi/openapi/join.go:823:					collectOperationIds				81.2%
github.com/speakeasy-api/openapi/openapi/join.go:860:					resolveOperationIdConflicts			69.6%
github.com/speakeasy-api/openapi/openapi/join.go:912:					generateDocumentName				100.0%
github.com/speakeasy-api/openapi/openapi/join.go:927:					joinServersAndSecurity				100.0%
github.com/speakeasy-api/openapi/openapi/join.go:954:					areServersIdentical				85.7%
github.com/speakeasy-api/openapi/openapi/join.go:973:					areSecurityIdentical				100.0%
github.com/speakeasy-api/openapi/openapi/join.go:989:					applyGlobalServersSecurityToOperations		83.3%
github.com/speakeasy-api/openapi/openapi/links.go:40:					GetOperationID					100.0%
github.com/speakeasy-api/openapi/openapi/links.go:48:					GetOperationRef					100.0%
github.com/speakeasy-api/openapi/openapi/links.go:56:					GetDescription					100.0%
github.com/speakeasy-api/openapi/openapi/links.go:64:					GetParameters					66.7%
github.com/speakeasy-api/openapi/openapi/links.go:72:					GetRequestBody					0.0%
github.com/speakeasy-api/openapi/openapi/links.go:80:					GetServer					0.0%
github.com/speakeasy-api/openapi/openapi/links.go:88:					GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/links.go:95:					ResolveOperation				0.0%
github.com/speakeasy-api/openapi/openapi/links.go:100:					Validate					92.9%
github.com/speakeasy-api/openapi/openapi/localize.go:114:				Localize					60.0%
github.com/speakeasy-api/openapi/openapi/localize.go:168:				discoverExternalReferences			46.7%
github.com/speakeasy-api/openapi/openapi/localize.go:211:				discoverSchemaReference				87.1%
github.com/speakeasy-api/openapi/openapi/localize.go:285:				discoverGenericReference			4.8%
github.com/speakeasy-api/openapi/openapi/localize.go:389:				generateLocalizedFilenames			100.0%
github.com/speakeasy-api/openapi/openapi/localize.go:430:				generateLocalizedFilenameWithConflictDetection	88.9%
github.com/speakeasy-api/openapi/openapi/localize.go:451:				generatePathBasedFilenameWithConflictDetection	58.1%
github.com/speakeasy-api/openapi/openapi/localize.go:514:				generateCounterBasedFilename			100.0%
github.com/speakeasy-api/openapi/openapi/localize.go:531:				copyExternalFiles				77.8%
github.com/speakeasy-api/openapi/openapi/localize.go:552:				rewriteInternalReferences			66.7%
github.com/speakeasy-api/openapi/openapi/localize.go:574:				rewriteYAMLReferences				77.8%
github.com/speakeasy-api/openapi/openapi/localize.go:615:				rewriteReferenceValue				89.5%
github.com/speakeasy-api/openapi/openapi/localize.go:661:				resolveRelativeReference			75.9%
github.com/speakeasy-api/openapi/openapi/localize.go:726:				rewriteReferencesToLocalized			67.9%
github.com/speakeasy-api/openapi/openapi/localize.go:792:				updateGenericReference				14.3%
github.com/speakeasy-api/openapi/openapi/localize.go:822:				normalizeFilePath				80.0%
github.com/speakeasy-api/openapi/openapi/marshalling.go:20:				WithSkipValidation				100.0%
github.com/speakeasy-api/openapi/openapi/marshalling.go:28:				Unmarshal					92.9%
github.com/speakeasy-api/openapi/openapi/marshalling.go:55:				Marshal						100.0%
github.com/speakeasy-api/openapi/openapi/marshalling.go:61:				Sync						0.0%
github.com/speakeasy-api/openapi/openapi/mediatype.go:33:				GetSchema					66.7%
github.com/speakeasy-api/openapi/openapi/mediatype.go:41:				GetEncoding					66.7%
github.com/speakeasy-api/openapi/openapi/mediatype.go:49:				GetExamples					66.7%
github.com/speakeasy-api/openapi/openapi/mediatype.go:57:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/mediatype.go:65:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/mediatype.go:87:				GetExample					66.7%
github.com/speakeasy-api/openapi/openapi/openapi.go:65:					GetOpenAPI					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:73:					GetInfo						100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:81:					GetExternalDocs					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:89:					GetTags						100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:97:					GetServers					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:105:				GetSecurity					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:113:				GetPaths					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:121:				GetExtensions					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:129:				GetWebhooks					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:137:				GetComponents					100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:145:				GetJSONSchemaDialect				100.0%
github.com/speakeasy-api/openapi/openapi/openapi.go:153:				Validate					94.4%
github.com/speakeasy-api/openapi/openapi/operation.go:53:				GetOperationID					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:61:				GetSummary					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:69:				GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:77:				GetDeprecated					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:85:				GetTags						66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:93:				GetServers					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:101:				GetSecurity					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:109:				GetParameters					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:117:				GetRequestBody					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:125:				GetResponses					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:133:				GetCallbacks					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:141:				GetExternalDocs					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:149:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/operation.go:158:				IsDeprecated					0.0%
github.com/speakeasy-api/openapi/openapi/operation.go:163:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/optimize.go:76:				Optimize					96.6%
github.com/speakeasy-api/openapi/openapi/optimize.go:236:				collectSchema					92.3%
github.com/speakeasy-api/openapi/openapi/optimize.go:303:				isComplexSchema					91.3%
github.com/speakeasy-api/openapi/openapi/optimize.go:362:				isTopLevelComponentSchema			83.3%
github.com/speakeasy-api/openapi/openapi/optimize.go:383:				buildJSONPointer				100.0%
github.com/speakeasy-api/openapi/openapi/optimize.go:402:				ensureUniqueName				71.4%
github.com/speakeasy-api/openapi/openapi/optimize.go:416:				replaceInlineSchema				81.2%
github.com/speakeasy-api/openapi/openapi/parameter.go:24:				String						0.0%
github.com/speakeasy-api/openapi/openapi/parameter.go:76:				GetName						66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:84:				GetIn						66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:92:				GetSchema					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:100:				GetRequired					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:108:				GetDeprecated					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:116:				GetAllowEmptyValue				66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:130:				GetStyle					28.6%
github.com/speakeasy-api/openapi/openapi/parameter.go:147:				GetExplode					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:155:				GetContent					0.0%
github.com/speakeasy-api/openapi/openapi/parameter.go:163:				GetExample					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:171:				GetExamples					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:179:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:187:				GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:195:				GetAllowReserved				66.7%
github.com/speakeasy-api/openapi/openapi/parameter.go:203:				Validate					64.7%
github.com/speakeasy-api/openapi/openapi/paths.go:28:					NewPaths					100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:35:					GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/paths.go:43:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:77:					Is						0.0%
github.com/speakeasy-api/openapi/openapi/paths.go:104:					NewPathItem					100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:111:					GetOperation					83.3%
github.com/speakeasy-api/openapi/openapi/paths.go:125:					Get						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:130:					Put						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:135:					Post						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:140:					Delete						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:145:					Options						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:150:					Head						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:155:					Patch						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:160:					Trace						100.0%
github.com/speakeasy-api/openapi/openapi/paths.go:165:					GetSummary					66.7%
github.com/speakeasy-api/openapi/openapi/paths.go:173:					GetServers					0.0%
github.com/speakeasy-api/openapi/openapi/paths.go:181:					GetParameters					0.0%
github.com/speakeasy-api/openapi/openapi/paths.go:189:					GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/paths.go:197:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/paths.go:205:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:41:				NewReferencedPathItemFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:48:				NewReferencedPathItemFromPathItem		0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:55:				NewReferencedExampleFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:62:				NewReferencedExampleFromExample			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:69:				NewReferencedParameterFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:76:				NewReferencedParameterFromParameter		0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:83:				NewReferencedHeaderFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:90:				NewReferencedHeaderFromHeader			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:97:				NewReferencedRequestBodyFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:104:				NewReferencedRequestBodyFromRequestBody		100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:111:				NewReferencedResponseFromRef			100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:118:				NewReferencedResponseFromResponse		0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:125:				NewReferencedCallbackFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:132:				NewReferencedCallbackFromCallback		0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:139:				NewReferencedLinkFromRef			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:146:				NewReferencedLinkFromLink			0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:153:				NewReferencedSecuritySchemeFromRef		0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:160:				NewReferencedSecuritySchemeFromSecurityScheme	0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:218:				Resolve						83.3%
github.com/speakeasy-api/openapi/openapi/reference.go:239:				IsReference					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:247:				IsResolved					75.0%
github.com/speakeasy-api/openapi/openapi/reference.go:263:				GetReference					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:272:				GetResolvedObject				0.0%
github.com/speakeasy-api/openapi/openapi/reference.go:282:				GetObject					81.8%
github.com/speakeasy-api/openapi/openapi/reference.go:305:				MustGetObject					66.7%
github.com/speakeasy-api/openapi/openapi/reference.go:319:				GetObjectAny					66.7%
github.com/speakeasy-api/openapi/openapi/reference.go:327:				GetSummary					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:335:				GetDescription					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:351:				GetParent					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:367:				GetTopLevelParent				100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:380:				SetParent					100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:393:				SetTopLevelParent				100.0%
github.com/speakeasy-api/openapi/openapi/reference.go:401:				Validate					93.8%
github.com/speakeasy-api/openapi/openapi/reference.go:431:				Populate					84.6%
github.com/speakeasy-api/openapi/openapi/reference.go:457:				GetNavigableNode				33.3%
github.com/speakeasy-api/openapi/openapi/reference.go:469:				GetReferenceResolutionInfo			70.0%
github.com/speakeasy-api/openapi/openapi/reference.go:489:				resolve						82.8%
github.com/speakeasy-api/openapi/openapi/reference.go:544:				resolveObjectWithTracking			92.5%
github.com/speakeasy-api/openapi/openapi/reference.go:621:				joinReferenceChain				75.0%
github.com/speakeasy-api/openapi/openapi/reference.go:636:				unmarshaler					75.0%
github.com/speakeasy-api/openapi/openapi/reference.go:652:				ensureMutex					100.0%
github.com/speakeasy-api/openapi/openapi/requests.go:31:				GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/requests.go:39:				GetContent					66.7%
github.com/speakeasy-api/openapi/openapi/requests.go:47:				GetRequired					66.7%
github.com/speakeasy-api/openapi/openapi/requests.go:55:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/responses.go:29:				NewResponses					100.0%
github.com/speakeasy-api/openapi/openapi/responses.go:36:				GetDefault					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:44:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:51:				Populate					84.0%
github.com/speakeasy-api/openapi/openapi/responses.go:100:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/responses.go:141:				GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:149:				GetHeaders					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:157:				GetContent					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:165:				GetLinks					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:173:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/responses.go:181:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/security.go:22:				String						100.0%
github.com/speakeasy-api/openapi/openapi/security.go:38:				String						100.0%
github.com/speakeasy-api/openapi/openapi/security.go:74:				GetType						66.7%
github.com/speakeasy-api/openapi/openapi/security.go:82:				GetDescription					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:90:				GetName						66.7%
github.com/speakeasy-api/openapi/openapi/security.go:98:				GetIn						66.7%
github.com/speakeasy-api/openapi/openapi/security.go:106:				GetScheme					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:114:				GetBearerFormat					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:122:				GetFlows					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:130:				GetOpenIdConnectUrl				0.0%
github.com/speakeasy-api/openapi/openapi/security.go:138:				GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:146:				Validate					95.5%
github.com/speakeasy-api/openapi/openapi/security.go:208:				NewSecurityRequirement				100.0%
github.com/speakeasy-api/openapi/openapi/security.go:214:				Populate					93.8%
github.com/speakeasy-api/openapi/openapi/security.go:249:				Validate					90.9%
github.com/speakeasy-api/openapi/openapi/security.go:300:				GetImplicit					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:308:				GetPassword					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:316:				GetClientCredentials				66.7%
github.com/speakeasy-api/openapi/openapi/security.go:324:				GetAuthorizationCode				66.7%
github.com/speakeasy-api/openapi/openapi/security.go:332:				GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:340:				Validate					100.0%
github.com/speakeasy-api/openapi/openapi/security.go:381:				GetAuthorizationURL				66.7%
github.com/speakeasy-api/openapi/openapi/security.go:389:				GetTokenURL					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:397:				GetRefreshURL					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:405:				GetScopes					66.7%
github.com/speakeasy-api/openapi/openapi/security.go:413:				GetExtensions					0.0%
github.com/speakeasy-api/openapi/openapi/security.go:421:				Validate					79.4%
github.com/speakeasy-api/openapi/openapi/serialization.go:10:				String						0.0%
github.com/speakeasy-api/openapi/openapi/server.go:41:					GetURL						66.7%
github.com/speakeasy-api/openapi/openapi/server.go:49:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/server.go:57:					GetVariables					66.7%
github.com/speakeasy-api/openapi/openapi/server.go:65:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/server.go:73:					Validate					93.3%
github.com/speakeasy-api/openapi/openapi/server.go:121:					GetDefault					66.7%
github.com/speakeasy-api/openapi/openapi/server.go:129:					GetEnum						66.7%
github.com/speakeasy-api/openapi/openapi/server.go:137:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/server.go:145:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/server.go:164:					resolveServerVariables				93.8%
github.com/speakeasy-api/openapi/openapi/tag.go:32:					GetName						66.7%
github.com/speakeasy-api/openapi/openapi/tag.go:40:					GetDescription					66.7%
github.com/speakeasy-api/openapi/openapi/tag.go:48:					GetExternalDocs					66.7%
github.com/speakeasy-api/openapi/openapi/tag.go:56:					GetExtensions					66.7%
github.com/speakeasy-api/openapi/openapi/tag.go:64:					Validate					100.0%
github.com/speakeasy-api/openapi/openapi/upgrade.go:18:					WithUpgradeSamePatchVersion			100.0%
github.com/speakeasy-api/openapi/openapi/upgrade.go:26:					Upgrade						93.3%
github.com/speakeasy-api/openapi/openapi/upgrade.go:66:					upgradeSchema					100.0%
github.com/speakeasy-api/openapi/openapi/upgrade.go:78:					upgradeExample					100.0%
github.com/speakeasy-api/openapi/openapi/upgrade.go:91:					upgradeExclusiveMinMax				100.0%
github.com/speakeasy-api/openapi/openapi/upgrade.go:111:				upgradeNullableSchema				94.4%
github.com/speakeasy-api/openapi/openapi/upgrade.go:143:				createNullSchema				100.0%
github.com/speakeasy-api/openapi/openapi/utils.go:26:					ResolveAllReferences				100.0%
github.com/speakeasy-api/openapi/openapi/utils.go:91:					resolveAny					88.2%
github.com/speakeasy-api/openapi/openapi/utils.go:155:					ExtractMethodAndPath				88.9%
github.com/speakeasy-api/openapi/openapi/utils.go:191:					GetParentType					100.0%
github.com/speakeasy-api/openapi/openapi/walk.go:24:					Walk						75.0%
github.com/speakeasy-api/openapi/openapi/walk.go:34:					walkFrom					17.9%
github.com/speakeasy-api/openapi/openapi/walk.go:119:					walk						85.7%
github.com/speakeasy-api/openapi/openapi/walk.go:166:					walkInfo					86.4%
github.com/speakeasy-api/openapi/openapi/walk.go:214:					walkPaths					100.0%
github.com/speakeasy-api/openapi/openapi/walk.go:236:					walkReferencedPathItem				75.0%
github.com/speakeasy-api/openapi/openapi/walk.go:256:					walkPathItem					70.0%
github.com/speakeasy-api/openapi/openapi/walk.go:283:					walkOperation					70.0%
github.com/speakeasy-api/openapi/openapi/walk.go:334:					walkReferencedParameters			88.9%
github.com/speakeasy-api/openapi/openapi/walk.go:354:					walkReferencedParameter				75.0%
github.com/speakeasy-api/openapi/openapi/walk.go:374:					walkParameter					55.6%
github.com/speakeasy-api/openapi/openapi/walk.go:399:					walkReferencedRequestBody			87.5%
github.com/speakeasy-api/openapi/openapi/walk.go:419:					walkRequestBody					80.0%
github.com/speakeasy-api/openapi/openapi/walk.go:434:					walkResponses					81.8%
github.com/speakeasy-api/openapi/openapi/walk.go:462:					walkReferencedResponse				87.5%
github.com/speakeasy-api/openapi/openapi/walk.go:482:					walkResponse					55.6%
github.com/speakeasy-api/openapi/openapi/walk.go:507:					walkMediaTypes					100.0%
github.com/speakeasy-api/openapi/openapi/walk.go:527:					walkMediaType					66.7%
github.com/speakeasy-api/openapi/openapi/walk.go:558:					walkEncodings					88.9%
github.com/speakeasy-api/openapi/openapi/walk.go:578:					walkEncoding					62.5%
github.com/speakeasy-api/openapi/openapi/walk.go:599:					walkReferencedHeaders				88.9%
github.com/speakeasy-api/openapi/openapi/walk.go:619:					walkReferencedHeader				75.0%
github.com/speakeasy-api/openapi/openapi/walk.go:639:					walkHeader					55.6%
github.com/speakeasy-api/openapi/openapi/walk.go:664:					walkReferencedExamples				88.9%
github.com/speakeasy-api/openapi/openapi/walk.go:684:					walkReferencedExample				75.0%
github.com/speakeasy-api/openapi/openapi/walk.go:704:					walkExample					66.7%
github.com/speakeasy-api/openapi/openapi/walk_components.go:12:				walkComponents					69.2%
github.com/speakeasy-api/openapi/openapi/walk_components.go:78:				walkComponentSchemas				100.0%
github.com/speakeasy-api/openapi/openapi/walk_components.go:98:				walkComponentResponses				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:118:			walkComponentParameters				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:138:			walkComponentExamples				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:158:			walkComponentRequestBodies			88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:178:			walkComponentHeaders				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:198:			walkComponentSecuritySchemes			100.0%
github.com/speakeasy-api/openapi/openapi/walk_components.go:218:			walkComponentLinks				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:238:			walkComponentCallbacks				88.9%
github.com/speakeasy-api/openapi/openapi/walk_components.go:258:			walkComponentPathItems				88.9%
github.com/speakeasy-api/openapi/openapi/walk_matching.go:152:				getMatchFunc					83.3%
github.com/speakeasy-api/openapi/openapi/walk_schema.go:11:				walkSchema					87.5%
github.com/speakeasy-api/openapi/openapi/walk_schema.go:31:				convertSchemaMatchFunc				100.0%
github.com/speakeasy-api/openapi/openapi/walk_schema.go:45:				convertSchemaLocation				100.0%
github.com/speakeasy-api/openapi/openapi/walk_schema.go:63:				walkExternalDocs				87.5%
github.com/speakeasy-api/openapi/openapi/walk_security.go:10:				walkSecurity					100.0%
github.com/speakeasy-api/openapi/openapi/walk_security.go:30:				walkSecurityRequirement				75.0%
github.com/speakeasy-api/openapi/openapi/walk_security.go:41:				walkReferencedSecurityScheme			75.0%
github.com/speakeasy-api/openapi/openapi/walk_security.go:61:				walkSecurityScheme				80.0%
github.com/speakeasy-api/openapi/openapi/walk_security.go:76:				walkOAuthFlows					71.4%
github.com/speakeasy-api/openapi/openapi/walk_security.go:109:				walkOAuthFlow					66.7%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:10:			walkTags					85.7%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:25:			walkTag						62.5%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:44:			walkServers					100.0%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:59:			walkServer					87.5%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:77:			walkVariables					100.0%
github.com/speakeasy-api/openapi/openapi/walk_tags_servers.go:91:			walkVariable					100.0%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:11:			walkWebhooks					88.9%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:31:			walkReferencedLinks				88.9%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:51:			walkReferencedLink				75.0%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:71:			walkLink					60.0%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:86:			walkReferencedCallbacks				88.9%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:106:		walkReferencedCallback				75.0%
github.com/speakeasy-api/openapi/openapi/walk_webhooks_callbacks.go:126:		walkCallback					66.7%
github.com/speakeasy-api/openapi/overlay/apply.go:14:					ApplyTo						87.5%
github.com/speakeasy-api/openapi/overlay/apply.go:31:					ApplyToStrict					96.2%
github.com/speakeasy-api/openapi/overlay/apply.go:74:					validateSelectorHasAtLeastOneTarget		88.9%
github.com/speakeasy-api/openapi/overlay/apply.go:93:					applyRemoveAction				90.0%
github.com/speakeasy-api/openapi/overlay/apply.go:114:					removeNode					91.7%
github.com/speakeasy-api/openapi/overlay/apply.go:140:					applyUpdateAction				78.6%
github.com/speakeasy-api/openapi/overlay/apply.go:167:					updateNode					100.0%
github.com/speakeasy-api/openapi/overlay/apply.go:171:					mergeNode					100.0%
github.com/speakeasy-api/openapi/overlay/apply.go:190:					mergeMappingNode				100.0%
github.com/speakeasy-api/openapi/overlay/apply.go:212:					mergeSequenceNode				100.0%
github.com/speakeasy-api/openapi/overlay/apply.go:217:					clone						87.5%
github.com/speakeasy-api/openapi/overlay/cmd/apply.go:20:				RunApply					0.0%
github.com/speakeasy-api/openapi/overlay/cmd/compare.go:21:				RunCompare					0.0%
github.com/speakeasy-api/openapi/overlay/cmd/root.go:5:					Apply						0.0%
github.com/speakeasy-api/openapi/overlay/cmd/shared.go:8:				Dief						0.0%
github.com/speakeasy-api/openapi/overlay/cmd/shared.go:13:				Die						0.0%
github.com/speakeasy-api/openapi/overlay/cmd/validate.go:19:				RunValidateOverlay				0.0%
github.com/speakeasy-api/openapi/overlay/compare.go:14:					Compare						75.0%
github.com/speakeasy-api/openapi/overlay/compare.go:37:					intPart						100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:43:					keyPart						100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:50:					String						66.7%
github.com/speakeasy-api/openapi/overlay/compare.go:57:					KeyString					0.0%
github.com/speakeasy-api/openapi/overlay/compare.go:66:					WithIndex					100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:70:					WithKey						100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:74:					ToJSONPath					100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:83:					Dir						100.0%
github.com/speakeasy-api/openapi/overlay/compare.go:87:					Base						0.0%
github.com/speakeasy-api/openapi/overlay/compare.go:91:					walkTreesAndCollectActions			88.9%
github.com/speakeasy-api/openapi/overlay/compare.go:156:				yamlEquals					85.7%
github.com/speakeasy-api/openapi/overlay/compare.go:178:				walkSequenceNode				93.8%
github.com/speakeasy-api/openapi/overlay/compare.go:207:				walkMappingNode					92.0%
github.com/speakeasy-api/openapi/overlay/jsonpath.go:20:				Query						75.0%
github.com/speakeasy-api/openapi/overlay/jsonpath.go:29:				NewPath						100.0%
github.com/speakeasy-api/openapi/overlay/jsonpath.go:42:				UsesRFC9535					100.0%
github.com/speakeasy-api/openapi/overlay/jsonpath.go:46:				mustExecute					100.0%
github.com/speakeasy-api/openapi/overlay/loader/overlay.go:11:				LoadOverlay					0.0%
github.com/speakeasy-api/openapi/overlay/loader/spec.go:17:				GetOverlayExtendsPath				0.0%
github.com/speakeasy-api/openapi/overlay/loader/spec.go:37:				LoadExtendsSpecification			0.0%
github.com/speakeasy-api/openapi/overlay/loader/spec.go:47:				LoadSpecification				0.0%
github.com/speakeasy-api/openapi/overlay/loader/spec.go:66:				LoadEitherSpecification				0.0%
github.com/speakeasy-api/openapi/overlay/parents.go:8:					newParentIndex					100.0%
github.com/speakeasy-api/openapi/overlay/parents.go:14:					indexNodeRecursively				100.0%
github.com/speakeasy-api/openapi/overlay/parents.go:21:					getParent					100.0%
github.com/speakeasy-api/openapi/overlay/parse.go:13:					Parse						72.7%
github.com/speakeasy-api/openapi/overlay/parse.go:34:					Format						0.0%
github.com/speakeasy-api/openapi/overlay/parse.go:52:					Format						0.0%
github.com/speakeasy-api/openapi/overlay/schema.go:33:					ToString					100.0%
github.com/speakeasy-api/openapi/overlay/utils.go:9:					NewTargetSelector				0.0%
github.com/speakeasy-api/openapi/overlay/utils.go:13:					NewUpdateAction					0.0%
github.com/speakeasy-api/openapi/overlay/validate.go:12:				Error						100.0%
github.com/speakeasy-api/openapi/overlay/validate.go:20:				Return						66.7%
github.com/speakeasy-api/openapi/overlay/validate.go:27:				Validate					57.9%
github.com/speakeasy-api/openapi/pointer/pointer.go:5:					From						0.0%
github.com/speakeasy-api/openapi/pointer/pointer.go:10:					Value						0.0%
github.com/speakeasy-api/openapi/references/factory_registration.go:8:			init						50.0%
github.com/speakeasy-api/openapi/references/reference.go:16:				GetURI						75.0%
github.com/speakeasy-api/openapi/references/reference.go:25:				HasJSONPointer					100.0%
github.com/speakeasy-api/openapi/references/reference.go:29:				GetJSONPointer					100.0%
github.com/speakeasy-api/openapi/references/reference.go:46:				Validate					100.0%
github.com/speakeasy-api/openapi/references/reference.go:73:				String						0.0%
github.com/speakeasy-api/openapi/references/resolution.go:45:				ResolveAbsoluteReference			100.0%
github.com/speakeasy-api/openapi/references/resolution.go:79:				Resolve						92.7%
github.com/speakeasy-api/openapi/references/resolution.go:202:				resolveAgainstURL				90.0%
github.com/speakeasy-api/openapi/references/resolution.go:223:				resolveAgainstFilePath				100.0%
github.com/speakeasy-api/openapi/references/resolution.go:233:				resolveAgainstDocument				80.0%
github.com/speakeasy-api/openapi/references/resolution.go:253:				resolveAgainstData				69.2%
github.com/speakeasy-api/openapi/references/resolution.go:301:				cast						33.3%
github.com/speakeasy-api/openapi/references/resolution_cache.go:26:			ResolveAbsoluteReferenceCached			100.0%
github.com/speakeasy-api/openapi/references/resolution_cache.go:33:			Resolve						90.0%
github.com/speakeasy-api/openapi/references/resolution_cache.go:64:			resolveAbsoluteReferenceUncached		90.5%
github.com/speakeasy-api/openapi/references/resolution_cache.go:115:			Clear						100.0%
github.com/speakeasy-api/openapi/references/resolution_cache.go:128:			GetStats					100.0%
github.com/speakeasy-api/openapi/references/resolution_cache.go:138:			GetRefCacheStats				100.0%
github.com/speakeasy-api/openapi/references/resolution_cache.go:143:			ClearGlobalRefCache				100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:41:				NewElem						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:49:				GetKey						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:58:				GetValue					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:75:				New						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:80:				NewWithCapacity					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:84:				newMap						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:117:				Init						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:125:				IsInitialized					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:133:				Len						66.7%
github.com/speakeasy-api/openapi/sequencedmap/map.go:141:				Set						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:159:				Add						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:182:				SetAny						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:195:				AddAny						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:208:				GetAny						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:218:				DeleteAny					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:228:				KeysAny						88.9%
github.com/speakeasy-api/openapi/sequencedmap/map.go:252:				SetUntyped					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:271:				Get						85.7%
github.com/speakeasy-api/openapi/sequencedmap/map.go:288:				GetUntyped					90.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:308:				GetOrZero					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:323:				Has						75.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:333:				Delete						85.7%
github.com/speakeasy-api/openapi/sequencedmap/map.go:350:				First						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:359:				Last						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:368:				At						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:382:				All						88.9%
github.com/speakeasy-api/openapi/sequencedmap/map.go:407:				AllOrdered					96.8%
github.com/speakeasy-api/openapi/sequencedmap/map.go:479:				AllUntyped					88.9%
github.com/speakeasy-api/openapi/sequencedmap/map.go:502:				Keys						77.8%
github.com/speakeasy-api/openapi/sequencedmap/map.go:525:				Values						77.8%
github.com/speakeasy-api/openapi/sequencedmap/map.go:547:				GetKeyType					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:553:				GetValueType					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:560:				NavigateWithKey					93.8%
github.com/speakeasy-api/openapi/sequencedmap/map.go:592:				MarshalJSON					89.5%
github.com/speakeasy-api/openapi/sequencedmap/map.go:628:				UnmarshalYAML					89.5%
github.com/speakeasy-api/openapi/sequencedmap/map.go:673:				MarshalYAML					83.3%
github.com/speakeasy-api/openapi/sequencedmap/map.go:695:				compareKeys					100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:706:				IsEqual						100.0%
github.com/speakeasy-api/openapi/sequencedmap/map.go:747:				IsEqualFunc					94.7%
github.com/speakeasy-api/openapi/sequencedmap/utils.go:6:				Len						100.0%
github.com/speakeasy-api/openapi/sequencedmap/utils.go:14:				From						100.0%
github.com/speakeasy-api/openapi/system/filesystem.go:25:				Open						0.0%
github.com/speakeasy-api/openapi/system/filesystem.go:29:				WriteFile					0.0%
github.com/speakeasy-api/openapi/system/filesystem.go:38:				MkdirAll					0.0%
github.com/speakeasy-api/openapi/validation/errors.go:18:				Error						100.0%
github.com/speakeasy-api/openapi/validation/errors.go:22:				Unwrap						100.0%
github.com/speakeasy-api/openapi/validation/errors.go:26:				GetLineNumber					100.0%
github.com/speakeasy-api/openapi/validation/errors.go:33:				GetColumnNumber					100.0%
github.com/speakeasy-api/openapi/validation/errors.go:56:				NewValidationError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:67:				NewValueError					100.0%
github.com/speakeasy-api/openapi/validation/errors.go:85:				NewSliceError					100.0%
github.com/speakeasy-api/openapi/validation/errors.go:103:				NewMapKeyError					100.0%
github.com/speakeasy-api/openapi/validation/errors.go:121:				NewMapValueError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:145:				NewTypeMismatchError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:155:				Error						100.0%
github.com/speakeasy-api/openapi/validation/errors.go:165:				NewMissingFieldError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:171:				Error						100.0%
github.com/speakeasy-api/openapi/validation/errors.go:181:				NewMissingValueError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:187:				Error						100.0%
github.com/speakeasy-api/openapi/validation/errors.go:197:				NewValueValidationError				100.0%
github.com/speakeasy-api/openapi/validation/errors.go:207:				Error						100.0%
github.com/speakeasy-api/openapi/validation/options.go:13:				WithContextObject				100.0%
github.com/speakeasy-api/openapi/validation/options.go:19:				NewOptions					100.0%
github.com/speakeasy-api/openapi/validation/options.go:29:				GetContextObject				100.0%
github.com/speakeasy-api/openapi/validation/utils.go:9:					SortValidationErrors				91.7%
github.com/speakeasy-api/openapi/values/core/eithervalue.go:28:				Unmarshal					72.7%
github.com/speakeasy-api/openapi/values/core/eithervalue.go:94:				hasTypeMismatchErrors				90.9%
github.com/speakeasy-api/openapi/values/core/eithervalue.go:120:			SyncChanges					91.9%
github.com/speakeasy-api/openapi/values/core/eithervalue.go:191:			GetNavigableNode				100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:29:				IsLeft						100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:40:				GetLeft						100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:52:				LeftValue					100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:63:				IsRight						100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:74:				GetRight					100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:86:				RightValue					100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:95:				PopulateWithParent				69.2%
github.com/speakeasy-api/openapi/values/eithervalue.go:125:				GetNavigableNode				100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:138:				IsEqual						100.0%
github.com/speakeasy-api/openapi/values/eithervalue.go:161:				equalWithIsEqualMethod				72.2%
github.com/speakeasy-api/openapi/values/eithervalue.go:201:				isEmptyCollection				81.8%
github.com/speakeasy-api/openapi/walk/locations.go:30:					ToJSONPointer					100.0%
github.com/speakeasy-api/openapi/walk/set.go:16:					SetAtLocation					91.7%
github.com/speakeasy-api/openapi/walk/set.go:39:					setAtMap					100.0%
github.com/speakeasy-api/openapi/walk/set.go:49:					setAtSlice					100.0%
github.com/speakeasy-api/openapi/walk/set.go:59:					setAtStruct					88.9%
github.com/speakeasy-api/openapi/walk/set.go:82:					setAtField					83.6%
github.com/speakeasy-api/openapi/walk/set.go:190:					setAtSequencedMap				75.0%
github.com/speakeasy-api/openapi/yml/config.go:12:					String						0.0%
github.com/speakeasy-api/openapi/yml/config.go:40:					ContextWithConfig				100.0%
github.com/speakeasy-api/openapi/yml/config.go:48:					GetConfigFromContext				77.8%
github.com/speakeasy-api/openapi/yml/config.go:64:					GetConfigFromDoc				100.0%
github.com/speakeasy-api/openapi/yml/config.go:79:					inspectData					100.0%
github.com/speakeasy-api/openapi/yml/config.go:116:					getGlobalStringStyle				91.7%
github.com/speakeasy-api/openapi/yml/nodekind.go:8:					NodeKindToString				100.0%
github.com/speakeasy-api/openapi/yml/walk.go:21:					Walk						100.0%
github.com/speakeasy-api/openapi/yml/walk.go:33:					walkNode					100.0%
github.com/speakeasy-api/openapi/yml/walk.go:56:					walkDocumentNode				75.0%
github.com/speakeasy-api/openapi/yml/walk.go:66:					walkMappingNode					87.5%
github.com/speakeasy-api/openapi/yml/walk.go:83:					walkSequenceNode				75.0%
github.com/speakeasy-api/openapi/yml/walk.go:93:					walkAliasNode					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:10:						CreateOrUpdateKeyNode				87.5%
github.com/speakeasy-api/openapi/yml/yml.go:31:						CreateOrUpdateScalarNode			91.7%
github.com/speakeasy-api/openapi/yml/yml.go:54:						CreateOrUpdateMapNodeElement			85.7%
github.com/speakeasy-api/openapi/yml/yml.go:84:						CreateStringNode				100.0%
github.com/speakeasy-api/openapi/yml/yml.go:92:						CreateIntNode					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:100:					CreateFloatNode					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:108:					CreateBoolNode					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:116:					CreateMapNode					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:124:					DeleteMapNodeElement				90.0%
github.com/speakeasy-api/openapi/yml/yml.go:144:					CreateOrUpdateSliceNode				100.0%
github.com/speakeasy-api/openapi/yml/yml.go:158:					GetMapElementNodes				91.7%
github.com/speakeasy-api/openapi/yml/yml.go:183:					ResolveAlias					100.0%
github.com/speakeasy-api/openapi/yml/yml.go:198:					EqualNodes					86.4%
total:											(statements)					68.3%
  • 🧪 All tests passed
  • 📈 Full coverage report available in workflow artifacts

Generated by GitHub Actions

@TristanSpeakEasy TristanSpeakEasy merged commit d2f8ee3 into main Sep 30, 2025
10 checks passed
@TristanSpeakEasy TristanSpeakEasy deleted the fix/eithervalue-error-handling branch September 30, 2025 03:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working marshalling Related to data marshalling/unmarshalling tests Test-related changes and improvements validation Related to validation logic

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants