Skip to content

Release Notes

Sangyong Bae edited this page Sep 3, 2026 · 11 revisions

릴리스 이력

전체 자산·체크섬: GitHub Releases

v0.2.14 (2026-08-30)

클립보드 3-OS 자체 구현 — Ctrl/⌘+V 이미지 붙여넣기 = PNG 전송이 세 OS 모두 외부 도구 없이 동작.

  • Linux: Wayland(ext_data_controlwl_data_device 폴백) · X11 셀렉션 직접 — GNOME 기본에 wl-copy/xclip이 없어 텍스트까지 실패하던 것 해소(배포판 무관).
  • macOS: NSPasteboard 직접 — pbcopy/pbpaste/osascript 임시 파일 경로 폐지.
  • 자동 실행 mac 슬롯 회귀 · install-local.sh mac 정정.
  • 배포: brew 0.2.14 ✓ · winget/Chocolatey 검수 중(제외 — 09-01 winget v0.2.14 매니페스트 재제출).

v0.2.13 (2026-08-29)

  • 자동 실행 인스턴스별 슬롯 — 설치본과 개발 빌드가 OS 자동 실행 슬롯 1개를 줄다리기해 등록이 지워지고 설정이 꺼지던 문제 → 실행 파일 경로 해시로 슬롯 분리(3-OS · 옛 이름 1회 이관).
  • tools/install-local.sh — 릴리스 빌드를 설치 자리에 덮어써 설치본처럼 실행.

v0.2.12 (2026-08-29)

  • 트레이 "열기" 진짜 포커스(Linux) — GNOME 셸이 넘기는 xdg-activation 토큰으로 창을 전면에(종전 = 주의 요청만).

v0.2.11 (2026-08-29)

  • 테마 시스템 추종(ui.theme = system/dark/light · 기본 system · 3-OS 실시간) · Linux 창 app_id(Dock 톱니바퀴 해소) · 트레이 Wayland 대응 · 종료 시 액터 join 2초 상한(강제 종료 창 해소).

v0.2.10 (2026-08-29)

  • Linux .deb 런처 결함 정정Exec=nexa-beep --window가 네트워크 없는 데모(에코 봇)를 띄우던 것(v0.2.2~0.2.9 Linux 전부) → 무인자 실물.

v0.2.9 (2026-08-24)

  • 교체형 설치 자리 데이터 소실 정정 — mac .app·brew keg처럼 업그레이드가 폴더째 갈아끼우는 자리는 포터블로 판정하지 않고 사용자 폴더에 영속(옛 data/ 1회 이관).

v0.2.8 (2026-08-24)

  • 자동 실행 외부 삭제 존중 — OS에서 등록을 지우면 재등록하지 않고 설정을 끄고 알린다.

v0.2.7 (2026-08-24)

  • 그룹창 파일 송수신 통합 — 발신 카운터 · 수신 그룹 스레드+합산 배너 · 자동 취소 · 그룹 후 같은 파일 1:1 오라우팅 근절.
  • 배포 규칙: winget/Chocolatey는 직전 검수 완료 시에만 포함(대기 = brew·Releases만).

v0.2.6 (2026-08-23)

목록 필터 바 · 서버 공개 카드 · 원격 파일 정책 개편 — UX·정책 대규모 업데이트.

  • 목록 필터 바 — 툴바 아래 아이콘 칩 3그룹(Via 전체·로컬·서버·인터넷·그룹 / On 전체·온라인·오프라인 / Who 전체·인증·핀·신규). 선택은 저장되어 재시작 후 유지. 모든 칩·툴바 버튼에 툴팁.
  • 서버 공개 목록의 즉시 프로필 — "서버 사용자에게 나를 표시"를 켠 사용자끼리는 공개로 둔 이름·이메일·소개가 연결 없이 즉시 목록에 보인다(옵트인 항목만 · 연결 후 실제 프로필이 우선).
  • 원격 파일 정책 개편 — 파일 발신은 설정 › Server의 "via server 상대에게 파일 전송" / "via internet 상대에게 파일 전송"(기본 둘 다 끄기)으로 경로별 허용. 수신은 제한 없음 — 승인 창이 경로(via local/server/internet)를 색 배지로 또렷이 표시하고 사람이 결정.
  • 서버 검증 게이트 — Managed 전환·값 변경은 자동 접속하지 않고 [Test] 성공만이 접속을 연다(성공은 저장 — 부팅 자동 유지). 접속 중엔 툴바에 표시(클릭 = 서버 설정).
  • 대화 헤더 개편 — 툴바 높이(48px)·상대 아바타+이름 · via server(파랑)/via internet(주황) 배지 분리.
  • LAN 프로필 즉시 동기 — 같은 망 상대는 발견 즉시 자동으로 조용한 세션이 서서 프로필·변경이 실시간 반영(서버 무관).
  • 프레즌스 표시 — 목록 점 = 색(지금 닿는가) × 실루엣(세션 유무): 서버 공개 사용자도 초록으로.
  • 기타: 아바타 부팅 깜빡임 제거 · 읽음 확인 = 활성 창 기준 · 창 최소 크기 474×689 · 설정 초기화 확장(필터·창 크기 포함, 프로필 정보 보존) · 지문 복사 [64][8] 버튼.
  • 배포: Homebrew 자동 추종(0.2.6 ✓) · winget/Chocolatey는 첫 게시 검수 통과 대기로 계속 제외.

