{# break thread N [job M] on '': krn.JobThreadBreak. The one place in this family that writes, and the one result that has to be careful about what it claims. A zero return code means the server accepted the request, not that the job stopped: the vendor reference says the job works only for jobs that support being broken, and a probe against 12.0.801 found cnv.ConvertDocument is not one of them (266 s broken against a 264 s untouched control). So the snapshot is read again afterwards and the verdict below distinguishes "stopped" from "accepted and still running". #}
{{ t("threads.badge.break") }} {% if outcome.stopped %} {{ t("threads.break_stopped") }} {% elif outcome.accepted %} {{ t("threads.break_accepted") }} {% elif outcome.action == "idle" %} {{ t("threads.break_idle") }} {% elif outcome.action == "unknown" %} {{ t("threads.break_unknown") }} {% else %} {{ t("threads.break_refused") }} {% endif %} {% if outcome.server %} {{ outcome.server }}{% if outcome.computer %} ยท {{ outcome.computer }}{% endif %} {% endif %}
{% for failure in outcome.errors %} {% endfor %}
{% if outcome.accepted and outcome.still_running %} {# Said out loud rather than dressed up as a success. #} {% elif outcome.stopped %} {% elif outcome.action == "unknown" %} {% elif outcome.action == "idle" and not outcome.called %} {# Not asked at all: a thread with no job has nothing to interrupt, and asking would earn the server's own call stack as an answer. #} {% elif outcome.message %} {% endif %} {# The number the server wanted. Inferred from the snapshot unless the statement wrote one, because the reference never maps JobNumber to a field: uniquenumber was settled by probe. #} {% if outcome.called %} {# Only when the job actually ran: a zero here for a call that was never made would read as a success. #} {% endif %}
{{ t("threads.threads.column.threadid") }} {{ outcome.threadid }}
{{ t("threads.threads.column.queue") }} {{ outcome.queue or "-" }}
{{ t("threads.threads.column.jobname") }} {{ outcome.jobname or "-" }}
{{ t("threads.jobnumber") }} {{ outcome.jobnumber if outcome.jobnumber is not none else "-" }}
{{ t("threads.returncode") }} {{ outcome.code }}
{% if outcome.accepted %}

{{ t("threads.break_note") }}

{% endif %}