A modern load testing tool, using Go and JavaScript
This report summarizes scanner evidence for grafana/k6, a Go project with 32,087 GitHub stars. SynthScan examined 263,826 lines of code across 1277 source files, recording 399 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 2.2 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 277 finding(s).
Are imports declared and package/API names verified? 97 finding(s).
Are wrappers, guards, and repeated structures necessary? 61 finding(s).
Which changes need focused human review? 399 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 399 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packaging/bin/generate_index.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | packaging/bin/create-rpm-repo.sh | 1 | #!/bin/bash | COMMENT |
| LOW | packaging/bin/entrypoint.sh | 1 | #!/bin/bash | COMMENT |
| LOW | packaging/bin/create-deb-repo.sh | 1 | #!/bin/bash | COMMENT |
| LOW | metrics/tags.go | 21 | // values for map indexes and caching. | COMMENT |
| LOW | metrics/tags.go | 41 | // existing TagSet except the one with the given key. | COMMENT |
| LOW | metrics/tags.go | 121 | json.Marshaler | COMMENT |
| LOW | metrics/package.go | 1 | // Package metrics contains various k6 components that deal with metrics and | COMMENT |
| LOW | metrics/thresholds_parser.go | 21 | // in the event it is a percentile. For instance: an expression of the form p(99.9) < 200, | COMMENT |
| LOW | metrics/thresholds_parser.go | 41 | // expression ("p(somefloatingpointvalue)"), we need to handle this | COMMENT |
| LOW | metrics/thresholds_parser.go | 61 | // aggregation_method -> trend | rate | gauge | counter | COMMENT |
| LOW | cmd/state/doc.go | 1 | // Package state contains the types and functionality used for keeping track of | COMMENT |
| LOW | cmd/state/state.go | 61 | // process-external state like CLI arguments, env vars, standard input, output | COMMENT |
| LOW | js/promises/promises.go | 1 | // Package promises provides helpers for working with promises in k6. | COMMENT |
| LOW | js/common/initenv.go | 21 | // GetAbsFilePath should be used to access the FileSystems, since afero has a | COMMENT |
| LOW | js/modules/modules.go | 41 | // VU gives access to the currently executing VU to a module Instance | COMMENT |
| LOW | js/modules/k6/html/gen/gen_elements.go | 101 | // stringTemplate: doesn't use any TemplateArgs | COMMENT |
| LOW | js/modules/k6/http/request.go | 181 | // application/x-www-form-urlencoded string representation. | COMMENT |
| LOW | release notes/v0.55.0.md | 141 | // You can call metric.tag multiple times within the callback function. | COMMENT |
| LOW | secretsource/doc.go | 1 | // Package secretsource is a package to provide secret source interface and common functionality | COMMENT |
| LOW | internal/cmd/config.go | 161 | // Permissions for the on-disk config file and its containing directory. | COMMENT |
| LOW | internal/cmd/outputs_cloud.go | 201 | // applyExternalProvisioningCreds handles the externally-provisioned | COMMENT |
| LOW | internal/cmd/test_load.go | 321 | // because they are already built into the binary. Step 1 misses those. | COMMENT |
| LOW | internal/cmd/subcommand.go | 21 | // | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_run_test.go | 41 | // cloud: { | COMMENT |
| LOW | …ernal/cmd/tests/cmd_cloud_run_push_credentials_test.go | 161 | // Record the provisioning-mode push (/v1/metrics) and any stray push | COMMENT |
| LOW | …ernal/cmd/tests/cmd_cloud_run_push_credentials_test.go | 181 | // and token via K6_CLOUD_METRICS_PUSH_URL and K6_CLOUD_TEST_RUN_TOKEN, | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_upload_test.go | 61 | assert.Contains(t, stdout, `output: https://stack.grafana.com/a/k6-app/tests/456`) | COMMENT |
| LOW | internal/cmd/tests/doc.go | 1 | // Package tests contains integration tests that run k6 commands, and interact | COMMENT |
| LOW | internal/cmd/tests/cmd_run_test.go | 2461 | name: "browser option not set", | COMMENT |
| LOW | internal/ds/histogram/hdr.go | 21 | // Hdr represents a distribution of metrics samples' values as histogram. | COMMENT |
| LOW | internal/ds/histogram/hdr.go | 121 | // distribution (2^7=128 primary buckets of which each can be further | COMMENT |
| LOW | internal/ds/histogram/hdr.go | 141 | // the "sub" bucket within that major bucket. This system provides us with a fine level | COMMENT |
| LOW | internal/js/summary.go | 21 | var jslibSummaryCode string | COMMENT |
| LOW | internal/js/eventloop/eventloop.go | 61 | // asynchronous work off the main thread and that you may need to execute some | COMMENT |
| LOW | internal/js/eventloop/eventloop.go | 81 | // scenario has ended). Any error returned by any callback on the main thread | COMMENT |
| LOW | internal/js/eventloop/eventloop.go | 101 | // resolve(result) | COMMENT |
| LOW | …s/modules/k6/experimental/streams/underlying_source.go | 21 | // PullFunc is a function that is called whenever the stream's internal queue of chunks | COMMENT |
| LOW | …s/modules/k6/experimental/streams/underlying_source.go | 41 | Cancel sobek.Value `json:"cancel"` | COMMENT |
| LOW | …rimental/streams/writable_stream_default_controller.go | 41 | stream *WritableStream | COMMENT |
| LOW | …rimental/streams/writable_stream_default_controller.go | 421 | COMMENT | |
| LOW | …ules/k6/experimental/streams/readable_stream_reader.go | 21 | // ReadableStreamGenericReader defines common internal getters/setters | COMMENT |
| LOW | …rimental/streams/readable_stream_default_controller.go | 361 | // resetQueue resets the controller's internal queue. | COMMENT |
| LOW | …js/modules/k6/experimental/streams/writable_streams.go | 81 | // | COMMENT |
| LOW | …experimental/streams/writable_stream_default_writer.go | 441 | if state == WritableStreamStateClosed { | COMMENT |
| LOW | …/js/modules/k6/experimental/streams/underlying_sink.go | 1 | package streams | COMMENT |
| LOW | …/js/modules/k6/experimental/streams/underlying_sink.go | 21 | COMMENT | |
| LOW | …/js/modules/k6/experimental/streams/underlying_sink.go | 41 | // rejected promise. | COMMENT |
| LOW | internal/js/modules/k6/experimental/streams/errors.go | 21 | throw(rt, newError(kind, message)) | COMMENT |
| LOW | internal/js/modules/k6/experimental/csv/reader.go | 21 | // options holds the reader's options. | COMMENT |
| LOW | internal/js/modules/k6/experimental/csv/module.go | 301 | ToLine null.Int `js:"toLine"` | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/cache_test.go | 61 | // | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/cache.go | 21 | // already caches the content of the files it opens. However, the current implementation of | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/cache.go | 41 | type cache struct { | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/cache.go | 61 | // If the file was previously "opened" (and thus cached), it | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/module.go | 181 | type File struct { | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/errors.go | 41 | COMMENT | |
| LOW | internal/js/modules/k6/browser/k6ext/k6test/vu.go | 61 | } | COMMENT |
| LOW | internal/js/modules/k6/browser/trace/trace.go | 81 | // TraceNavigation is only to be used when a frame has navigated. | COMMENT |
| LOW | …nal/js/modules/k6/browser/tests/lifecycle_wait_test.go | 21 | // Remove the promises. We don't need them anymore. | COMMENT |
| 153 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | js/modules/k6/html/elements_gen_test.go | 171 | {"input7", "placeholder", "help text"}, | CODE |
| LOW⚡ | js/modules/k6/html/serialize_test.go | 16 | <h1 id="top" data-test="dataval" data-num-a="123" data-num-b="1.5" data-not-num-a="1.50" data-not-num-b="1.1e02">Lorem | CODE |
| LOW⚡ | js/modules/k6/html/serialize_test.go | 17 | <p data-test-b="true" data-opts='{"id":101}' data-test-empty="">Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW⚡ | js/modules/k6/html/serialize_test.go | 17 | <p data-test-b="true" data-opts='{"id":101}' data-test-empty="">Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 36 | <textarea id="textarea" name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 36 | <textarea id="textarea" name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 86 | assert.Equal(t, "Lorem ipsum dolor sit amet", arr[6].Value.String()) | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 86 | assert.Equal(t, "Lorem ipsum dolor sit amet", arr[6].Value.String()) | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 150 | assert.Equal(t, "Lorem ipsum dolor sit amet", obj["textarea"].String()) | CODE |
| LOW | js/modules/k6/html/serialize_test.go | 150 | assert.Equal(t, "Lorem ipsum dolor sit amet", obj["textarea"].String()) | CODE |
| LOW | js/modules/k6/html/elements_gen.go | 586 | return i.attrAsString("placeholder") | CODE |
| LOW | js/modules/k6/html/elements_gen.go | 1035 | return t.attrAsString("placeholder") | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 23 | <h1 id="top" data-test="dataval" data-num-a="123" data-num-b="1.5" data-not-num-a="1.50" data-not-num-b="1.1e02">Lorem | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 25 | <p data-test-b="true" data-opts='{"id":101}' data-test-empty="">Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 25 | <p data-test-b="true" data-opts='{"id":101}' data-test-empty="">Lorem ipsum dolor sit amet, consectetur adipiscing elit | CODE |
| LOW | js/modules/k6/html/html_test.go | 43 | <textarea id="textarea" name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/html/html_test.go | 43 | <textarea id="textarea" name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/html/html_test.go | 128 | assert.Equal(t, "Lorem ipsum", sel.Text()) | CODE |
| LOW | js/modules/k6/html/html_test.go | 142 | assert.Equal(t, "Lorem ipsum dolor", text[:17]) | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 181 | assert.Equal(t, "Lorem ipsumThis is the footer.", sel.Text()) | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 189 | assert.Equal(t, "Lorem ipsumThis is the footer.", sel.Text()) | CODE |
| LOW⚡ | js/modules/k6/html/html_test.go | 199 | assert.Equal(t, "Lorem ipsum", v.Export()) | CODE |
| LOW | js/modules/k6/html/html_test.go | 236 | assert.Equal(t, "Lorem ipsum", v.Export()) | CODE |
| LOW | js/modules/k6/html/html_test.go | 279 | assert.Equal(t, "Lorem ipsum dolor sit amet", v.Export()) | CODE |
| LOW | js/modules/k6/html/html_test.go | 279 | assert.Equal(t, "Lorem ipsum dolor sit amet", v.Export()) | CODE |
| LOW | js/modules/k6/html/html_test.go | 356 | v, err := rt.RunString(`doc.find("h1").is(function(idx, val){ return val.text() == "Lorem ipsum" })`) | CODE |
| LOW | js/modules/k6/html/html_test.go | 838 | assert.Contains(t, sel.Text(), "Lorem ipsum dolor") | CODE |
| LOW | js/modules/k6/html/html_test.go | 869 | assert.Contains(t, elem.InnerHTML().Export(), "Lorem ipsum dolor sit amet") | CODE |
| LOW | js/modules/k6/html/html_test.go | 869 | assert.Contains(t, elem.InnerHTML().Export(), "Lorem ipsum dolor sit amet") | CODE |
| LOW | js/modules/k6/html/html_test.go | 892 | assert.Contains(t, arr[0].sel.Text(), "Lorem ipsum dolor sit amet") | CODE |
| LOW | js/modules/k6/html/html_test.go | 892 | assert.Contains(t, arr[0].sel.Text(), "Lorem ipsum dolor sit amet") | CODE |
| LOW⚡ | js/modules/k6/html/element_test.go | 16 | <h1 id="top">Lorem ipsum</h1> | CODE |
| LOW⚡ | js/modules/k6/html/element_test.go | 18 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> | CODE |
| LOW⚡ | js/modules/k6/html/element_test.go | 18 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> | CODE |
| LOW⚡ | js/modules/k6/html/element_test.go | 19 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> | CODE |
| LOW⚡ | js/modules/k6/html/element_test.go | 19 | <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p> | CODE |
| LOW | js/modules/k6/html/element_test.go | 60 | assert.Equal(t, "Lorem ipsum", v.String()) | CODE |
| LOW | js/modules/k6/html/gen/gen_elements.go | 195 | {"InputElement", "Placeholder", "placeholder", stringTemplate, nil}, | CODE |
| LOW | js/modules/k6/html/gen/gen_elements.go | 286 | {"TextAreaElement", "Placeholder", "placeholder", stringTemplate, nil}, | CODE |
| LOW | js/modules/k6/http/request_test.go | 1481 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. | CODE |
| LOW | js/modules/k6/http/request_test.go | 1481 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. | CODE |
| LOW | js/modules/k6/http/response_test.go | 34 | <textarea name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/http/response_test.go | 34 | <textarea name="textarea" multiple>Lorem ipsum dolor sit amet</textarea> | CODE |
| LOW | js/modules/k6/http/response_test.go | 388 | data.textarea[0] !== "Lorem ipsum dolor sit amet" | CODE |
| LOW | js/modules/k6/http/response_test.go | 388 | data.textarea[0] !== "Lorem ipsum dolor sit amet" | CODE |
| LOW | release notes/v1.3.0.md | 165 | await frame.getByLabel('Email').fill('user@example.com'); | CODE |
| LOW | release notes/v1.3.0.md | 174 | await paymentFrame.getByLabel('Cardholder name').fill('John Doe'); | CODE |
| LOW | release notes/v1.6.0.md | 314 | username: 'user@example.com', | CODE |
| LOW | internal/cmd/tests/cmd_cloud_run_test.go | 44 | // note: "lorem ipsum", | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_run_test.go | 52 | // "note": "lorem ipsum", | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_run_test.go | 92 | require.Equal(t, "lorem ipsum", metadata.Options.Cloud.Note) | CODE |
| LOW | internal/cmd/tests/cmd_cloud_upload_test.go | 71 | // note: "lorem ipsum", | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_upload_test.go | 79 | // "note": "lorem ipsum", | COMMENT |
| LOW | internal/cmd/tests/cmd_cloud_upload_test.go | 119 | require.Equal(t, "lorem ipsum", metadata.Options.Cloud.Note) | CODE |
| LOW | internal/cmd/tests/cmd_cloud_test.go | 223 | v6test.AbortedByUserProgress("user@example.com")) | CODE |
| LOW | internal/js/modules/k6/grpc/stream_test.go | 135 | return status.Error(codes.Internal, "lorem ipsum") | CODE |
| LOW | internal/js/modules/k6/grpc/stream_test.go | 181 | "Code: 13 Message: lorem ipsum", | CODE |
| LOW | internal/js/modules/k6/websockets/websockets_test.go | 1021 | throw new Error("lorem ipsum") | CODE |
| LOW | internal/js/modules/k6/websockets/websockets_test.go | 1025 | assert.Equal(t, "Error: lorem ipsum at <eval>:5:10(7)", err.Error()) | CODE |
| LOW | internal/js/modules/k6/websockets/websockets_test.go | 1398 | const text string = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sed pharetra sapien. Nunc laoree | CODE |
| 29 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | internal/js/runner_aia_test.go | 110 | // ── 1. Build a three-level certificate chain ──────────────────────────── | COMMENT |
| MEDIUM | internal/js/runner_aia_test.go | 140 | // ── 3. Build intermediate CA and leaf with AIA URL ──────────────────────── | COMMENT |
| MEDIUM | internal/js/runner_aia_test.go | 165 | // ── 5. Table-driven sub-tests ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 87 | // ┌───────────────────────────────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 91 | // └───────────────────────────────────────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 92 | // ┌───────────────────────────┐ │ ▲ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 95 | // │ them on incoming queue of │ ┌───────────────────────────────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 96 | // │ target session, as ├─────────────■ │ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 99 | // │ without a session ID are │ └───────────────────────────────────────────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 102 | // └───────────────────────────┘ ▼ │ ▼ │ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 103 | // ┌───────────────────────────┐ ┌────────────────────┐ ┌────────────────────┐ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 104 | // │ Handles CDP messages on ├─────────────■ │ │ │ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 107 | // │ channel of WS connection. │ └────────────────────┘ └────────────────────┘ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 108 | // └───────────────────────────┘ │ ▲ │ ▲ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 112 | // ┌───────────────────────────┐ ┌────────────────────┐ ┌────────────────────┐ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 113 | // │Registers with session as a├─────────────■ │ │ │ | COMMENT |
| MEDIUM⚡ | internal/js/modules/k6/browser/common/connection.go | 116 | // └───────────────────────────┘ └────────────────────┘ └────────────────────┘ | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 28 | # ────────────────────────────────────────────── | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 30 | # ────────────────────────────────────────────── | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 83 | # ────────────────────────────────────────────── | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 85 | # ────────────────────────────────────────────── | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 112 | # ────────────────────────────────────────────── | COMMENT |
| MEDIUM | .github/scripts/check-feature-briefs.sh | 114 | # ────────────────────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | internal/js/runner.go | 176 | dialer.LocalAddr = &net.TCPAddr{IP: r.Bundle.Options.LocalIPs.Pool.GetIP(ipIndex)} | CODE |
| CRITICAL | internal/js/runner.go | 915 | durationDiff := u.Runner.Bundle.Options.MinIterationDuration.TimeDuration() - totalTime | CODE |
| CRITICAL | internal/js/runner.go | 945 | if !u.Runner.Bundle.Options.NoCookiesReset.ValueOrZero() { | CODE |
| CRITICAL | .github/workflows/xk6-tests/xk6-test.js | 14 | 'summary-results.txt': data.metrics.foos.values.count.toString(), | CODE |
| CRITICAL | lib/executor/base_executor.go | 78 | if bs.executionState.Test.Options.SystemTags.Has(metrics.TagScenario) { | CODE |
| CRITICAL | lib/executor/base_executor.go | 81 | if vuID != nil && bs.executionState.Test.Options.SystemTags.Has(metrics.TagVU) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | js/modules/k6/http/request_test.go | 2152 | function handleResponseEncodingError (encoding) { | CODE |
| LOW | internal/js/summary-legacy.js | 173 | function toFixedNoTrailingZerosTrunc(val, prec) { | CODE |
| LOW | internal/js/summary-legacy.js | 235 | function nonTrendMetricValueForSum(metric, timeUnit) { | CODE |
| LOW | internal/js/summary.js | 966 | function renderMetricNameForThresholds( | CODE |
| LOW | internal/js/summary.js | 992 | function renderMetricValueForThresholds( | CODE |
| LOW | internal/js/summary.js | 1375 | function toFixedNoTrailingZerosTrunc(val, prec) { | CODE |
| LOW | internal/js/summary.js | 1448 | function nonTrendMetricValueForSum(metric, timeUnit) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 644 | function defineKeyPropWarningGetter(props, displayName) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 662 | function defineRefPropWarningGetter(props, displayName) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 680 | function warnIfStringRefCannotBeAutoConverted(config) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 1765 | function describeBuiltInComponentFrame(name, source, ownerFn) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 1789 | function describeNativeComponentFrame(fn, construct) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 1948 | function describeFunctionComponentFrame(fn, source, ownerFn) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 1959 | function describeUnknownElementTypeFrameInDEV(type, source, ownerFn) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2012 | function setCurrentlyValidatingElement(element) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2091 | function getDeclarationErrorAddendum() { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2103 | function getSourceInfoErrorAddendum(source) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2113 | function getSourceInfoErrorAddendumForProps(elementProps) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2129 | function getCurrentComponentErrorInfo(parentType) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2311 | function createElementWithValidation(type, props, children) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2375 | function createFactoryWithValidation(type) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 2402 | function cloneElementWithValidation(element, props, children) { | CODE |
| LOW | …s/modules/k6/browser/tests/static/react.development.js | 3239 | function recursivelyFlushAsyncActWork(returnValue, resolve, reject) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 59 | function parentElementOrShadowHost(element) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 67 | function enclosingShadowRootOrDocument(element) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 92 | function isElementStyleVisibilityVisible(element, style) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 121 | function hasExplicitAccessibleName(e) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 388 | function hasPresentationConflictResolution(element, role) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 427 | function belongsToDisplayNoneOrAriaHiddenOrNonSlotted(element) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 510 | function getAriaLabelledByElements(element) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 539 | function getTextAlternativeInternal(element, options) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 764 | function innerAccumulatedElementText(element, options) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 873 | function belongsToDisabledFieldSet(element) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 893 | function getAccessibleNameFromAssociatedLabels(labels, options) { | CODE |
| LOW | …nal/js/modules/k6/browser/common/js/injected_script.js | 1345 | function shouldSkipForTextMatching(element) { | CODE |
| LOW | internal/js/modules/k6/webcrypto/tests/util/helpers.js | 175 | function allAlgorithmSpecifiersFor(algorithmName) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cmd/state/state.go | 66 | // the k6 codebase. This gives us the ability to mock them and have robust and | COMMENT |
| MEDIUM | internal/cmd/root.go | 67 | # Look up the JavaScript API, examples, and best practices | COMMENT |
| MEDIUM | internal/ds/histogram/hdr.go | 15 | // Essentially, it excludes negative numbers. | COMMENT |
| MEDIUM | internal/js/initcontext_test.go | 428 | // A more robust version of this polyfill is available here: | COMMENT |
| MEDIUM | internal/js/modules/k6/experimental/fs/module.go | 190 | // from other modules that would want to leverage its implementation of | COMMENT |
| MEDIUM | internal/js/modules/k6/browser/common/element_handle.go | 842 | // TODO: look into making more robust using retries | COMMENT |
| MEDIUM | internal/js/modules/k6/webcrypto/subtle_crypto.go | 714 | // a `CryptoKey` object rather than an ArrayBuffer. Essentially `SubtleCrypto.DeriveKey` is composed | COMMENT |
| MEDIUM | internal/output/summary/summary.go | 104 | return // Essentially skip samples tagged with group: setup/teardown. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | packaging/bin/create-rpm-repo.sh | 86 | # Create the RPM repository package if it doesn't exist already. | COMMENT |
| MEDIUM⚡ | internal/cmd/new.go | 102 | # Create a new k6 script with the default template | COMMENT |
| MEDIUM⚡ | internal/cmd/new.go | 111 | # Create a script using a specific template | COMMENT |
| MEDIUM⚡ | internal/cmd/new.go | 114 | # Create a cloud-ready script with a specific project ID | COMMENT |
| MEDIUM | internal/cmd/root.go | 54 | # Create a test | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | internal/cmd/cloud_login.go | 41 | $ {{.}} cloud login -t <YOUR_TOKEN> --stack <YOUR_STACK_URL_OR_SLUG> | CODE |
| HIGH | internal/cmd/tests/cmd_run_test.go | 161 | containsOutput: fmt.Sprintf("%s cloud login -t <YOUR_TOKEN>", ts.BinaryName), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | internal/cmd/test_load.go | 337 | // Step 1: modules that failed to load. | COMMENT |
| LOW⚡ | internal/cmd/test_load.go | 348 | // Step 2: all k6/x/ imports, registered or not. | COMMENT |
| LOW⚡ | internal/cmd/test_load.go | 357 | // Step 3: explicit version constraints from "use k6" directives in script files. | COMMENT |
| LOW | internal/js/modules/k6/experimental/fs/module.go | 267 | // If the read operation failed, we need to check if it was an io.EOF error | COMMENT |
| LOW | internal/js/modules/k6/browser/tests/page_test.go | 2663 | // We need to check if the response is JSON before calling json() | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | internal/output/prometheusrw/remotewrite/trend.go | 239 | // as requested by the Prometheus convention. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | internal/cmd/test_load.go | 337 | // Step 1: modules that failed to load. | COMMENT |
| LOW⚡ | internal/cmd/test_load.go | 348 | // Step 2: all k6/x/ imports, registered or not. | COMMENT |
| LOW⚡ | internal/cmd/test_load.go | 357 | // Step 3: explicit version constraints from "use k6" directives in script files. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | internal/js/modules/k6/browser/browser/mapping_test.go | 277 | // to the module. This is to ensure that we don't forget to map | COMMENT |
| MEDIUM | …se/opentelemetry/grafana/dashboards/k6-prometheus.json | 1937 | "content": "### Visualize other k6 results \n\nAt the top of the dashboard, click `Add` and select `Visualizati | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packaging/bin/generate_index.py | 50 | except Exception as e: | CODE |
| LOW | packaging/bin/generate_index.py | 380 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | release notes/v2.2.0.md | 134 | - [#6170](https://github.com/grafana/k6/pull/6170) Lets an orchestration service that provisioned a test run itself supp | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/summary-code-generation.yml | 43 | # Check if there are any changes in the Git working directory | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/scripts/check-feature-briefs.sh | 4 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | packaging/bin/generate_index.py | 36 | CODE |