v0.2.5 (2026-08-22)

  • 서버 사용자 자동 목록(roster) — "서버 사용자에게 나를 표시"(기본 켜짐)를 둔 사용자끼리 서버 접속만으로 서로 목록에 표시(공개키만 · 상호 공개 규칙).
  • 프로필 지문 복사 버튼 — 우측 상단 [전체 64]·[짧은 8] (64가 ⌘/Ctrl+K 연결 값).
  • 서버 릴리스 beepd-v0.2.5(별도) — roster 지원 · 패키지 매니저 3채널 첫 게시 (brew 탭 즉시 · winget/choco 검수 대기). → Relay-Server

v0.2.4 (2026-08-22)

  • 기본 릴레이 서버 탑재 — 설정 › Server를 Managed로 켜면 beepd.sosomlab.com (앱 기본값)으로 등록. 첫 실측: 집(맥)↔회사(윈도우) 실 NAT 연결 성립.
  • 서버 설정 UX 일습 — 주소 텍스트 입력(도메인) · 포트 표시 수정 · 연결 테스트 버튼 · 검증 영속(초록 "Server verified") · 접속/포트/타입 상태 표시.
  • 콤보 직접 입력 = 완전한 텍스트 편집(선택·드래그·클립보드·우클릭 메뉴).

v0.2.3 (2026-08-22)

  • 서버 접속 개통(클라) — GUI Managed 접속(TOFU 핀·자동 재접속)·주소 모달 지문 연결·CLI --server/--chat-connect-via · 자유 입력 설정 영속 수정.
  • 서버 첫 릴리스 beepd-v0.2.3(별도 · Linux musl 정적) — UDP 홀펀칭+릴레이 폴백.

v0.2.2 (2026-08-21)

  • 경로 2축(원격 정책 — 인터넷 경유는 지문 대조 전 파일 차단) · 아카이브 점검 완결 (zip64·격리 내용 목록) · 크립토 셰레딩(대화 삭제 = 키 폐기) · AMSI 실물 검사(Win).
  • winget·Chocolatey 첫 제출(검수 대기) — 배포 3채널.

v0.2.1 (2026-08-21)

  • 1:1 오프라인 큐(재시작 유지·자동 전달) · 클립보드 이미지 전송(Ctrl+V · 3-OS) · 메시지 등급·공지 브로드캐스트 · 안정성 2건(클립보드 UAF·경로 경합).

v0.2.0 (2026-08-20)

마이너 승격 — 시스템 시작 자동 실행과 Windows 콘솔 창 근절. 실행 경험이 바뀌는 변경이라 0.1.x가 아니라 0.2.0이다.

  • 시스템 시작 시 자동 실행(3-OS · 사용자 수준 등록 — Windows HKCU\…\Run · macOS LaunchAgent · Linux XDG autostart). 기본 켜짐(옵트아웃 · 설정 ▸ 고급 app.autostart) · 포터블을 옮겨도 부팅 시 경로를 다시 맞춘다
  • Windows 콘솔 창 근절 — 그전엔 GUI를 띄워도 검은 콘솔이 남았다(Windows Terminal에서는 FreeConsole도 무력). windows 서브시스템으로 전환하고 CLI 출력은 부모 콘솔에 붙여 보전한다
  • 대화형 CLI 입력 경합 해소cmd/pwsh에서 --chat-live를 부르면 셸이 앱을 기다리지 않아 키 입력이 나뉘어 사라졌다. 그 경우 앱이 자기 콘솔 창을 새로 연다(Git Bash·파이프는 그대로)
  • 대화함 풀다운 메뉴 항목 추가

