{% extends "base.html" %}
{% block title %}Specs{% endblock %}
{% block content %}
{{ specs|length }} spec{{ '' if specs|length == 1 else 's' }}
across {{ roots|length }} root{{ '' if roots|length == 1 else 's' }}.
{% if allow_run %}
Click a status chip to flip it.
{% else %}
Read-only mode — restart without Specs
--read-only to edit statuses.
{% endif %}
| Slug | {% for phase_name in ("decisions", "requirements", "design", "tasks") %}{{ phase_name|capitalize }} | {% endfor %}
|---|---|
{{ s.slug }}
|
{% for phase in s.phases %}
{% if not phase.exists %} — {% else %} {% set st = (phase.status or '')|lower %} {% if st in ('approved', 'complete', 'completed', 'done') %} {% set chip_cls = 'chip-ok' %} {% elif st in ('in-review', 'review') %} {% set chip_cls = 'chip-warn' %} {% elif st == 'draft' %} {% set chip_cls = 'chip-muted' %} {% else %} {% set chip_cls = 'chip' %} {% endif %} {% if allow_run %} {% else %} {{ phase.status or '(no status)' }} {% endif %} {% endif %} | {% endfor %}
No specs found. Configure a roots directory with
attune ops --specs-root <dir>, or place spec
folders under docs/specs/.