{% extends "base.html" %} {% block title %}Automation - {{ job.name }} - Memorizz{% endblock %} {% block content %} {% from '_ui.html' import page_header, empty_state, id_chip %} {% set status_pill = {'succeeded': 'pill--success', 'failed': 'pill--danger', 'running': 'pill--info'} %} {% call page_header(job.name, 'Schedule, status and run history for this job. Select a run to open its trace.', 'Execution', back=('/automations' ~ ('?agent_id=' ~ job.agent_id if job.agent_id else ''), 'All automations')) %} Edit {% if job.enabled %}
{% else %}
{% endif %}
{% endcall %} {% if error %}
! {{ error }}
{% endif %}

Job

Status
{% if job.enabled %} Enabled {% else %} Paused {% endif %}
Job ID
{{ id_chip(job.job_id, 40) }}
Agent
{{ id_chip(job.agent_id, 40) }}
Schedule
{{ job.schedule_type|replace('_', '-')|capitalize }} {% if job.schedule_type == 'cron' and job.cron_expr %} {{ job.cron_expr }} {% elif job.schedule_type == 'interval' and job.interval_seconds %} {{ job.interval_seconds }}s {% endif %}
Timezone
{{ job.timezone }}
Next run
{{ job.next_run_at }}
Last run
{{ job.last_run_at or '-' }}

Run history

Latest 50 runs
{% if runs %}
{% for run in runs %} {% set payload = run.result_payload or {} %} {% set deliveries = payload.get('deliveries', []) if payload else [] %} {% set delivery_summary = payload.get('delivery_summary', {}) if payload else {} %} {% set delivery_sent = delivery_summary.get('sent', 0) if delivery_summary else 0 %} {% set delivery_failed = delivery_summary.get('failed', 0) if delivery_summary else 0 %} {% set run_memory_id = payload.get('memory_id', '') if payload else '' %} {% set trace_url = '/traces?agent_id=' + job.agent_id + ('&thread_memory_id=' + run_memory_id if run_memory_id else '') + '&scroll=timeline' %} {% endfor %}
Scheduled for Status Started Finished Deliveries Error
{{ run.scheduled_for }} {{ run.status|capitalize }} {{ run.started_at or '-' }} {{ run.finished_at or '-' }} {{ deliveries|length }} {% if delivery_failed %} {{ delivery_failed }} failed {% elif delivery_sent %} {{ delivery_sent }} sent {% endif %} {% if run.error %} {{ run.error|truncate(120) }} {% else %} - {% endif %}
{% else %}
{{ empty_state('No runs yet', 'A run is recorded when a worker picks up this job at its next run time. Start a worker with memorizz automations run, or select Run now.') }}
{% endif %}
{% endblock %}