v0.2.0 이후 (다음 릴리스 예정분)

CLI 단말 축 완결--chat-live가 단순 대기에서 조회·선택·능동 연결이 되는 단말로:

  • /peers 발견 목록 · /connect <번호> 골라서 대화 · /connect <host[:port]> IP 직접(포트 생략 = 47200)
  • 요청 단위 승인 + 다중 /send(공백 구분 · 요청당 최대 5) — GUI와 같은 규칙
  • 수신/읽음 확인 — 터미널은 출력 = 봄이라 즉시 되쏜다
  • 수신 전용 채널 구조 — 인바운드는 전부 수락해 세워 둔다(표시·확인만 · 대화 자동 진입 없음). 거절하면 상대 GUI가 무한 재시도해 로그가 홍수가 됐다
  • GUI→CLI 파일 수신이 전멸하던 것 수정(지연 해시 꼬리 보정 누락)

v0.1.8 (2026-08-20)

대용량 전송 축 완성 + 전송 UI 대화창 통합.

  • 발신 스트리밍 + 지연 해시 — 10GB급도 메모리에 올리지 않고 전송(UI 무정지) · 해시는 전송하며 계산해 완료 시 검증
  • 송수신 용량 상한 — 발신 무제한·수신 512MiB 기본 · 송신 전 상대 상한 확인(읽기 전 차단)
  • 전송 재개(이어받기) — 끊긴 부분을 봉인 보존, 재연결 시 N%부터(해시 대조 fail-closed)
  • 인챗 전송 제어 — 별도 창 제거 · 풍선 안 ⏸▶✕(양방향 동치) · 배치 배너+전체취소 전파 · 정지 방치 자동 취소(기본 2분)
  • 요청 단위 승인·거절 — 다중 파일 = 승인 1회(목록·총합·제외 표시) · 거절 1회 = 전체 · 요청당 최대 파일 수(1~5)
  • 대화함 — 저장된 대화 기록 관리(목록·미리보기·필터·클릭 열기·2단계 삭제·sealed 백업/복원)
  • 그룹 영속 — 그룹 대화 기록 재시작 복원 · 잠긴 세그먼트 자가 복구 · 초대 자가 수락
  • 지문 기반 검증(/fingerprint+/verify) · 평문 3면 봉인(격리물·PII·프로필 캐시) · Bio 멀티라인 · i18n 전면 · 데이터 폴백 durable(~/.nexa-beep) · 상태 로깅(옵션)

v0.1.7 (2026-08-15)

  • 알림(3-OS) — 정식 데스크톱 알림(mac UNUserNotificationCenter·Windows·Linux) · 클릭하면 해당 대화(단일 창 = 전환 · 분리 창 = 대화 창)
  • 트레이/메뉴바 상주 완주(Windows) — 아이콘 = 내 아바타 합성 · 우클릭 = 이름·열기·종료 · ui.close_to_tray(X = 트레이로 숨김 · 기본 off)
  • 신뢰 배지 개편 — 연결 상태를 색 + 실루엣 2중 부호화(적록 색각·저대비 대응) · 인증 배지 가족(차단·이름 충돌·첫 접촉)
  • SAS 대조 지점 — 상대 프로필 카드에 안전 번호 출력·대조 완료 버튼(이후 08-18에 지문 비교로 전환)
  • M1 발견 견고화 · 대화창 명령 /… 도입

v0.1.6 (2026-08-13)

첫 2-PC 실증(Windows↔macOS IP 수동 등록·메시지·파일 왕복)에서 나온 피드백 일습.

  • 읽지 않은 메시지 배지 — 목록에 개수 배지 + 마지막 확인 시각 · 주 창 제목 "새 메시지 N"(작업 표시줄에서 보임)
  • 인바운드 자동 열림 제거 — 상대가 연결해도 창을 뺏지 않는다(목록·배지로만 알림 · 여는 것은 사용자)
  • 자동 재연결 — 끊긴 상대를 5초→15초→60초→5분 백오프로 재시도, 상한 후 중단(클릭 = 재개)
  • 죽은 연결 감지 — TCP keepalive로 FIN 없는 죽음(전원 차단·강제 종료·망 단절)을 ~22초 내 감지(실측) → 목록 점 빨강
  • 비발견 상대 목록 유지 — 다른 서브넷의 수동 등록 상대가 대화창을 닫아도 목록에 남고, 기억한 주소로 재연결
  • 파일 전송 자격 경고 모달 — 상호 대화 규칙 미달 시 "왜 + 뭘 하면 되는지"를 모달로(스팸 방어 규칙의 가시화)
  • 텍스트 편집 일습 — 복사/잘라내기/붙여넣기가 모든 입력창에서 동작 · 긴 텍스트 가로 스크롤(캐럿 상실 해소) · 영역 밖 드래그 자동 진행
  • 주소 등록·프로필 창 = 항상 위 모달 · --port <N> 실행 인자(세션 한정)
  • 파일 전송이 2MiB에서 끊기던 다중화 백프레셔 수정 · 터미널(kitty 프로토콜) 상태 누수 3중 방어 · --chat-live 떠돌이 연결 내성

