Commit Graph
100 Commits
Author SHA1 Message Date
Hide_D 5248fd68d4 merge: NPC 자동 선포의 유저국 대상 조건을 맞춘다 2026-08-24 10:26:45 +00:00
Hide_D 375670277f merge: 최신 main을 NPC 자동 선포 호환 브랜치에 반영한다 2026-08-24 10:25:53 +00:00
Hide_D 91848f3f6f fix: NPC 자동 선포에서 방랑 유저국을 제외한다
Ref GeneralAI와 같이 level 0 방랑군을 가중 선포 후보에서 제외한다. 정식 유저국과 NPC국은 같은 가중치를 유지하고 후보 및 RNG 순서를 회귀 테스트로 고정한다.
2026-08-24 10:25:40 +00:00
Hide_D a29b927908 merge: 턴 데몬 메모리 재발 방지 계측을 반영한다 2026-08-24 10:24:40 +00:00
Hide_D 4a3410d810 feat: 턴 데몬 메모리 계측을 추가한다
RSS와 V8 heap, 월드 entity 수를 bounded 로그로 기록하고 heap 상한 80% 이상을 경고한다.
2026-08-24 10:24:21 +00:00
Hide_D 5389f8ed94 merge: 실제 transport 권한과 커맨드 내구 행렬을 main에 반영한다 2026-08-24 09:45:04 +00:00
Hide_D b41fac08c1 test: 최신 아이콘과 동시 선택 fixture를 교정한다 2026-08-24 09:42:25 +00:00
Hide_D 98db74491f merge: 최신 main을 transport 권한과 durable 검증에 최종 통합한다 2026-08-24 09:19:08 +00:00
Hide_D d6a9a426fb docs: Game API daemon transaction inventory를 현재화한다 2026-08-24 09:18:58 +00:00
Hide_D 69000d4cb9 test: 조건부 통합 fixture의 시계와 소유권을 격리한다 2026-08-24 09:18:52 +00:00
Hide_D 7a1254cb3a fix: 투표 UTC wall과 migration 시간대 경계를 고정한다 2026-08-24 09:18:42 +00:00
Hide_D 821b8a0723 fix: NPC 빙의 seed를 Ref 논리 tick과 일치시킨다 2026-08-24 09:18:08 +00:00
Hide_D 24a38a097d merge: NPC 정책 권한 버튼 재검사를 main에 반영한다 2026-08-24 08:56:50 +00:00
Hide_D 5088daa396 fix(frontend): NPC 정책 실행 버튼 권한을 재검사한다
조회 전용 사용자는 정책 초안을 계속 편집할 수 있게 유지하고, 수정 권한이 없으면 초깃값·이전값·설정 버튼을 DOM과 핸들러 양쪽에서 차단한다. Chromium 회귀에서 disabled 상태와 초안 보존을 확인한다.
2026-08-24 08:54:57 +00:00
Hide_D b2b9186148 merge: 외교권자와 조언자 복수 임명을 main에 반영한다 2026-08-24 08:47:44 +00:00
Hide_D a6f1fcf784 merge: 최신 main을 외교 권한 복수 임명 수정에 최종 통합한다 2026-08-24 08:47:05 +00:00
Hide_D 4671c48a8a merge: 최신 main을 Ref 전용 아이콘 검증 제외에 통합한다 2026-08-24 08:46:04 +00:00
Hide_D cd0f50f89d fix(migration): 검증 실패 아이콘을 명시적으로 제외한다
검토한 회원 번호의 이미지가 계속 유효성 조건을 어길 때만 업로드에서 제외한다. 기존 Ref 경로가 현재 선택인 경우 기본 아이콘으로 정리하고 최신 Core 선택은 보존한다.
2026-08-24 08:45:47 +00:00
Hide_D 210bc554e8 merge: 병합 직전 main을 외교 권한 복수 임명 수정에 통합한다 2026-08-24 08:44:53 +00:00
Hide_D e8c9546d3a merge: 메시지 삭제 tombstone 호환을 main에 반영한다 2026-08-24 08:44:14 +00:00
Hide_D 006209bbe8 merge: 최신 main을 메시지 tombstone 변경에 다시 통합한다 2026-08-24 08:42:38 +00:00
Hide_D 68a3186de3 merge: 최신 main을 외교 권한 복수 임명 수정에 다시 통합한다 2026-08-24 08:42:30 +00:00
Hide_D b3f5553882 merge: 유저 장수 preset 아이콘 차단을 main에 반영한다 2026-08-24 08:41:28 +00:00
Hide_D 7ef48426ff merge: 최신 main을 유저 preset 아이콘 차단에 통합한다 2026-08-24 08:41:19 +00:00
Hide_D 4335f12915 merge: 자원 수입 문구 반올림을 main에 반영한다 2026-08-24 08:40:09 +00:00
Hide_D b8b7f7e356 merge: 최신 main을 메시지 tombstone 변경에 통합한다 2026-08-24 08:39:39 +00:00
Hide_D 98d9115a61 fix: 삭제 메시지를 tombstone으로 보존한다
메시지 삭제 시 유효기간을 만료시키지 않고 본문을 삭제 안내로 치환해 송수신 행을 유지한다. 외교 메시지 조회 권한 부족은 삭제 상태와 분리하고 API, PostgreSQL 통합, Chromium 회귀 검증을 추가한다.
2026-08-24 08:39:10 +00:00
Hide_D 833ade670c fix: 유저 장수 preset 아이콘 적용 차단
사람 장수는 활성 전용 아이콘 ID를 명시한 경우에만 사용자 아이콘을 사용한다. 일반 생성, 선택 pool, Gateway 서버 동기화의 대표·후보 preset fallback을 제거하고 회귀 검증을 추가한다.
2026-08-24 08:38:50 +00:00
Hide_D 3627dfed92 merge: 최신 main을 외교 권한 복수 임명 수정에 통합한다 2026-08-24 08:38:45 +00:00
Hide_D 87e565ae72 fix(game): 외교권자와 조언자 복수 임명 UI를 복원한다
Ref처럼 역할별 후보를 분리하고 클릭과 터치만으로 최대 두 명을 선택할 수 있게 한다. API 후보·엔진 payload·모바일 Chromium 회귀를 함께 고정한다.
2026-08-24 08:38:38 +00:00
Hide_D 669caf2f94 merge: 최신 main을 자원 수입 문구 수정에 통합한다 2026-08-24 08:37:16 +00:00
Hide_D a46b42d2ce merge: 추방 보호 대상 차단을 main에 반영한다 2026-08-24 08:36:34 +00:00
Hide_D 7596c6bdc6 fix(game): 자원 수입 문구를 정수로 반올림한다 2026-08-24 08:35:02 +00:00
Hide_D 6f19869f0f merge: 최신 main을 추방 보호 변경에 통합한다 2026-08-24 08:34:36 +00:00
Hide_D c6459a64dd fix: 추방 보호 대상을 서버에서 차단한다
인증된 실행자와 현재 world의 대상을 기준으로 본인, 군주, 수뇌, 외교권자를 mutation 전에 거부한다. 인사부 후보와 엔진 무변경 회귀, 실제 Chromium 후보 검증을 함께 추가한다.
2026-08-24 08:33:57 +00:00
Hide_D c88a8de9bc merge: 최신 main을 Ref 전용 아이콘 API 이관에 통합한다 2026-08-24 08:33:25 +00:00
Hide_D 0c5dee1af8 fix(migration): Ref 전용 아이콘을 업로드 API로 이관한다
전용 아이콘 바이트를 모두 검증한 뒤 sam-image 서명 API에 결정적 경로로 등록한다. API 반환 경로를 계정과 아이콘 소유 목록에 연결하고 Core에서 바뀐 현재 선택은 보존한다.
2026-08-24 08:33:19 +00:00
Hide_D 0c6ef3e9b0 merge: 지도 하단 툴팁 교정을 main에 반영한다 2026-08-24 08:32:47 +00:00
Hide_D b84f31d098 fix(game-ui): 지도 하단 도시 툴팁을 위로 전환한다
남만, 교지, 남해, 대처럼 지도 하단에 있는 도시의 툴팁이 지도 경계 밖으로 잘리지 않도록 실제 높이를 기준으로 세로 배치를 전환한다. 실제 CHE 좌표를 사용하는 Chromium 회귀 검증을 추가한다.
2026-08-24 08:29:45 +00:00
Hide_D 69e34e3c95 merge: 자동 외교와 선전포고 분리를 main에 반영한다 2026-08-24 08:15:56 +00:00
Hide_D 071f34d6e4 merge: 최신 main을 자동 외교 분리 브랜치에 통합한다 2026-08-24 08:15:37 +00:00
Hide_D 4efc9a7679 feat: 사용자 군주 자동 선전포고를 분리한다 2026-08-24 08:14:53 +00:00
Hide_D 0fda5fe678 merge: 가오픈 장수 삭제 시각 수정을 main에 반영한다 2026-08-24 08:14:09 +00:00
Hide_D e425849216 merge: 최신 main을 가오픈 장수 삭제 시각 수정에 통합한다 2026-08-24 08:13:10 +00:00
Hide_D 907b7db1c6 fix(game): 가오픈 장수 삭제 대기를 실제 접수 시각에 맞춘다
미래 정식 오픈에 고정된 게임 시각과 durable input event 접수 시각을 분리한다. 일반 생성과 선택 풀 생성의 삭제 가능 시각 및 최초 접속 시각만 operational 시각을 사용하고 RNG와 턴 배치는 기존 논리 시각을 보존한다.
2026-08-24 08:13:05 +00:00
Hide_D 379312470e merge: 설문 게시자 장수명 수정을 main에 반영한다 2026-08-24 08:04:28 +00:00
Hide_D 55a9c87610 fix(vote): 설문 게시자를 장수명으로 저장한다
인증 계정 ID나 계정 표시명 대신 getMyGeneral로 확정한 현재 장수명을 opener_name에 저장한다. 서로 다른 세 identity를 둔 회귀 테스트로 저장 경계를 고정한다.
2026-08-24 08:04:14 +00:00
Hide_D 90d43547fe merge: 최신 main을 transport 권한과 커맨드 내구 행렬에 통합한다 2026-08-24 07:41:28 +00:00
Hide_D 8d966d3152 test: 실제 transport 권한과 커맨드 내구 행렬을 검증한다
실제 Fastify HTTP, PostgreSQL과 Redis에서 예약 mutation의 인증·sanction·소유권·수뇌 경계, 감사 원장과 무부작용을 검증한다.

