Menu
AkurAI-Build
publicLatest change 266a1aa21e346770b48e96f008ab6c2a5a603961 - Complete PR interfaces, isolated CI and crash-safe merge recovery by Ólafur Búi Ólafsson
{% extends "layouts/base.html" %}
{% block title %}{{ pull_request.title }} — {{ repository.name }}{% endblock %}
{% block page %}repository-pull-request{% endblock %}
{% block body %}<main class="ab-public">{% include "partials/public-header.html" %}
<section class="ab-community" aria-labelledby="pr-title">
<p class="ab-kicker"><a href="/repos/{{ repository.name }}/pull-requests">{{ repository.name }} / Pull requests</a> / #{{ pull_request.number }}</p>
<header class="ab-section-heading"><div><h1 id="pr-title">{{ pull_request.title }}</h1><p>{{ pull_request.state|capitalize }} · {{ pull_request.source_ref }} → {{ pull_request.target_ref }} · {{ pull_request.author_display }}</p></div></header>
<article class="ab-panel"><div class="ab-markdown">{{ body_html|safe }}</div></article>
<section aria-labelledby="changes-title"><h2 id="changes-title">Changes</h2>
{% if diff %}<pre class="ab-panel ab-pr-diff" tabindex="0" aria-label="Changed lines"><code>{{ diff.patch }}</code></pre>{% if diff.truncated %}<p class="ab-muted">Large diff: showing the first 512 KiB. Fetch the branches locally for the complete patch.</p>{% endif %}{% else %}<p class="ab-muted">Diff unavailable. Fetch the source and target branches to inspect the changes.</p>{% endif %}</section>
<h2>Reviews</h2><p>{% if approved %}Current changes approved.{% else %}Awaiting independent approval of the current changes.{% endif %}</p>
{% for review in reviews %}<article class="ab-panel"><h3>{{ review.reviewer_display }} · {{ review.state|replace("_", " ")|capitalize }}</h3><p>{{ review.body }}</p><p class="ab-muted">{% if review.head_sha == pull_request.head_sha %}Current changes{% else %}Earlier changes{% endif %}</p></article>{% endfor %}
{% if can_review and pull_request.state == "open" %}<form method="post" action="/repos/{{ repository.name }}/pull-requests/{{ pull_request.number }}/reviews" class="ab-form ab-panel">
<label for="review-state">Review</label><select id="review-state" name="state"><option value="commented">Comment</option><option value="approved">Approve</option><option value="changes_requested">Request changes</option></select>
<label for="review-body">Comment</label><textarea id="review-body" name="body" rows="4" maxlength="65536"></textarea><button class="ab-button" type="submit">Submit review</button></form>{% endif %}
{% if can_write and approved and pull_request.state == "open" %}<form method="post" action="/repos/{{ repository.name }}/pull-requests/{{ pull_request.number }}/enqueue"><button class="ab-button ab-button-primary" type="submit">Add to merge queue</button></form>{% endif %}
<h2>Merge queue</h2>{% if queue %}<ol class="ab-repo-list">{% for entry in queue %}<li><a href="/repos/{{ repository.name }}/pull-requests/{{ entry.pull_request_number }}">Pull request #{{ entry.pull_request_number }}</a><span>{{ entry.status|capitalize }}</span></li>{% endfor %}</ol>{% else %}<p class="ab-muted">No changes waiting to merge.</p>{% endif %}
</section>{% include "partials/public-footer.html" %}</main>{% endblock %}