{"record":{"id":"76ebe6e15a904df3","repo":"goharbor/harbor","slug":"expect-filter-value-to-be-string-but-got-v","errorCode":null,"errorMessage":"expect filter value to be string, but got: %v","messagePattern":"expect filter value to be string, but got: (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/pkg/reg/adapter/dockerhub/adapter.go","lineNumber":473,"sourceCode":"\n\ttags := &TagsResp{}\n\terr = json.Unmarshal(body, tags)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"unmarshal tags list %s error: %v\", string(body), err)\n\t}\n\n\treturn tags, nil\n}\n\n// getStringFilterValue gets specific type filter value from filters list.\nfunc (a *adapter) getStringFilterValue(filterType string, filters []*model.Filter) (string, error) {\n\tfor _, f := range filters {\n\t\tif f.Type == filterType {\n\t\t\tv, ok := f.Value.(string)\n\t\t\tif !ok {\n\t\t\t\tmsg := fmt.Sprintf(\"expect filter value to be string, but got: %v\", f.Value)\n\t\t\t\tlog.Error(msg)\n\t\t\t\treturn \"\", errors.New(msg)\n\t\t\t}\n\t\t\treturn v, nil\n\t\t}\n\t}\n\treturn \"\", nil\n}\n","sourceCodeStart":455,"sourceCodeEnd":480,"githubUrl":"https://github.com/goharbor/harbor/blob/7b2fd08cc568955cca339afeefab27372840d936/src/pkg/reg/adapter/dockerhub/adapter.go#L455-L480","documentation":"Error \"expect filter value to be string, but got: %v\" thrown in goharbor/harbor.","triggerScenarios":"Thrown at src/pkg/reg/adapter/dockerhub/adapter.go:473 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"7b2fd08cc568955cca339afeefab27372840d936","analyzedAt":"2026-08-16T00:00:10.961Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}