TavernKeeper Scan Report

starlitcode/Lumiverse-Auto-Retry

Commit 46112dd Reviewed

No material or immediate-danger concern was identified in this review.

This advisory report describes what the named tools and review process found at one exact commit. Unknown or unobserved behavior may still exist.

0 immediate danger 0 material 10 low

What this review found

No material or immediate-danger item was identified.

Minor cautions

OpenGrep reported tavernkeeper.download-and-execute.shell-pipeline

Minor caution · high confidence

A setup helper for people developing the code can download and run the standard installer for a build tool from that tool's official website, if the tool is not already installed. Download-and-run like this is a very common practice, but it means the script places full trust in that website: if the site were ever compromised, harmful code could run on a contributor's machine. Nothing here points at a surprising destination, hides what it does, or affects people who simply use the extension.

Technical evidence

Scanner reason: OpenGrep matched static-analysis rule tavernkeeper.download-and-execute.shell-pipeline. The match applies to this repository.

Contextual assessment: The flagged line pipes a remotely fetched installer script over HTTPS into a shell as a fallback when a global package-manager install of the build tool fails. Context materially reduces the concern: this is a repository-root bootstrap script for contributors, not part of the shipped extension, which loads only its two committed script bundles. The destination is the build tool vendor's own official install domain rather than an unattributed host, the fetch is attempted only when the tool is absent and the package-manager route fails, execution happens at user level rather than through the script's privilege helper, and the comments disclose the intent. Anyone running a repository's setup script has already chosen to execute that repository's code. The weakness is genuine but limited: the downloaded bytes are neither pinned nor integrity-checked, so a compromise of the vendor's host or its content delivery would lead to arbitrary code execution on contributor machines, and a failed fetch is even tolerated silently. The supplied evidence contains no attacker-controlled trigger, no unexpected destination, and no concealment, so no concrete harm path is demonstrated.

Impact: low · Exploitability: unlikely

Developer action: Prefer installing the build tool through a package manager or verifying the installer against a published checksum before running it, and note in the contributor documentation that the setup script runs the vendor's official installer; the shipped extension itself is unaffected by this line.

Scanner
opengrep 1.26.0
Rule
tavernkeeper.download-and-execute.shell-pipeline
File role
production
Source
setup.sh:46

JavaScript analysis reported javascript.xray.unsafe-regex

Minor caution · medium confidence

A crafted input might briefly slow or freeze the local client, without showing broader security harm.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: The expression may permit a local CPU slowdown, but this evidence shows no credential, persistence, code-execution, or cross-user impact.

Impact: low · Exploitability: plausible

Developer action: Bound the input length or replace the expression when practical.

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
test
Source
test/ui.mjs:2772
Deterministic technical evidence (4)
  • OpenGrep reported tavernkeeper.dynamic-execution.javascript-eval · opengrep 1.26.0

    This technical signal is not part of the shipped runtime behavior.

    Policy reason: owned-inert-tooling · Execution scope: test-documentation-data

    Source: test/prompt-viewer.test.ts:354

  • OpenGrep reported tavernkeeper.dynamic-execution.javascript-eval · opengrep 1.26.0

    This technical signal is not part of the shipped runtime behavior.

    Policy reason: owned-inert-tooling · Execution scope: test-documentation-data

    Source: test/prompt-viewer.test.ts:40

  • OpenGrep reported tavernkeeper.dynamic-execution.javascript-eval · opengrep 1.26.0

    This technical signal is not part of the shipped runtime behavior.

    Policy reason: owned-inert-tooling · Execution scope: test-documentation-data

    Source: test/refusal-note.test.ts:43

  • OpenGrep reported tavernkeeper.dynamic-execution.javascript-eval · opengrep 1.26.0

    This technical signal is not part of the shipped runtime behavior.

    Policy reason: owned-inert-tooling · Execution scope: test-documentation-data

    Source: test/prompt-viewer.test.ts:422

Contextual expected matches (4)

