{#- Now 1's pieces (docs/design/now-1.md): a run strip, a phase sheet, a queue line, a difficulty-by-model table. Imported `with context` so `f` (the formatters) is in scope. -#} {%- macro summary(snap) -%} {#- A field reading, not a score: each value is a literal fact repeated in the region it links to. Attention leads only when the garden has explicitly asked for it. -#} {%- set g = snap.garden -%} {%- set runs = snap.now | selectattr("kind", "equalto", "run") | list -%} {%- set hands = snap.now | rejectattr("kind", "equalto", "run") | list -%} {%- set p = snap.where.primary -%}

Garden at a glance

{% if g.dispatch_paused or hands %}attention{% if g.dispatch_paused %}Dispatch paused{% else %}{{ hands | length }} waiting on you{% endif %}{% if g.dispatch_paused %}by {{ g.dispatch_paused.by }} since {{ g.dispatch_paused.at[11:16] }}Z{% if g.dispatch_paused.reason %} · {{ g.dispatch_paused.reason }}{% endif %}{% if hands %} · {{ hands | length }} item{{ 's' if hands | length != 1 }} need you{% endif %}{% else %}Open the current cards{% endif %}{% endif %}
Capacity now
{{ g.worker_busy }} / {{ g.max_parallel }}worker slots used{% if g.worker_without_process %} · {{ g.worker_without_process }} without a process{% endif %}{{ g.review_busy }} / {{ g.review_parallel }} review slots used · {{ runs | length }} run{{ 's' if runs | length != 1 }} in flight
Next dispatch
{% if snap.next.dispatch %}{{ f.short(snap.next.dispatch[0].title) }}{{ snap.next.dispatch | length }} queued item{{ 's' if snap.next.dispatch | length != 1 }}{% else %}Nothing queuedno dispatch candidate{% endif %}
Current phase
{% if p %}{{ p.done }} / {{ p.total }}{{ p.name }} tasks merged{{ p.stage_word }}, from merged tasks{% else %}No open phasenothing in progress{% endif %}
{{ dict(snap.windows).get(snap.window, snap.window) | capitalize }}
{{ snap.period.merged }}merged · ${{ '%.2f' % snap.period.cost }} recorded cost{{ snap.period.runs }} run{{ 's' if snap.period.runs != 1 }} finished in this window
{%- endmacro -%} {%- macro slots(snap) -%} {#- The Now region's right-hand facts: the slots, the pause stamp, the lost-connection words. -#} {%- set g = snap.garden -%} {{ g.worker_busy }} of {{ g.max_parallel }} worker slots · {{ g.review_busy }} of {{ g.review_parallel }} review slots{% if g.dispatch_paused %} paused · by {{ g.dispatch_paused.by }} at {{ g.dispatch_paused.at[11:16] }}Z{% if g.dispatch_paused.reason %} · {{ g.dispatch_paused.reason }}{% endif %}{% endif %} {%- endmacro -%} {%- macro strip(s, cls="") -%} {%- set no_process = s.no_process | default(false) -%} {%- set finished = s.verdict is defined -%}
{{ stage(s.glyph, 22) }}
{#- the title leads and is the link to the task page, where the actions are; the id follows in muted mono for the person who knows the work by number -#} {% if s.task %}{{ s.title }}{{ s.task }}{% else %}{{ s.title }}{% endif %}
{% if s.kind == "run" %}{{ s.mode }}{% if s.stage %} · {{ s.stage }}{% endif %}{% if s.harness %} · {{ s.harness }} {{ s.model }}{% endif %}{% if s.run %} · open run{% endif %}{% if s.state == "failed" %} failed{% endif %} {% else %}{{ s.state | replace('_', ' ') }}{% endif %}
{% if no_process %}
{{ s.lifecycle_detail }} · started {{ s.started_at[11:16] }}Z
{% elif s.kind == "run" %} {%- set typical = s.typical_s -%}
{% if typical %} {%- set ratio = s.elapsed_s / typical -%} {{ f.clock(s.elapsed_s) }} · typically {{ f.minutes(typical) }} · longer than usual {% else %} {{ f.clock(s.elapsed_s) }} {% endif %} {% if finished %}{{ s.verdict }} {% elif s.lifecycle_detail %}{{ s.lifecycle_detail }} {% elif s.spend_usd is not none %}{{ f.money(s.spend_usd) }} so far {% elif s.tokens_so_far | default(0) %}{{ f.ktok(s.tokens_so_far) }} tokens so far {% elif not s.harness %}token-free {% else %}no usage yet{% endif %}
{% if s.said %}“{{ s.said }}”{% else %}no words yet{% endif %}
{% else %}
{{ s.reason }}
{% endif %}
{%- endmacro -%} {%- macro sheet(ph, big=true) -%} {%- set src = plate(ph.plant) -%}
{% if src %}{{ ph.latin }}, inked to {{ (ph.fraction * 100) | round | int }} percent {% else %}{{ plant(ph.plant, 200, 300) }}{{ plant(ph.plant, 200, 300) }}{% endif %}
{% if big %}{% endif %}
{{ ph.product }} · plate {{ ph.plate }}
{{ ph.name }}
{{ ph.latin }} — {{ ph.common }}
{{ ph.done }} of {{ ph.total }} merged · {{ ph.prs_open }} PR{{ 's' if ph.prs_open != 1 }} open · {{ ph.running }} running
{{ ph.stage_word }}{% if ph.spent %} · spent ${{ '%.2f' % ph.spent }}{% if ph.budget %} of ${{ '%.0f' % ph.budget }}{% endif %}{% endif %}
{{ 'complete' if ph.fraction >= 1 else ('frozen' if ph.frozen else 'open') }}{% if ph.retro %}{{ ph.retro.get('verdict', '') }}{% endif %}
{%- endmacro -%} {%- macro queue_line(q) -%}
  • {{ q.pos }}{{ stage('changes_requested' if q.mode != 'work' else 'ready', 18) }}{{ q.title }} {{ q.task }} · {{ q.why }} · {{ q.mode }} · {{ q.difficulty }} → {% if q.skip %}{{ q.skip }}{% else %}{{ q.harness }} {{ q.model }}{% endif %}
  • {%- endmacro -%} {%- macro heat_table(m, columns, rows, thin, heads={}) -%} {#- One shaded table (the owner's rule, 2026-09-06 02:45Z): a column per model, a row per key, each cell its value over its n. The ground and the marks are decided in the data (`events._rank_row`: `rank` runs from 0 at the row's best to 1 at its worst, and is unset when the row has fewer than two solid cells, so no ground is drawn; `best`, `worst`, `thin`); the template only styles them: ▲ before the best value, ▽ before the worst, ~ on a thin cell's n, each with its word in a title, so colour is never the only signal. The caption says which way is good and what n counts (`m.n_unit`); `heads` adds a line under a column's name (the runs table's total cost and count). -#}
    {% for col in columns %}{% set parts = col.split(':', 1) if ':' in col else col.split('-', 1) %}{% endfor %} {% for d in rows %} {% for col in columns %}{% set c = m.rows[d].get(col) %}{% if c %}{% set cls = (['scaled'] if c.rank is not none else []) + (['best'] if c.best else []) + (['worst'] if c.worst else []) + (['thin'] if c.thin else []) %}{% else %}{% endif %}{% endfor %} {% endfor %}
    {{ m.label }} {{ 'lower is better' if m.better == 'low' else 'higher is better' }}{% if m.n_unit %} · n = {{ m.n_unit }}{% endif %}
    {% if parts | length == 2 %}{{ parts[0] }}{{ ':' if ':' in col else '-' }}{{ parts[1] }}{% else %}{{ col }}{% endif %}{% if heads.get(col) %}{{ heads[col] }}{% endif %}
    {{ d }}{% if c.best %}{% elif c.worst %}{% endif %}{% if not (c.cost_complete | default(true)) %}partial {% endif %}{{ f.cell(m.unit, c.value) }}{% if c.thin %}~{% endif %}n {{ c.n }}
    {%- endmacro -%}