Review of "Model Meter" version 1

Details Page Preview

Monitor OpenAI and Anthropic API spending from the GNOME top bar.

Extension Homepage
https://github.com/brielov/gnome-shell-model-meter

No comments.

FAQ

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) warning 1

Shexli found 1 issue that may need reviewer attention.

EGO-L-006 warning

preferences classes should not retain window-scoped objects on instance fields without close-request cleanup

Preferences code stores window-scoped objects on the exported prefs class without `close-request` cleanup.

Destroy all objects

  • prefs.js:31
    this.#settings = this.getSettings()
  • prefs.js:32
    this.#secretStore = new SecretStore()
  • prefs.js:33
    this.#provider = new OpenAIProvider(new Soup.Session())
  • prefs.js:34
    this.#anthropicProvider = new AnthropicProvider(new Soup.Session())
  • prefs.js:111
            this.#anthropicAccountStatus = new Adw.ActionRow({
                subtitle: _('Checking GNOME Keyring…'),
                title: _('Connection'),
            })
  • prefs.js:119
            this.#anthropicForgetButton = new Gtk.Button({
                label: _('Forget key'),
                sensitive: false,
                valign: Gtk.Align.CENTER,
            })
  • prefs.js:141
            this.#anthropicApiKeyRow = new Adw.PasswordEntryRow({
                input_hints: Gtk.InputHints.NO_SPELLCHECK | Gtk.InputHints.NO_EMOJI,
                show_apply_button: true,
                title: _('Anthropic Admin API key'),
            })
  • prefs.js:56
            this.#accountStatus = new Adw.ActionRow({
                subtitle: _('Checking GNOME Keyring…'),
                title: _('Connection'),
            })
  • prefs.js:65
            this.#forgetButton = new Gtk.Button({
                label: _('Forget key'),
                sensitive: false,
                valign: Gtk.Align.CENTER,
            })
  • prefs.js:87
            this.#apiKeyRow = new Adw.PasswordEntryRow({
                input_hints: Gtk.InputHints.NO_SPELLCHECK | Gtk.InputHints.NO_EMOJI,
                show_apply_button: true,
                title: _('OpenAI Admin API key'),
            })

All Versions

Version Status
2 Unreviewed
1 Rejected

Previous Reviews on this Version

brielov auto- rejected
Auto-rejected because of new version 2 was uploaded