fix(autosend): invio dettatura robusto e visibile (v0.3.1)

L'auto-invio poteva non scattare senza alcun segnale. Cause eliminate:
- il testo viene passato esplicitamente (sendText) invece di rileggerlo
  dal campo; il focus tastiera non viene piu' forzato prima dell'invio
- l'opzione vale "on" salvo disattivazione esplicita (undefined -> on)
- ChatModel::send non rifiuta piu' in silenzio: avviso a schermo
  ("No session open" / "Wait for the current reply") + log [chat]
- log [hermes] sul percorso trascrizione/auto-invio per la diagnosi
  dal terminale
This commit is contained in:
2026-09-12 13:49:20 +02:00
parent a5932f0025
commit fa2aafa9dd
6 changed files with 56 additions and 20 deletions
+15 -1
View File
@@ -1,5 +1,6 @@
#include "chatmodel.h"
#include <QDebug>
#include <QTimer>
ChatModel::ChatModel(ApiClient *api, QObject *parent)
@@ -81,8 +82,21 @@ void ChatModel::resync()
void ChatModel::send(const QString &text)
{
const QString trimmed = text.trimmed();
if (trimmed.isEmpty() || m_sessionId.isEmpty() || m_busy)
if (trimmed.isEmpty())
return;
// Rifiuti VISIBILI: prima erano silenziosi, e l'invio automatico poteva
// "non fare nulla" senza che si capisse il perché.
if (m_sessionId.isEmpty()) {
qDebug() << "[chat] send rifiutato: nessuna sessione aperta";
emit notice(QStringLiteral("No session open"));
return;
}
if (m_busy) {
qDebug() << "[chat] send rifiutato: un turno e' gia' in corso";
emit notice(QStringLiteral("Wait for the current reply"));
return;
}
qDebug() << "[chat] invio:" << trimmed.size() << "caratteri";
m_finalizedThisRun = false;
appendMessage(QStringLiteral("user"), trimmed, false);
beginAssistant();
+2 -2
View File
@@ -19,9 +19,9 @@ Q_DECL_EXPORT int main(int argc, char *argv[])
// AppConfigLocation = ~/.config/harbour/hermes (zona persistente della sandbox).
app->setOrganizationName(QStringLiteral("harbour"));
app->setApplicationName(QStringLiteral("hermes"));
app->setApplicationVersion(QStringLiteral("0.3.0"));
app->setApplicationVersion(QStringLiteral("0.3.1"));
qDebug() << "harbour-hermes v0.3.0 build" << __DATE__ << __TIME__;
qDebug() << "harbour-hermes v0.3.1 build" << __DATE__ << __TIME__;
Settings settings;
ApiClient api(&settings);