{"record":{"id":"1e2693c1c57748f2","repo":"hyperledger/fabric","slug":"admin-d-is-invalid-s-s","errorCode":null,"errorMessage":"admin %d is invalid [%s,%s]","messagePattern":"admin (.+?) is invalid \\[(.+?),(.+?)\\]","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"msp/mspimplsetup.go","lineNumber":716,"sourceCode":"\t\t}\n\t}\n\n\treturn nil\n}\n\nfunc (msp *bccspmsp) postSetupV142(conf *m.FabricMSPConfig) error {\n\t// Check for OU enforcement\n\tif !msp.ouEnforcement {\n\t\t// No enforcement required. Call post setup as per V1\n\t\treturn msp.postSetupV1(conf)\n\t}\n\n\t// Check that admins are clients or admins\n\tfor i, admin := range msp.admins {\n\t\terr1 := msp.hasOURole(admin, m.MSPRole_CLIENT)\n\t\terr2 := msp.hasOURole(admin, m.MSPRole_ADMIN)\n\t\tif err1 != nil && err2 != nil {\n\t\t\treturn errors.Errorf(\"admin %d is invalid [%s,%s]\", i, err1, err2)\n\t\t}\n\t}\n\n\treturn nil\n}\n","sourceCodeStart":698,"sourceCodeEnd":722,"githubUrl":"https://github.com/hyperledger/fabric/blob/2736b63f8fd5932511d56fe68b7039d15977f7f6/msp/mspimplsetup.go#L698-L722","documentation":"postSetupV142 guard: with NodeOU enforcement enabled, admin certificate %d failed both hasOURole checks — it carries neither the client OU nor the admin OU defined in the MSP config. Both role-check errors are included so the misconfiguration (bad OU config or wrong admin cert) can be diagnosed.","triggerScenarios":"Thrown at msp/mspimplsetup.go:716 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Reissue the admin certificate with the client or admin OU defined in FabricNodeOus","Correct the Client/Admin OU identifiers in the MSP config to match the admin certs","Remove the offending admin from the admins list"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2736b63f8fd5932511d56fe68b7039d15977f7f6","analyzedAt":"2026-09-04T08:52:36.465Z","contentChangedAt":"2026-09-04T08:52:36.465Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}