{"record":{"id":"ae404d861ef618ec","repo":"grafana/k6","slug":"key-s-handle-isn-t-a-byte-slice","errorCode":null,"errorMessage":"key's handle isn't a byte slice","messagePattern":"key's handle isn't a byte slice","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/js/modules/k6/webcrypto/jwk.go","lineNumber":72,"sourceCode":"\t}\n\n\tif err := sk.validate(); err != nil {\n\t\treturn nil, fmt.Errorf(\"invalid symmetric JWK: %w\", err)\n\t}\n\n\tskBytes, err := base64URLDecode(sk.K)\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"failed to decode symmetric key: %w\", err)\n\t}\n\n\treturn skBytes, nil\n}\n\n// exportSymmetricJWK exports a symmetric key as a map of JWK key parameters.\nfunc exportSymmetricJWK(key *CryptoKey) (*JsonWebKey, error) {\n\trawKey, ok := key.handle.([]byte)\n\tif !ok {\n\t\treturn nil, errors.New(\"key's handle isn't a byte slice\")\n\t}\n\n\t// wrap result into the object that is expected to be returned\n\texported := &JsonWebKey{}\n\n\texported.Set(\"k\", base64URLEncode(rawKey))\n\texported.Set(\"kty\", JWKOctKeyType)\n\texported.Set(\"ext\", key.Extractable)\n\texported.Set(\"key_ops\", key.Usages)\n\n\talgV, err := extractAlg(key.Algorithm, len(rawKey))\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"failed to extract algorithm: %w\", err)\n\t}\n\texported.Set(\"alg\", algV)\n\n\treturn exported, nil\n}","sourceCodeStart":54,"sourceCodeEnd":90,"githubUrl":"https://github.com/grafana/k6/blob/93accf6570dcd306ca5e99cc44c393ee3797761b/internal/js/modules/k6/webcrypto/jwk.go#L54-L90","documentation":"Error \"key's handle isn't a byte slice\" thrown in grafana/k6.","triggerScenarios":"Thrown at internal/js/modules/k6/webcrypto/jwk.go:72 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":"93accf6570dcd306ca5e99cc44c393ee3797761b","analyzedAt":"2026-08-15T21:23:27.118Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}