Skip to content

Commit 461082f

Browse files
committed
fix: add default cases to switch statements for model format handling
1 parent d1b12a8 commit 461082f

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

pkg/distribution/internal/partial/partial.go

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,6 @@ func matchesMediaType(layerMT, targetMT oci.MediaType, modelFormat string) bool
238238
}
239239

240240
// Native ModelPack support: check format-specific ModelPack types
241-
//nolint:exhaustive // Only GGUF and Safetensors need cross-format matching
242241
switch targetMT {
243242
case types.MediaTypeGGUF:
244243
if layerMT == modelpack.MediaTypeWeightGGUF {
@@ -248,6 +247,15 @@ func matchesMediaType(layerMT, targetMT oci.MediaType, modelFormat string) bool
248247
if layerMT == modelpack.MediaTypeWeightSafetensors {
249248
return true
250249
}
250+
case types.MediaTypeDDUF, types.MediaTypeLicense, types.MediaTypeMultimodalProjector,
251+
types.MediaTypeChatTemplate, types.MediaTypeModelFile, types.MediaTypeVLLMConfigArchive,
252+
types.MediaTypeDirTar, types.MediaTypeModelConfigV01, types.MediaTypeModelConfigV02,
253+
oci.OCIManifestSchema1, oci.OCIImageIndex, oci.OCIConfigJSON,
254+
oci.OCILayer, oci.OCILayerGzip, oci.OCILayerZstd,
255+
oci.OCIContentDescriptor, oci.OCIArtifactManifest, oci.OCIEmptyJSON,
256+
oci.DockerManifestSchema2, oci.DockerManifestList, oci.DockerConfigJSON,
257+
oci.DockerLayer, oci.DockerForeignLayer, oci.DockerUncompressedLayer:
258+
// No format-specific ModelPack mapping for these media types
251259
}
252260

253261
// ModelPack model-spec support: format-agnostic weight types (.raw, .tar, etc.)
@@ -256,14 +264,22 @@ func matchesMediaType(layerMT, targetMT oci.MediaType, modelFormat string) bool
256264
// in their media type and are handled above; applying this fallback to them would
257265
// cause cross-format false positives (e.g., safetensors layer matching as GGUF).
258266
if modelFormat != "" && modelpack.IsModelPackGenericWeightMediaType(string(layerMT)) {
259-
//nolint:exhaustive // Only weight formats need cross-format matching
260267
switch targetMT {
261268
case types.MediaTypeGGUF:
262269
return modelFormat == string(types.FormatGGUF)
263270
case types.MediaTypeSafetensors:
264271
return modelFormat == string(types.FormatSafetensors)
265272
case types.MediaTypeDDUF:
266273
return modelFormat == string(types.FormatDDUF) || modelFormat == string(types.FormatDiffusers) //nolint:staticcheck // FormatDiffusers kept for backward compatibility
274+
case types.MediaTypeLicense, types.MediaTypeMultimodalProjector,
275+
types.MediaTypeChatTemplate, types.MediaTypeModelFile, types.MediaTypeVLLMConfigArchive,
276+
types.MediaTypeDirTar, types.MediaTypeModelConfigV01, types.MediaTypeModelConfigV02,
277+
oci.OCIManifestSchema1, oci.OCIImageIndex, oci.OCIConfigJSON,
278+
oci.OCILayer, oci.OCILayerGzip, oci.OCILayerZstd,
279+
oci.OCIContentDescriptor, oci.OCIArtifactManifest, oci.OCIEmptyJSON,
280+
oci.DockerManifestSchema2, oci.DockerManifestList, oci.DockerConfigJSON,
281+
oci.DockerLayer, oci.DockerForeignLayer, oci.DockerUncompressedLayer:
282+
// No generic weight resolution for these media types
267283
}
268284
}
269285

0 commit comments

Comments
 (0)