Add UI-based merge conflict resolution#166
Conversation
…t conflict resolution
|
/crush_fast {{openrouter, google/gemini-3.1-pro-preview, google/gemini-3-flash-preview}} AI review started. |
Advanced AI Review
Click to expand review1. 🔴 Conflict wrappers are appended to the bottom of the table, breaking file order
In To fix this, insert the
const firstRow = group[0];
const parentNode = firstRow.parentNode;
// Create wrapper container row
const wrapperRow = document.createElement('tr');
wrapperRow.className = 'conflict-wrapper-row';
// Insert wrapper into the table tree BEFORE we detach the conflict lines
if (parentNode) {
parentNode.insertBefore(wrapperRow, firstRow);
}
const wrapperCell = document.createElement('td');
wrapperCell.colSpan = 6;Be sure to remove the faulty insert statement at the end of the block: - // Insert wrapper before the first conflict line's original position
- parentNode.insertBefore(wrapperRow, null);2. 🔴 Unmatched additions and deletions are hidden as context lines instead of conflicts
In Because your JS gathers conflicts based on Separate actual identical context lines (
3. 🟡 Active state styling is missing on the Conflicts tab
The PR description states "add active state styling to conflicts tab in change request menu". However, the anchor tag for the new Conflicts tab lacks the conditional
4. 🟡 Incorrect and mismatching backgrounds for right-side code
In It is better to rely on
/* Right code content: match gutter #FFE7D1 */
.conflict-inner-table .add-code .lines-code-new {
- background: #ffe7d1 !important;
+ background: #e5e9ff !important;
}5. ⚪️
|
Closes #153