장수 55개와 수뇌 35개를 R1/R2/R3으로 전수 분류하고 대표 9개를 Ref/Core 의미 비교부터 lease, 단일 flush와 fresh reload까지 실행한다. 비행위자 revision/lease와 관직 5 수뇌 partition도 exact 보존한다.
2026-08-24 07:41:12 +00:00
Hide_D c82c076b1b test: 경매 복구 fixture의 논리 시각과 mailbox를 교정한다
manual world의 game clock으로 만료 시각을 만들고 private mailbox 범위의 장수 ID를 사용한다. 연장 소진 뒤 invalid item 취소 결과도 durable input event와 함께 고정한다.
2026-08-24 07:40:56 +00:00
Hide_D fa9cee36cf fix: 게임 outbox 운영 시각을 UTC wall로 통일한다
KST 세션에서 ReadModel과 WebPush outbox의 producer provenance를 분리하고 due, lease, retention 비교를 UTC wall 계약으로 맞춘다.

기존 TIMESTAMP(3) 타입과 이전 DML 형태를 유지하면서 populated upgrade, pending requeue, delivered 보존과 두 번째 deploy no-op을 자동 검증한다.
2026-08-24 07:40:45 +00:00
Hide_D 1e79611089 merge: Gateway 프로필 표시명 경계를 main에 반영한다 2026-08-24 07:18:48 +00:00
Hide_D d80ea1bd0e fix: Gateway 화면에서 raw 프로필 ID 노출을 제거한다
불변 profileName은 라우팅과 저장 경계에 유지하고 사용자 출력은 공통 표시명을 사용한다. 기본 인스턴스 suffix를 숨기고 비기본 인스턴스만 사람이 읽을 수 있게 구분한다.
2026-08-24 07:15:25 +00:00
Hide_D 8837e49d62 merge: 서버 작업 이력 간결화를 main에 반영한다 2026-08-24 06:05:37 +00:00
Hide_D 2f4440f737 fix(gateway): 서버 작업 이력을 상태 중심으로 간결화한다
서버별 화면의 작업 이력을 세 열 요약과 접근 가능한 상세 행으로 재구성한다. 500px Chromium에서 가로 넘침 없이 상태, 로그, 상세와 재시도 동작을 확인한다.
2026-08-24 06:05:03 +00:00
Hide_D 334ed09620 merge: CHE 0기 여명 시나리오를 main에 통합한다 2026-08-24 05:32:53 +00:00
Hide_D 9cf4034db8 feat(scenario): CHE 0기 여명 시나리오를 추가한다
일반 공백지 규칙을 유지하면서 가동 전 M장 50명과 유니크 획득 계수 2배를 적용한다. 시나리오 합성, 실제 M장 생성, Gateway 카탈로그와 Chromium 선택지를 회귀 검증한다.
2026-08-24 05:32:31 +00:00
Hide_D 3b53b9cd9e merge: 긴급천도 후보 선택 교정을 main에 반영한다 2026-08-24 04:51:59 +00:00
Hide_D 0bb4d56596 merge: 최신 main을 긴급천도 교정에 통합한다 2026-08-24 04:51:07 +00:00
Hide_D 531fa55c5f fix: 긴급천도 후보를 지도 연결 거리로 선택한다 2026-08-24 04:50:06 +00:00
Hide_D f431368da4 merge: Gateway 기수 표시명 전달을 main에 반영한다 2026-08-24 04:47:12 +00:00
Hide_D 39bf49bdaa fix: Gateway 기수 표시명을 명예의 전당과 왕조에 전달한다
RESET에서 Gateway의 한국어 표시명을 기수 메타데이터로 저장하고 통일 archive가 내부 profile key 대신 해당 snapshot을 사용하도록 한다. seeder와 Hall/왕조 투영 회귀 테스트를 함께 추가한다.
2026-08-24 04:38:40 +00:00
Hide_D 3bda79ccf8 merge: 전투·명예·유산 교차기수 패리티를 main에 반영한다 2026-08-24 04:10:32 +00:00
Hide_D 8fadd49b2c merge: 최신 main을 전투·명예·유산 패리티 작업에 통합한다 2026-08-24 03:39:02 +00:00
Hide_D 4fc20de8d4 fix: 은퇴 명예 기록과 유산 수명주기 정합성을 복원한다
은퇴·사망·통일의 저장 순서와 명예의 전당 및 명장일람 판정을 Ref 흐름에 맞춘다.

