diff --git a/static/js/tasks.js b/static/js/tasks.js index 08947f6..3cb55b3 100644 --- a/static/js/tasks.js +++ b/static/js/tasks.js @@ -351,8 +351,10 @@ function _taskIcon(task) { function _taskAiMark(task) { const kind = task?.task_type || task?.kind || ''; - if (kind !== 'llm') return ''; - return ''; + const action = task?.action || ''; + const aiAction = /(^|_)(ai|summarize|summary|draft|reply|classify|triage|audit|research|brief|skills?)($|_)/i.test(action); + if (!(kind === 'llm' || kind === 'research' || task?.model || task?.endpointUrl || aiAction)) return ''; + return ''; } // ---- Custom pickers ---- @@ -2305,10 +2307,9 @@ function _renderActivityEntry(entry) {
${statusDot} ${_taskIcon({ action: entry.action, task_type: entry.kind })} - ${_escHtml(entry.taskName)}${_taskAiMark({ task_type: entry.kind })} + ${_escHtml(entry.taskName)}${_taskAiMark(entry)} ${repeatBadge} skipped${reason ? ' — ' + _escHtml(reason) : ''} - ${_escHtml(tsLabel)}
@@ -2319,7 +2320,7 @@ function _renderActivityEntry(entry) {
${statusDot} ${_taskIcon({ action: entry.action, task_type: entry.kind })} - ${_escHtml(entry.taskName)}${_taskAiMark({ task_type: entry.kind })} + ${_escHtml(entry.taskName)}${_taskAiMark(entry)} ${repeatBadge} ${rightHtml} diff --git a/static/style.css b/static/style.css index fff436d..3698451 100644 --- a/static/style.css +++ b/static/style.css @@ -20915,6 +20915,7 @@ body:not(.welcome-ready) #welcome-screen { .task-log-row.is-skipped .task-log-row-head { padding: 0; } .task-log-row.is-skipped .task-log-name { font-weight: 500; } .task-log-row.is-skipped .task-log-skipped-reason { + flex: 1 1 auto; margin-left: 6px; font-style: italic; opacity: 0.85;