Skip to content

GPT Delagger v1.5.1

Choose a tag to compare

@throwingogo-hub throwingogo-hub released this 17 Jul 05:32
e21d9ec

A performance fix. 1.5.0 was slower than 1.4.0 on chatgpt.com — the opposite of this extension's job. This puts it back.

Fixed

  • The regression introduced in 1.5.0. The Keep newest embed feature is off by default, but it charged for itself anyway. enforceToolKeep runs inside the MutationObserver callback, so on every mutation batch — including every streamed token — it ran a document-wide [data-gptdelag-keep] query across the live thread to answer a question whose answer, with the feature off, is always "nothing". Flagged embeds are now tracked in a set, so the off state costs nothing.
  • blockToolNode had the same shape: it searched each candidate's entire subtree for a keep flag that, with the feature off, exists nowhere.
  • Turn discovery no longer asks every ancestor to search its subtree for a composer that is never inside a turn. It walks up from the composer instead — contains() costs the node's depth, not the thread's size. The exact check before detaching a turn is unchanged, so the input box is still guarded.

Measured

On the 140-turn fixture, per 100 streamed tokens, at default settings:

1.4.0 1.5.0 1.5.1
DOM queries while streaming 507 639 508
document-wide keep queries 0 102 (one per batch) 0
DOM queries while loading 1688 2486 1818

Query counts are exact. Observer-callback time on the same fixture put 1.5.0 at roughly 1.3–2.3x of 1.4.0 while streaming, with 1.5.1 at or below 1.4.0 in every run — that ratio is a fixture measurement, not a promise about any particular chat.

Behaviour

Unchanged. A differential harness ran 1.5.0 and 1.5.1 through ten scenarios — defaults, keep-newest on, the flag moving to a newer streamed embed, keep-newest off again, blocker off, extension disabled, keep-count 0, trimming off, and a single-message thread — and every one produces byte-identical DOM, with the composer intact throughout. Nothing to relearn; no settings change.

Install

Download gpt-delagger-v1.5.1.zip, unzip it, then chrome://extensions → enable Developer mode → Load unpacked → select the unzipped folder. Verify with gpt-delagger-v1.5.1.zip.sha256.

Full changelog: v1.5.0...v1.5.1