-
hanyul released this
2026-10-01 08:38:13 +09:00 LINKS 0.17
이전 릴리스 0.16 대비 변경 사항입니다. 루트 패키지는 0.17.0이고 ARCA는 0.1.13을 그대로 사용합니다. 스키마 migration 0054가 추가됩니다.
새 기능과 개선
- 백그라운드 작업 취소: 관리자 작업 관리에서 대기·실행 중인 작업을 하나씩 또는 전부 취소할 수 있습니다. 정보 수집, 게임 인식 확인, 실행 빌드 준비에도 취소 버튼을 추가했습니다. 이미 완료된 결과, 원본, 세이브는 되돌리지 않습니다.
- 실행 빌드 관리 (migration 0054): 관리자 상세에서 현재 빌드와 이전 실행 버전을 제거하거나 다시 빌드할 수 있습니다. 게임 상세의
게임 관리버튼으로 바로 이동합니다. 제거는 실행 선택만 해제하며 원본, 세이브, 이력은 보존합니다. - MV/MZ 실행 준비:
- 준비 과정을 8단계로 표시합니다.
- 중복 목록 순회를 6회에서 3회로, 전체 원본 hash 검사를 3회에서 1회로 줄였습니다.
- 원본 읽기 동시성 설정(
LINKS_RUNTIME_SOURCE_READ_CONCURRENCY, 기본값 1)을 추가했습니다.
- 실제 MV/MZ 부팅 수정: 다음 문제를 고쳤습니다.
- 파일명 대소문자 불일치
- System sentinel 검사
- script XHR, Vorbis Worker, 글꼴 연결
- 동일 artifact를 재봉인할 때 cache가 무효화되던 문제
- 플레이어:
- MV/MZ 상단 재시작, 음량, 음소거를 연결했습니다.
- 화면 크기를 선택할 수 있습니다(맞춤, 50–200%, 꽉 채우기).
- 준비 진행 막대를 가운데로 정렬했습니다.
- 진단: 실행 준비가 실패해도 버그 신고를 보낼 수 있습니다. 신고에는 서버 오류 요약과 실제로 실패한 작업의 UUID가 함께 전달됩니다.
- 안정성:
- worker 시작에 실패하면 연결을 정리하고 종료합니다.
- CSRF token을 세션별로 복원해 여러 탭을 오가도 저장·해제가 유지됩니다.
- 개발 CA를 bind mount로 옮겨 Docker volume을 정리해도 남습니다.
- 큰 글자 모드 390px 화면에서 게스트 저장 안내가 2px 넘치던 문제를 고쳤습니다.
- 로그인 화면에서 누르면 아무 동작도 하지 않던 버튼을 제거했습니다.
제거와 정리 (호환성 변경)
/bookmarks호환 주소 제거: 개인 라이브러리 주소는/library만 사용합니다./api/v1/bookmarksAPI는 유지합니다.- 번역 검수 API 제거: 관리자 UI는 이미 없었습니다. 번역 결과 offline import와 DB에 저장된 검수 이력은 유지합니다.
- ARCA 단일 ZIP 의존성 취득 경로 제거 (
runtime.dependency.acquire,dependency-acquirerservice·profile): ARCA는 npm 정식 배포본을 이미지에 내장하는 경로만 사용합니다.- 기존 DB table과 승인·감사 이력은 보존합니다.
- 과거 작업은 관리자 화면에
(제거된 작업)으로 표시됩니다. - 운영
.env의LINKS_RUNTIME_DEPENDENCY_*와LINKS_DEPENDENCY_ACQUIRER_DATABASE_PASSWORD는 더 이상 쓰지 않습니다.prepare-develop이 이런 key를 경고로 알려 줍니다.
- 쓰지 않던 RGSS 코드 제거:
- 구 launch ABI와 구 RTP source/sealed 모듈을 삭제했습니다.
- same-origin OPFS adapter와 관련 runner를 삭제했습니다.
- 새로 만드는 RGSS generation의
bootstrap.mjs는 직접 실행 불가 안내로 줄였습니다. 이 때문에 새 generation의 frontend bytes가 바뀌어 RGSS build가 한 번 다시 생성됩니다. 기존 generation과 세이브는 그대로 동작합니다.
- 중복 구현 통합 (wire 형식과 hash byte는 변경 없음):
- GC 적격성 판정, 목록 cursor codec, DB role 생성
- canonical JSON, scanner sealed-store helper
- web의 API 형식 로컬 사본을 공유 contracts로 교체
- 테스트 정리:
- 10,875줄 schema 테스트를 도메인별 파일 5개와 공용 fixture로 나눴습니다.
- 삭제된 UI를 검사하던 테스트, 항상 통과하던 테스트, 중복 browser check를 정리했습니다.
- 원래부터 실패하던 검사(
built-navigation,editions,player-layout, backup 저장 복구,foundation)를 현재 UI에 맞게 고쳤습니다. - Windows Git Bash에서
.shrunner가 경로를 잘못 읽던 문제를 고쳤습니다.
문서
- README를 프로젝트 소개 문서로 새로 썼습니다.
- 모든 기준 문서를 현재 코드와 대조해 정리했습니다(문서 전체 약 5,500줄 → 약 4,160줄).
- 게임 진단 문서 2개를
게임_호환성_진단.md하나로 합쳤습니다. - UI/UX 제안 문서는 남은 제안만 개발 계획으로 옮기고 지웠습니다.
업그레이드
- 새 이미지
git.2ex.dev/hanyul/links:0.17(=latest)을 pull해 배포합니다. migration 0054는 기동할 때 적용됩니다. dependency-acquirerservice와runtime-dependency-liveprofile을 쓰고 있었다면 운영 Compose에서 제거됩니다.
검증
- PASS (병합된 전체 코드, Docker):
- static, unit 83개 파일/475개 test, schema 10개 파일/65개 test
- scanner, correlation, provider, foundation
- runtime-workers, backup-restore, 번역 import
- catalog·passkey acceptance
- source-mount browser check 전체(Chromium, Firefox)
- PARTIAL: Firefox 오디오 출력. 컨테이너 AudioContext 제약 때문입니다.
- NOT RUN: 실제 게임 전체 acceptance(입력·오디오·save/reload), NAS 배포. 개발 서버 재빌드와 health는 이번 릴리스에서 확인했습니다.
Downloads 2
-
Source code (zip)
0
2026-10-01 08:38:13 +09:00 -
Source code (tar.gz)
0
2026-10-01 08:38:13 +09:00