유산 행동을 인증된 daemon transaction으로 통합하고 중복 지급·고유 아이템·로그·오류 경계를 회귀 테스트한다.
2026-08-24 03:38:12 +00:00
Hide_D 95cf68dffd fix: 전투 이펙트와 차등 하네스 호환성을 복원한다
Ref 기준의 판정 순서, 난수 소비, 아이템·특기 이펙트와 로그 형식을 맞춘다.

전체 전투 결과와 이벤트·상태·난수 trace를 엄격 비교하고 fixture 및 출병 예약 회귀를 보강한다.
2026-08-24 03:37:56 +00:00
Hide_D 77a05a6a25 merge: 예약 공지 본문과 서버 행 구분을 main에 반영한다 2026-08-24 03:15:36 +00:00
Hide_D 15cb8cc481 fix: 예약 공지 본문과 서버 행 구분을 바로잡는다
선공개와 일반 가오픈 공지를 공유 컴포넌트로 렌더링해 드래그 문자열을 일치시킨다. 예약 공지 배지에는 실제 빌드 시작 시각 툴팁만 제공하고 서버별 행 경계를 강화한다.
2026-08-24 03:15:00 +00:00
Hide_D 47cfbb64fa merge: 신규 장수 특기 지급 지연 수정을 main에 반영한다 2026-08-24 01:58:58 +00:00
Hide_D 1b586bcd7b merge: 최신 main을 신규 장수 특기 수정에 통합한다 2026-08-24 01:58:02 +00:00
Hide_D e3b252143b fix: 신규 장수의 빈 특기를 즉시 정규화한다 2026-08-24 01:57:15 +00:00
Hide_D c056bd9fce merge: 오프너 완료 서버 정리를 main에 반영한다 2026-08-24 01:56:40 +00:00
Hide_D f8fb570dac feat: 오프너의 천하통일 서버 정리를 허용한다
시나리오 초기화 권한 범위에서 실제 game DB의 통일 상태를 재검증한 뒤 완료 서버만 STOPPED로 정리한다. 런타임 전체 권한은 확대하지 않고 DB와 완료 기록을 보존한다.
2026-08-24 01:55:31 +00:00
Hide_D 32bab36320 merge: 최신 main 기준선을 커맨드 하네스 재감사 브랜치에 통합 2026-08-23 21:49:42 +00:00
Hide_D c63a49bd07 fix: 커맨드 차등 생명주기와 로그 그래프를 보강
장수 55종과 수뇌 35종의 상태, 로그, 메시지, 예약 턴 비교를 닫습니다.

