fix(reverse_sync): preserved anchor 리스트의 아이템 제거를 XHTML에 반영합니다#978
Merged
fix(reverse_sync): preserved anchor 리스트의 아이템 제거를 XHTML에 반영합니다#978
Conversation
numbered list에서 빈 항목(12.)을 제거하고 이전 항목에 병합할 때, preserved anchor(<ac:image>)가 있는 리스트의 XHTML 패치가 누락되는 현상을 재현합니다. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
numbered list에서 빈 항목(12.)을 제거하고 이전 항목에 병합할 때, preserved anchor(<ac:image>)가 있는 리스트의 XHTML 패치가 누락되는 문제를 수정합니다. - _build_list_item_merge_patch: 아이템 수 변경 시 XHTML DOM 직접 조작 - 제거된 아이템의 <ac:image> 등을 이전 아이템으로 이동 - 빈 <p> 제거하여 불필요한 <br/> 방지 - 텍스트 변경은 _apply_text_changes로 처리 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
git show main:src/content/...로 덮어써서 의도치 않게 변경된 fixture를 원래 테스트케이스 생성 시의 내용으로 복원합니다. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
기존 fixture에서 12. 제거만 반영하고, 의도치 않은 콜론 공백 변경을 복원합니다. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- isu_001 (confluence-mdx/bin/reverse_sync/patch_builder.py:463): 여기서는 삭제 여부를 들여쓰기별 개수 감소로만 계산한 뒤, 같은 depth의 모든 <ol>/<ul>에서 마지막 <li>를 병합합니다. 그래서 preserved anchor가 있는 항목이 중간에서 삭제되거나 같은 depth의 하위 리스트가 둘 이상 있으면 실제로 바뀌지 않은 마지막 항목까지 함께 병합되어 XHTML이 잘못 생성됩니다.
- isu_002 (confluence-mdx/bin/reverse_sync/xhtml_patcher.py:377): bold 제거와 경계 이동은 처리하지만, bold 추가(len(new) > len(old))는 return으로 무시됩니다. preserved anchor를 포함하는 p에서 새로운 bold 서식을 추가하는 MDX 편집은 이 함수에 도달하지만, 아무 변경 없이 반환되어 bold 적용이 누락됩니다.
Contributor
Author
|
[debate-review][sha:8d12fe87308c17152ddea1a78869d09c462da2b1] Consensus reached after 5 rounds. Debate Summary
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
<ac:image>)가 있는 리스트의 XHTML 패치가 누락되는 버그를 수정합니다._build_list_item_merge_patch함수 추가: 아이템 수 변경 시 XHTML DOM을 직접 조작하여<li>병합/제거 수행원인
<ac:image>포함 →_contains_preserved_anchor_markupTrue →should_replace_clean_listFalsesidecar_block_requires_reconstructionFalse (reconstruction metadata 없음)<li>제거 안 됨 → FC가12.재생성수정 내용
_count_mdx_list_items: MDX 리스트의 indent 레벨별 아이템 수 계산_build_list_item_merge_patch: preserved anchor 리스트에서 아이템 제거 시 원본 XHTML DOM 직접 조작<li>의 자식(<ac:image>등)을 이전<li>로 이동<p>제거하여 불필요한<br/>방지_apply_text_changes로 처리Test plan
TestListItemRemovalWithPreservedAnchor)expected_status: pass)🤖 Generated with Claude Code