{% set dot_class = 'active' if capture_status == 'active' else ('stale' if capture_status == 'stale' else ('offline' if capture_status == 'offline' else 'unknown')) %}
{{ capture_display_text }}
{% if segment_count > 0 %}
{{ segment_count }} segment{{ 's' if segment_count != 1 else '' }}{% if duration_minutes > 0 %} · {{ duration_minutes }}m{% endif %}
{% endif %} {% if last_observe_relative %}
Last observation {{ last_observe_relative }}
{% endif %} {% if attention %}
{{ attention.placeholder_text }}
view details →
{% endif %} {% if pipeline_status %}
{% if pipeline_status.headline %}
{{ pipeline_status.headline }}
{% endif %}
{{ pipeline_status.summary_sentence or pipeline_status.message }}
{% if pipeline_status.suggested_action == 'reprocess_stale' %} review stale items → {% elif pipeline_status.suggested_action == 'open_support' %} open a support ticket → {% elif pipeline_status.suggested_action == 'open_health_detail' or not pipeline_status.suggested_action %} view details → {% endif %}
{% endif %} health →
{% if yesterday_processing %}

{{ yesterday_processing.title }}

{{ yesterday_processing.summary_line }}
{% if yesterday_processing.first_week_framing %}

{{ yesterday_processing.first_week_framing }}

{% endif %} {% if yesterday_processing.mode == 'sparse' %} {% for line in yesterday_processing.sparse_lines %}

{{ line }}

{% endfor %} {% elif yesterday_processing.gap_links or yesterday_processing.details %}
    {% for link in yesterday_processing.gap_links %}
  • {{ link.text }}
  • {% endfor %} {% for line in yesterday_processing.details %}
  • {{ line }}
  • {% endfor %}
{% endif %}
{% endif %} {% if show_welcome %}

welcome to your home page

this is where your day comes together — narrative summaries, calendar events, and tasks. as observers experience your day along with you and sol curates, sections will appear here automatically.

check system health →
{% endif %} {% if briefing_exists or briefing_phase == 'pending' %}

morning briefing

{% if briefing_needs_badge %} {{ briefing_needs_badge }} {% endif %} {% if briefing_meta and briefing_meta.generated %} {{ briefing_meta.generated[11:16] if briefing_meta.generated is string else briefing_meta.generated.strftime('%H:%M') }} {% endif %}
{% if briefing_summary %}
{{ briefing_summary }}
{% endif %} {% if briefing_phase == 'pending' and not briefing_exists %}
{% if briefing_lateness.late %} I usually finish your briefing by ~10 am. It's {{ briefing_lateness.late_hours }}h late. Check status {% else %} your morning briefing is being prepared... {% endif %}
{% endif %} {% if briefing_exists %}
{% for section_key in ['your_day', 'yesterday', 'needs_attention', 'forward_look', 'reading'] %} {% set section_content = briefing_sections.get(section_key) %} {% if section_key == 'needs_attention' %} {% if briefing_needs_deduped or briefing_needs_badge %}
{% if briefing_needs_deduped %}
    {% for item in briefing_needs_deduped %}
  • {{ item }}
  • {% endfor %}
{% endif %}
{% endif %} {% elif section_content %} {% set section_labels = {'your_day': 'your day', 'yesterday': 'yesterday', 'forward_look': 'forward look', 'reading': 'reading'} %}
{% endif %} {% endfor %}
{% endif %}
{% endif %} {% if narrative_content is not none %}
tell me more → {% if narrative_updated_at %}
updated at {{ narrative_updated_at }}
{% endif %}
{% elif segment_count > 0 %}

{{ narrative_header or "today's flow" }}

analysis will be available after the next processing cycle.
{% endif %} {% if narrative_content is none and segment_count == 0 and not show_welcome %}

today's flow

no narrative yet — one will appear after solstone processes some audio. check observer status →
{% endif %} {% if latest_weekly_reflection %}

weekly reflection

week of {{ latest_weekly_reflection.label }} →
{% endif %} {% if anticipated_activities or activities %}
{% if anticipated_activities %}
{% for event in anticipated_activities %} {% set is_past = event.get('occurred', false) or (event.get('end', '') and event['end'] < now.strftime('%H:%M:%S')) %}
{{ event.get('start', '')[:5] }} {{ event.get('title', 'Untitled') }}
{% endfor %}
{% endif %} {% if activities %}
recent activity
{% for act in activities[:6] %}
{{ act.get('display_time', '') }} {{ act.get('description', act.get('activity', '')) }}
{% endfor %}
{% endif %} {% if facet_data %}
{% for fname, fdata in facet_data.items() %} {{ fname }} · {{ fdata.get('minutes', 0)|int }}m {% endfor %}
{% endif %}
{% endif %} {% if not anticipated_activities and not activities and not show_welcome %}

today

no anticipated activities or recent activity yet today.
{% endif %} {% if needs_you_items %}

needs you

{{ needs_summary }}
{% for item in needs_you_items %} {% if item.disabled %}
{{ item.text }}{% if item.reason %}{{ item.reason }}{% endif %}
{% else %}
{{ item.text }}
{% endif %} {% endfor %}
{% endif %} {% if not needs_you_items and not show_welcome %}

needs you

nothing needs your attention right now.
{% endif %}