COMMAND DECK {{ project.title | upper }}
{% if parent_area %}
Bridge Work {{ parent_area.title }} {{ project.title }}
{% endif %} {% if project.archived_at %}
// ARCHIVED — this project is hidden from active views. Time entries, tickets, meetings, and mileage still work.
{% endif %}

{{ project.title }} {% if project.tracking_enabled %} {% endif %}

{% if project.description %}

{{ project.description }}

{% endif %}
{% if project.tracking_enabled or project.project_type == 'work_subproject' %}
// Time
Loading today's entries...
{% endif %}
ADD BLOCK
{% for block in blocks %}
{% if block.title %}{{ block.title }}{% elif block.type == 'note' %}Untitled Note{% else %}Untitled Checklist{% endif %} {% if block.type == 'checklist' and block.recurrence %} {% endif %}
{% if block.type == 'checklist' %} {% if block.recurrence %} {% else %} {% endif %} {% endif %}
{% if block.type == 'note' %}
{{ block.content | default('', true) }}
{% elif block.type == 'checklist' %}
    {% for item in block['items'] %}
  • {% if project.tracking_enabled %} {% if item.lifetime_seconds %}lifetime: {{ item.lifetime_text }}{% endif %} {% endif %}
  • {% endfor %}
{% if block.recurrence %}
{% endif %}
{% endif %}
{% endfor %}
// Tasks
{% if project_tasks %}
    {% for task in project_tasks %}
  • {{ task.title }} {% if project.tracking_enabled %} {% if task.lifetime_seconds %}lifetime: {{ task.lifetime_text }}{% endif %} {% endif %}
  • {% endfor %}
{% else %}
No tasks for this project.
{% endif %}
// Meetings
{% if meetings_total and meetings_total > (meetings_recent | length) %} VIEW ALL ({{ meetings_total }}) {% endif %}
{% if meetings_recent %} {% else %}
No meetings yet for this project.
{% endif %}
// Tickets{% if tickets_open_count %} {{ tickets_open_count }}{% endif %}
{% if tickets_open_count and tickets_open_count > (tickets_recent | length) %} VIEW ALL {% endif %} + NEW TICKET
{% if tickets_recent %} {% else %}
No open tickets on this project.
{% endif %}
// Mileage
{% if mileage_totals.count > 0 %} {{ '%.1f' % mileage_totals.miles }} mi · ${{ '%.2f' % (mileage_totals.cents / 100.0) }}{% if mileage_totals.unsubmitted_cents > 0 %} · ${{ '%.2f' % (mileage_totals.unsubmitted_cents / 100.0) }} pending{% endif %} VIEW ALL {% endif %} + LOG MILES
// Files
Drop files here or click ATTACH FILE
{% if files %}
{% for file in files %} {% set ext = file.filename.rsplit('.', 1)[-1].lower() if '.' in file.filename else '' %}
{% if ext in ['jpg', 'jpeg', 'png', 'gif', 'webp'] %} {{ file.filename }} {% else %} {{ ext | upper }} {% endif %}
{{ file.filename }}
{% endfor %}
{% else %}
No files attached.
{% endif %}
Huyang  ·  {{ project.title }}
{% if chat_history %} {% for msg in chat_history %}
{{ msg.content }}
{{ 'you' if msg.role == 'user' else 'Huyang' }}
{% endfor %} {% else %}

Huyang has read the project.
Ask him anything about it.

{% endif %}
// Below Deck OPEN FULL
Tasks load on bridge.
// Recurrence

A recurring checklist archives its items at the cycle boundary and spawns fresh copies — each cycle is its own set with its own due date and time-tracking lineage.

// Edit Project
// New Meeting
{% set scratch_mode = 'overlay' %} {% include 'includes/scratch_pad.html' %} {% include 'includes/active_timer_strip.html' %} {% include 'includes/today_panel.html' %}