JavaScript analysis reported javascript.download-to-execution

Expected behavior · high confidence

This is the project's automated test script. It opens a private throwaway browser window, loads the extension's own code into it, and checks that its buttons, pop-ups, and timers behave correctly. The scanner saw the test framework's commands for running code in that private browser window and mistakenly grouped them with a network download. There is no downloading of code from the internet and no risk to users: this file only runs during development and is never part of what users install.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.download-to-execution. The match applies to this repository.

Contextual assessment: The flagged region is a browser-based UI test harness. The apparent 'code execution sink' is the standard test pattern of injecting the extension's own already-built frontend source into a locally launched, isolated test browser page and running in-page assertions against mocked host APIs. The apparent 'network retrieval' corresponds to the test harness loading a blank local page and driving it via automation; no remote content is fetched and then executed. No untrusted data flows into an execution sink, nothing is downloaded and run, and this file is a development test script, not part of the shipped extension loaded by users (the project's shipped artifacts are its dist frontend and backend files). This is ordinary test tooling, not a download-to-execution data flow.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.download-to-execution
File role
test
Source
test/ui.mjs:3733-4454

JavaScript analysis reported javascript.xray.serialize-environment

Expected behavior · high confidence

The scanner saw the test code reading settings from the machine and guessed it might be harvesting them. In reality the tests just look up where a browser is installed so they can open it for automated checks. Nothing leaves the developer's machine, and this file is not part of the extension that users install.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.serialize-environment. The match applies to this repository.

Contextual assessment: The flagged construct is a browser-locator helper inside the project's UI test harness. It reads two environment variables that name a locally installed Chromium executable, checks a few standard sub-locations on the developer's machine, and returns the result solely to launch the local test browser. The environment values are never serialized, transmitted, logged to any remote sink, or persisted. The file runs only when a developer invokes the test script and is not part of the artifacts the extension loads at runtime. The scanner signal is a keyword match on environment-variable access, not evidence of collection or exfiltration.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.serialize-environment
File role
test
Source
test/ui.mjs:345

JavaScript analysis reported javascript.xray.unsafe-regex

Expected behavior · high confidence

The scanner flagged pattern-matching code that can sometimes make a program slow down badly. Reading the real patterns in this file, they were carefully built to avoid exactly that problem: each part of every pattern can only match one kind of character, so the matcher never has to re-try work, and every repetition and scanning loop has a hard limit. The code only examines the user's own chat replies on their own machine, which is what this extension says it does. Nothing here sends data anywhere or does anything hidden.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.unsafe-regex. The match applies to this repository.

Contextual assessment: Detailed technical wording was omitted by the public report safety filter.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.unsafe-regex
File role
generated
Source
dist/frontend.js:782

JavaScript analysis reported javascript.xray.shady-link

Expected behavior · high confidence

The scanner flagged a web address because it is not the usual secure kind. It is a made-up placeholder address used only by the automated tests to load pretend pages on the developer's own machine; the tests answer every request themselves, so nothing is ever actually sent anywhere. The address does not appear in the extension people install.

Technical evidence

Scanner reason: JavaScript analysis matched static JavaScript security signal javascript.xray.shady-link. The match applies to this repository.

Contextual assessment: The flagged literal is a fictional reserved-domain origin used as the page address for the automated UI checks. The harness intercepts every request the page makes and fulfills it locally with fixture markup, which exists so the test page has a real working storage origin instead of a blank one. The address never resolves to a real host, no network connection is made to it, and no user data flows to it. The literal appears only in the test automation file, which is separate from the files the extension ships and loads.

Impact: none · Exploitability: unlikely

Developer action: none

Scanner
javascript-analysis webcrack-2.16.0_js-x-ray-16.0.0_signatures-1_literals-1_families-1
Rule
javascript.xray.shady-link
File role
test
Source
test/ui.mjs:281

Coverage and limitations

JavaScript coverage

Unresolved JavaScript stages

Tools

Limitations

Technical scan identity