v0.1.5 (2026-08-13)

  • 세션 기본 포트 47200 — 우선 바인딩(점유 시 임의 폴백) · 설정 net.session_port(듣는 포트 = 포트 생략 시 거는 포트 · 즉시 적용) · 주소 입력에서 포트 생략 가능(10.0.0.5:47200) · 상태바에 실제 수신 포트 상시 표시 — 발견이 닿지 않는 상대와의 수동 연결이 예측 가능해졌다
  • 이미지 미리보기 픽셀 상한 4096² — 폰 사진(12MP급)이 거부되던 것 해소(격리 디코드 원칙은 유지)

v0.1.4 (2026-08-12)

  • 설정 영속 — 테마·시간 형식 등 모든 설정이 재시작 후 유지
  • 신원·신뢰 핀 영속 — 재시작해도 같은 신원·같은 신뢰(TOFU 핀 암호화 저장) + 신원 키 백업/복원(핫 로딩)
  • 표시 이름 정제 기본값 — 실명이 LAN에 평문 방송되지 않음(변경 시 즉시 재공지)
  • 프로필 — 편집 화면(사진·이름·이메일·전화)·항목별 공개 토글(기본 비공개)·연결된 상대와 세션 경유 교환·목록 아바타 2줄 행·우클릭 프로필 보기 카드
  • 이미지 격리 디코드(imgdec) — 아바타 실사진·수신 이미지 미리보기(격리함·대화). 디코더는 격리 프로세스에만(본체 미링크) · 5타깃 전 채널 동봉
  • Windows MotW(Zone.Identifier) 표식 · Switch 컨트롤·컨트롤 크기 옵션 · 설정 설명 워드랩

v0.1.3 (2026-08-11)

  • Windows 더블클릭·시작 메뉴 무반응 수정 — 탐색기 실행 감지 → 창 모드(macOS 번들 판정과 대칭)
  • 파일 전송 종단 확인(ack) — 발신 "완료"가 소켓 쓰기가 아니라 수신측 격리 성공으로 확정("전달됨 · 확인 대기" → 완료) + 미확인 전송 중 종료 가드
  • 주소 직접 연결 모달(⌘/Ctrl+K) — 형식 검증(host:port · [v6]:port)
  • 연결 무정지 완결 — 수동 주소 연결도 워커 스레드로(죽은 주소에 UI가 멈추지 않음) · 목록 행 "연결 중" 표시
  • Windows 배포 실기 검증(설치/업그레이드/제거·MotW 전파·winget validate) 반영

v0.1.2 (2026-08-11)

  • macOS 앱 더블클릭 무반응 수정.app 번들 실행 = 창 모드 + 실물 발견
  • 클립보드 macOS/Linux 실물 구현(pbcopy · wl-copy/xclip)
  • 스크롤바 자동 숨김을 벽시계 기준으로 정정 + ui.scrollbar_hide 설정
  • 컨텍스트 메뉴 컨트롤 신설(말풍선·입력란 우클릭)

v0.1.1 / v0.1.0 (2026-08-11 · 첫 공개)

  • 5타깃 × 2채널 배포 파이프라인(태그 push 자동 공개) — Windows x64/ARM64 · macOS x64/ARM64 · Linux x64
  • NSIS 설치본(사용자 단위·무권한) · dmg · deb · 포터블(zip/tar.gz) · SHA256SUMS.txt
  • Homebrew 탭(kiros33/tap) — Cask(.app) + Formula(포터블)
  • winget·Chocolatey 매니페스트 자동 생성(게시는 스위치로 잠금)
  • macOS 격리 실측 반영: 서명 없는 앱 + quarantine = SIGKILL → Cask postflight 격리 제거(임시방편 — 서명·공증 로드맵)