{{ project.display_name or project.name }}

{{ project.status.value }} · v{{ project.version }} · {{ today }}
Total Tasks
{{ tasks|length }}
Todo
{{ status_counts.get('todo', 0) }}
In Progress
{{ status_counts.get('in_progress', 0) }}
Done
{{ status_counts.get('done', 0) }}
Blocked
{{ status_counts.get('blocked', 0) }}
{% if phases %}

Phases

{% for p in phases %}
{{ p.name }} {{ p.done }}/{{ p.total }} ({{ p.pct }}%)
{% if p.target_date != '—' %}
Target: {{ p.target_date }}
{% endif %}
{% endfor %} {% endif %} {% if blocked %}

Blockers

{% for t in blocked %} {% endfor %}
IDTitleBlocked By
{{ t.id }}{{ t.title }}{{ t.blocked_by|join(', ') or '—' }}
{% endif %} {% if workflows %}

Workflows

{% for wf in workflows %}
{{ wf.id }} {{ wf.feature }} {{ wf.done_steps }}/{{ wf.total_steps }} ({{ wf.pct }}%)
{% for step in wf.steps %} {% if not loop.first %}{% endif %} {{ step.name }} {% endfor %}
{% if wf.current_step %}
Current: {{ wf.current_step }}
{% endif %}
{% endfor %} {% endif %} {% if knowledge_total > 0 %}

Knowledge Map

{% for cat, count in knowledge_by_category.items() %}
{{ count }}
{{ cat }}
{% endfor %}
{% endif %}

Velocity

Average: {{ velocity.average }} tasks/week · Trend: {{ velocity.trend }}
{% if risks %}

Risks & Issues

{% for r in risks %}
[{{ r.get('severity', 'medium') }}] {{ r.title }}
{% endfor %} {% endif %} {% if decisions %}

Architecture Decisions

{% for d in decisions %}
{{ d.id }} {{ d.title }} ({{ d.status.value }})
{% endfor %} {% endif %}