실제 시나리오 프로필과 대표 PostgreSQL 수명주기, 즉시 외교와 출병 회귀를 추가하고 발견된 Ref 로그 및 생성 장수 저장 차이를 교정합니다.
2026-08-23 21:48:29 +00:00
Hide_D a5dec1394a fix: 예약 오픈 공지를 간결하게 표시 2026-08-23 17:27:23 +00:00
Hide_D 85591c68ad fix: Ref 게임 로직과 시나리오 풀 호환을 보정
월 경계, 전투 기술 상한, 연감과 베팅·설문·경매 정산 순서를 Ref 계약에 맞춘다.\n\n시나리오 일반 풀을 ENGINE mutation과 logical tick 기반으로 직렬화하고 914·915 catalog 및 조건부 100기 pool 실행 경계를 추가한다.\n\n경매 worker는 세대별 durable event만 만들고 ENGINE이 row lock 후 상태 전이와 정산을 단일 transaction으로 소유한다.
2026-08-23 16:26:14 +00:00
Hide_D bf6b7be7b0 merge: 명예의 전당 유산 획득량을 main에 반영한다 2026-08-23 15:11:18 +00:00
Hide_D 8c26a30977 feat: 명예의 전당에 유산 획득량을 추가
명장 일람과 같은 inherit_earned 기록을 은퇴와 통일 정산에서 Hall에 보존하고 기수별 순위로 표시한다. API, 저장 경로와 실제 Chromium 회귀 검사를 함께 보강한다.
2026-08-23 15:10:10 +00:00
Hide_D 440de3843c merge: 예약 오픈 일정 선공개를 main에 반영한다 2026-08-23 14:01:35 +00:00
Hide_D 14ffa76c49 feat: 예약 오픈 일정을 빌드 전에 공개
초기화 예약의 공개 선택을 operation payload에 저장하고 로비에서 준비 단계별로 표시합니다. RESERVED 인계와 STOPPED 무요청 경계를 테스트합니다.
2026-08-23 13:59:31 +00:00
Hide_D 4b97088d69 merge: 전투 시뮬레이터 payload 축소를 main에 반영한다 2026-08-23 13:28:26 +00:00
Hide_D 1668b6ac3d merge: 최신 main 변경을 전투 시뮬레이터 payload 작업에 반영한다 2026-08-23 13:25:53 +00:00
Hide_D e04b93f91b perf: 전투 시뮬레이터 시작 payload를 줄인다
권위 실행 context를 화면 진입 때 한 번 전달하고 준비 응답은 seed base만 반환한다. 반복별 seed 배열은 결정적 파생값으로 대체하되 구형 queue seed 우선순위와 고정 seed 동작을 보존한다.
2026-08-23 13:25:22 +00:00
Hide_D 5c448046b9 merge: Web Push 알림 시스템을 main에 반영한다 2026-08-23 13:25:02 +00:00
Hide_D 594949a635 merge: 최신 main 변경을 Web Push 작업에 반영한다 2026-08-23 13:17:00 +00:00
Hide_D 4eee4d2a61 feat: Gateway 웹 알림 설정과 PWA 구독 화면을 추가한다
계정 화면에서 profile별 9개 알림을 기본 꺼짐으로 설정하고 Android, iPhone 홈 화면 앱, Windows 브라우저용 service worker 구독 흐름을 제공한다. 전송 비활성 상태와 모바일 Chromium 경계를 E2E로 검증한다.
2026-08-23 13:16:14 +00:00
Hide_D 7bc3213b03 feat: 계정 Web Push 전달 기반과 사건 판정을 추가한다
게임 상태 변경과 같은 트랜잭션에 내구성 outbox를 기록하고 Gateway가 계정 설정과 기기 구독으로 fan-out하도록 한다. 전역 기본값은 비활성으로 유지하며 migration과 회귀 테스트를 함께 추가한다.
2026-08-23 13:16:07 +00:00
Hide_D d7971a4714 merge: 원격 국가 수와 합성 재야 교정을 반영한다 2026-08-23 12:33:20 +00:00
Hide_D f2ad161a65 merge: 국가 수와 합성 재야 교정을 반영한다 2026-08-23 12:33:00 +00:00
Hide_D e9c715e231 fix(game): 국가 수 판정에서 합성 재야를 제외한다
Ref nation table에 없는 id=0 행이 정찰 차단과 월간 경매 난수 소비에 관여하지 않도록 모집단을 맞춘다. Ref의 maxnation 건국 표시 제한도 실행 제약을 늘리지 않고 명령표에 이관한다.
2026-08-23 12:31:53 +00:00
Hide_D f858806295 merge: 유산 포인트 적립 조건 정합화를 main에 반영한다 2026-08-23 12:10:49 +00:00
Hide_D 2d31145994 merge: 최신 main을 유산 포인트 정합화 작업에 반영한다 2026-08-23 12:07:04 +00:00
Hide_D 18e0bed30a fix: Ref 유산 포인트 적립 조건을 전면 정합화한다
능동 행동 31개 호출 지점과 소유자·NPC·통일 경계를 고정하고 사용자 저장값을 함께 갱신한다.\n\n최대 내정·임관, 천통 기여, 토너먼트, 숙련·베팅·랭크 계산과 환생 정산을 공통 계산기로 통합한다.
2026-08-23 12:06:59 +00:00
Hide_D 03086611b0 fix(migration): 재생성된 유산 저장소 자연키를 보존한다 2026-08-23 12:00:42 +00:00
Hide_D 3213f51125 merge: 이민족 종료 중립국 교정을 main에 반영한다 2026-08-23 11:59:22 +00:00
Hide_D c454d1b289 fix(game-engine): 중립국을 이민족 종료 집계에서 제외한다 2026-08-23 11:58:16 +00:00
Hide_D 2f793a9518 merge: 단일 잔존 국가 임관 금지를 main에 반영한다 2026-08-23 11:10:46 +00:00
Hide_D f1fa927ba3 merge: 최신 main을 자동 임관 금지 branch에 반영한다 2026-08-23 11:09:59 +00:00
Hide_D 88fb3ba4ca merge: 이민족 단독 잔존 승리 종료를 main에 반영한다 2026-08-23 11:08:59 +00:00