TavernKeeper Scan Report

lazuli-s/SillyTavern-WorldInfoDrawer

Commit 176ca1c 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 3 low

What this review found

No material or immediate-danger item was identified.

Contextual expected matches (3)

JavaScript analysis reported javascript.xray.obfuscated-code

Expected behavior · high confidence

The automated scanner guessed this file might contain disguised code, but the actual contents are ordinary, readable code for drawing lorebook entries in the drawer. Nothing is hidden and no information leaves the app.

Technical evidence

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

Contextual assessment: The scanner raised a low-confidence obfuscation signal at line 1, but the supplied source is plainly readable, comment-documented interface code that renders lorebook entry rows: it clones nodes from host-provided editor template markup, attaches selection, drag, and toggle handlers, and persists entry state through the extension's own save path with rollback on failure. Entry text is placed into the DOM via text properties only, and there are no encoded literals, dynamic code evaluation, external destinations, or concealed behavior anywhere in the file. The one redacted token is a per-click unique identifier used to discard stale asynchronous editor opens, not a credential or hidden payload. A cosmetic artifact such as the file's leading byte-order mark is the plausible trigger for the low-confidence line-1 signal.

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.obfuscated-code
File role
production
Source
src/book-browser/book-list/book-list.world-entry.js:1

JavaScript analysis reported javascript.xray.obfuscated-code

Expected behavior · high confidence

The file is a small, clearly written settings module that remembers which columns and filters the user chose. The scanner's obfuscation flag is a false alarm on readable code.

Technical evidence

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

Contextual assessment: This module defines default column and filter state for the entry manager, reads the host application's option lists from the entry editor template with small static fallbacks, and loads previously saved UI preferences from browser local storage while discarding malformed or unrecognized values. The code is short, readable, and comment-documented, with no encoded strings, dynamic code execution, external calls, or hidden data flows. The obfuscation signal at line 1 carries low scanner confidence and is contradicted by the fully readable supplied source, so no exposure is demonstrated.

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.obfuscated-code
File role
production
Source
src/entry-manager/logic/logic.state.js:1

JavaScript analysis reported javascript.xray.obfuscated-code

Expected behavior · high confidence

The scanner's guess about hidden code does not match this file, which is clearly written logic for the bulk entry manager panel. The only data it saves is the user's own layout preferences on their own machine.

Technical evidence

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

Contextual assessment: The flagged file is the composition layer for the bulk entry manager: it wires together filter, sorting, selection, and rendering helpers, tracks the active book scope, and stores only UI preferences (sort order, column visibility, and a hide-keys toggle) in browser local storage under the extension's own keys, validating stored sort values against the known option set before applying them and ignoring malformed data. Entry previews are rendered as plain serialized text. The supplied source contains no obfuscated constructs, dynamic code evaluation, network access, or undisclosed persistence, so the low-confidence line-1 signal does not correspond to any demonstrated concealment.

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.obfuscated-code
File role
production
Source
src/entry-manager/entry-manager.js:1

Coverage and limitations

JavaScript coverage

Unresolved JavaScript stages

Tools

Limitations

Technical scan identity