Skip to content

forge-again v1.7.7

Choose a tag to compare

@logan71f100 logan71f100 released this 11 Aug 19:31
· 56 commits to main since this release

An infrastructure release: the UI's warnings and errors now run through two small, documented frameworks instead of ad-hoc code, and both are covered by the test harness. Full suite green (50 passed, including the GPU tier).

Features

  • Unified frontend notifications (forgeNotify). One stacked, consistently styled system for every banner, toast, and choice dialog: forgeNotify.info/success/warn/error(msg, opts) with per-level colors and timeouts, id-based replacement (state banners like connection lost/reconnected swap in place instead of stacking), sticky notifications with a close button, choice-dialog buttons, and built-in once-per-server-launch suppression. The connection watchdog's four banners and the flash-LoRA guard now run through it; any future warning is a one-liner.
  • Generation hints under the result (generation_hints). The info area beneath a generation is now fed by a documented framework: generation_hints.add(p, text) for one-off notices from any backend code, and @generation_hints.rule for rules evaluated on every run (a broken rule logs and never breaks a generation). Ships with two real hints: a notice when the inference reserve is raised for a large run (previously console-only), and a flash-LoRA settings rule that also covers API and assistant-driven runs that bypass the client-side guard. error_tips gains register_tip(pattern, tip, field) so extensions can add plain-language error explanations too.
  • Hints reach the API. The result payload's info JSON now exports comments, so API callers — including the built-in AI assistant — see the same hints the UI shows.

Tests

  • New static-tier hints check (rule firing/quiet cases, broken-rule isolation, register_tip round-trips) and a GPU-tier end-to-end check asserting hints land in the API response. Suite grows from 48 to 50 checks.

Upgrading

Pull and restart. No config or model changes needed.