• exec/chat_llm.js chat_llm_irc.js

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Mon Jun 1 22:09:27 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b7a8fe42899f20e6089c104e
    Modified Files:
    exec/chat_llm.js chat_llm_irc.js
    Log Message:
    chat_llm: IRC bot acknowledges brief replies to its own lines

    When a user makes a clear, brief, *unaddressed* reply to the bot's OWN
    last line, the bot now reacts once with a short in-character line (bare,
    no nick prefix). Three cases:

    - closer -- a social acknowledgement ("ah ok", "thanks", "makes sense")
    - correction-- pushback ("no, that's wrong") -> a gracious concession that
    never re-asserts or argues
    - answer -- the bot's last line was a question and the user answered it
    -> a brief reaction that doesn't ask a new question or start
    a new topic (so it acknowledges without restarting the volley)

    Deterministic gate (chat_llm_irc.js handle_privmsg): the bot's prior line
    must be substantive (a reply/intervention, never another ack) + recent + directed at this speaker with nobody in between, the speaker not muted, a per-channel cooldown elapsed, and the text matches a closer/correction
    shape (ack_kind) -- or, for 'answer', our prior line ended in '?'. Closers
    are probabilistic (irc_ack_closer_chance, default 0.9); corrections and
    answers always react. The bot never reacts twice in a row, so the user
    always gets the last word. ack_kind + chat_llm_ack live in chat_llm.js (classifier is unit-testable; the line is a constrained model call with a canned fallback on ramble/question/error).

    New config (chat_llm.ini, default ON): irc_ack_enabled, irc_ack_window, irc_ack_cooldown, irc_ack_closer_chance -- documented in the module header.

    Also carries the irc_intervention_min_tokens gate (default 2): an
    unanswered question must have at least N content tokens to qualify for a high-confidence unprompted intervention, so a single content word can't
    carry a "confident enough to chime in" score.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net