tag:github.com,2008:https://github.com/PaperDebugger/paperdebugger/releasesRelease notes from paperdebugger2026-02-21T06:14:47Ztag:github.com,2008:Repository/965174143/v2.30.02026-02-21T06:14:47Zv2.30.0: docs: add contributing instructions (#127)<h2><strong>Benefits</strong></h2>
<ol>
<li><strong>Clarity</strong>: New contributors understand the workflow immediately</li>
<li><strong>Consistency</strong>: Team follows the same practices</li>
<li><strong>AI-friendly</strong>: Claude, Copilot, and other tools can learn project<br>
conventions</li>
<li><strong>Safety</strong>: Clear rules prevent accidental breaking changes</li>
<li><strong>Flexibility</strong>: Supports both careful testing and fast iteration</li>
</ol>
<hr>
<h2>Notes</h2>
<p>Refer to <code>CONTRIBUTING.md</code> for context. I've taken the liberty to make<br>
some assumptions / slight tweaks, explained below:</p>
<ol>
<li>Proposed a simplified branch naming convention, using only prefixes<br>
<code>feat/*</code> and <code>fix/*</code>, but we enforce semantic classification (e.g. docs,<br>
chore, feat, fix, ci) in PR titles.<br>
<a href="https://github.com/PaperDebugger/paperdebugger/pull/127/changes#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055R95-R96">[1]</a></li>
<li>Note the standard branching flow (proposed to branch off <code>staging</code><br>
before raising PR to <code>staging</code> and subsequently from <code>staging</code> to<br>
<code>main</code>)<br>
<a href="https://github.com/PaperDebugger/paperdebugger/pull/127/changes#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055R95-R96">[2]</a></li>
</ol>
<ul>
<li>Not sure if we should do this over branching off <code>main</code>. On one hand,<br>
<code>main</code> should always present the latest stable version, but it is also<br>
natural to branch off <code>staging</code> since it is the target branch of the<br>
merge after development.</li>
</ul>
<ol start="4">
<li>Note the merging strategy<br>
<a href="https://github.com/PaperDebugger/paperdebugger/pull/127/changes#diff-eca12c0a30e25b4b46522ebf89465a03ba72a03f540796c979137931d8f92055R95-R96">[3]</a></li>
</ol>
<p><strong>IMPORTANT NOTE</strong>:</p>
<ol>
<li>It seems <code>make test</code> is currently failing for some existing test<br>
cases. To investigate or inform the relevant owners.</li>
<li><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/Junyi-99/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/Junyi-99">@Junyi-99</a> I have disabled <code>Automatically request Copilot code review</code><br>
for PRs to <code>main</code> but included it for PRs to <code>staging</code> since the new<br>
workflow expects heavy / complex changes to first PR to <code>staging</code> before<br>
<code>main</code>. To avoid double-review, i disabled this for PRs to <code>main</code>. Let<br>
me know if you would like to change or revert this.</li>
</ol>
<hr>
<h2><strong>Tasks</strong></h2>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" aria-label="Completed task" checked=""> Create <code>CONTRIBUTING.md</code> with branching strategy section</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" aria-label="Completed task" checked=""> Configure branch protection rules in GitHub settings</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" aria-label="Completed task" checked=""> Set up automated version bumping (if not already configured)</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" aria-label="Completed task" checked=""> Document this in README.md or link to CONTRIBUTING.md</li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox" aria-label="Incomplete task"> Announce new policy to team</li>
</ul>4ndrelimtag:github.com,2008:Repository/965174143/v2.19.232026-02-19T11:51:28Zv2.19.23<p>Merge remote-tracking branch 'origin/staging' into feat/user-cost</p>wjiayistag:github.com,2008:Repository/965174143/v2.29.02026-02-18T18:01:47Zv2.29.0<p>feat: tab completion for citation keys (from <code>feat/tab-completion</code>) (…</p>wjiayistag:github.com,2008:Repository/965174143/v2.28.02026-02-18T17:51:28Zv2.28.0: feat: tab completion for citation keys (from `staging`) (#120)<p>Tested on staging. Functionality works as expected. Latency increased<br>
from 2s to 5s, but I suspect it's because the API key was at the brink<br>
of having no credits left. Will look into the latency more.</p>
<hr>
<p>Co-authored-by: Junyi <a href="mailto:[email protected]">[email protected]</a><br>
Co-authored-by: 4ndrelim <a href="mailto:[email protected]">[email protected]</a></p>wjiayistag:github.com,2008:Repository/965174143/v2.19.222026-02-18T18:02:50Zv2.19.22<p>Merge remote-tracking branch 'origin/main' into staging</p>Junyi-99tag:github.com,2008:Repository/965174143/v2.19.212026-02-18T17:47:57Zv2.19.21<p>Merge branch 'staging' of <a href="https://github.com/PaperDebugger/paperdebug%E2%80%A6">https://github.com/PaperDebugger/paperdebug…</a></p>Junyi-99tag:github.com,2008:Repository/965174143/v2.19.202026-02-18T17:46:54Zv2.19.20: refactor: update styles and prompt selection logic (#103) (#124)<ul>
<li>Improved accessibility by standardizing <code>onKeyDown</code> event handlers to<br>
use consistent formatting for key checks across multiple components.</li>
<li>Refactored layout of JSX elements for better readability in<br>
<code>chat.pb.go</code>, <code>embed-sidebar</code>, and various components in the message<br>
entry container.</li>
<li>General code cleanup to enhance maintainability and readability.</li>
</ul>
<hr>
<div class="markdown-alert markdown-alert-note"><p class="markdown-alert-title"><svg class="octicon octicon-info mr-2" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg>Note</p><p><sup><a href="https://cursor.com/dashboard?tab=bugbot" rel="nofollow">Cursor Bugbot</a> is<br>
generating a summary for commit<br>
<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/PaperDebugger/paperdebugger/commit/0a0680065a0d5589b9b6ceacaf8c72e8968b988f/hovercard" href="https://github.com/PaperDebugger/paperdebugger/commit/0a0680065a0d5589b9b6ceacaf8c72e8968b988f"><tt>0a06800</tt></a>. Configure<br>
<a href="https://cursor.com/dashboard?tab=bugbot" rel="nofollow">here</a>.</sup></p>
</div>
Junyi-99tag:github.com,2008:Repository/965174143/v2.19.192026-02-18T17:29:40Zv2.19.19<p>refactor: improve state management and accessibility in components (#…</p>Junyi-99tag:github.com,2008:Repository/965174143/v2.19.182026-02-17T08:51:18Zv2.19.18<p>chore: merge branch 'main' into staging (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3951562539" data-permission-text="Title is private" data-url="https://github.com/PaperDebugger/paperdebugger/issues/122" data-hovercard-type="pull_request" data-hovercard-url="/PaperDebugger/paperdebugger/pull/122/hovercard" href="https://github.com/PaperDebugger/paperdebugger/pull/122">#122</a>)</p>wjiayistag:github.com,2008:Repository/965174143/v2.19.172026-02-17T07:43:08Zv2.19.17<p>chore: update helm for xtramcp (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="3951324374" data-permission-text="Title is private" data-url="https://github.com/PaperDebugger/paperdebugger/issues/119" data-hovercard-type="pull_request" data-hovercard-url="/PaperDebugger/paperdebugger/pull/119/hovercard" href="https://github.com/PaperDebugger/paperdebugger/pull/119">#119</a>)</p>wjiayis