diff --git a/UPDATES.md b/UPDATES.md index 5950687..d5fd006 100644 --- a/UPDATES.md +++ b/UPDATES.md @@ -6,13 +6,7 @@ updatedAt: 2026-09-07T13:44:23+09:00 ### 리더 레이팅 곡 추천 -`NEW` 상위 메뉴에 리더 레이팅 탭을 추가했습니다. 입력한 멤버 5명과 리더·의상·성장 설정으로 가창 대상 곡의 최적 배치를 계산해, 가창곡의 Hard·Expert를 각각 예상 고점 레이팅 순으로 최대 20개, 5개씩 확인할 수 있습니다. 가창 보너스는 모든 곡에 10%를 적용합니다. Hard·Expert 비교, 상위 3곡 합계, 계산 취소와 추천 곡의 상세 배치 확인을 지원합니다. - -리더와 분석 조건, 합산 레이팅과 상위 3곡을 요약해 보여주며, 모바일에서는 추천곡을 카드 형태로 확인할 수 있습니다. 계산 기준은 펼쳐서 확인할 수 있습니다. - -추천곡마다 최고점 및 최고점의 99%·95% 이상 달성 확률을 표시합니다. 상세 배치에서도 같은 확률을 확인할 수 있으며, 최고점은 정확 계산, 99%·95% 이상은 25,000회 반복 계산을 사용합니다. - -‘최대 컴퓨팅 자원 활용’을 켜면 기기의 논리 코어 수에 맞춰 여러 채보를 동시에 계산합니다. 동시 계산 수와 전체 진행률을 표시하며, 취소하거나 입력 조건을 바꾸면 모든 계산을 중단합니다. +`NEW` 입력한 편성에 맞는 리더 가창곡을 레이팅순으로 최대 20개 추천합니다. 5개씩 보기, 상위 3곡 합계, 최고점·99%·95% 달성 확률과 상세 배치를 제공하며 병렬 계산을 지원합니다. 가창 보너스는 10%로 고정합니다. ### 배치 분석의 인게임 1노트 점수 표시 diff --git a/src/lib/engine/release-markdown.test.ts b/src/lib/engine/release-markdown.test.ts new file mode 100644 index 0000000..2e9c34b --- /dev/null +++ b/src/lib/engine/release-markdown.test.ts @@ -0,0 +1,22 @@ +import assert from 'node:assert/strict'; +import test from 'node:test'; +import { renderReleaseMarkdown } from '../release-notes/markdown.ts'; + +test('업데이트의 모든 문단과 목록을 하나의 카드에 묶는다', () => { + const html = renderReleaseMarkdown('## 날짜\n\n### 기능\n\n첫 문단\n\n추가 문단\n\n- 목록\n\n### 다음 기능\n\n설명'); + const cards = [...html.matchAll(/
([\s\S]*?)<\/section>/g)]; + assert.equal(cards.length, 2); + assert.match(cards[0][1], /첫 문단[\s\S]*추가 문단[\s\S]*