Commit Graph
34 Commits
Author SHA1 Message Date
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 7bc3213b03 feat: 계정 Web Push 전달 기반과 사건 판정을 추가한다
게임 상태 변경과 같은 트랜잭션에 내구성 outbox를 기록하고 Gateway가 계정 설정과 기기 구독으로 fan-out하도록 한다. 전역 기본값은 비활성으로 유지하며 migration과 회귀 테스트를 함께 추가한다.
2026-08-23 13:16:07 +00:00
Hide_D 830833ebc6 fix: 실제 행동 기준으로 접속 중 국가를 집계 2026-08-19 14:14:12 +00:00
Hide_D 383d173790 feat: 오픈 게임 취소와 유산 정산 경로 추가
별도 최고위험 권한으로 실행되는 원자적 취소 작업을 추가한다. 버려진 게임과 장수 기록의 보존·삭제 옵션, 오픈 원금 전액 환급 및 획득 포인트 보전율, 취소 상태와 관리자·과거기록 UI를 함께 반영한다.
2026-08-18 13:31:49 +00:00
Hide_D 5bc1e3473f perf: 접속 점수를 Redis 배치로 지연 반영
대시보드 벌점을 read-model source와 outbox에서 제외하고 수동 projection의 가점을 Redis에 합산한다. 5초 worker가 월별 traffic과 접속 점수를 멱등 PostgreSQL batch로 반영하며 메인 제한 gate는 Redis TTL marker만 조회한다.
2026-08-17 14:50:34 +00:00
Hide_D 86733b99b7 feat: 내구성 있는 read model 변화 저널 기반을 추가 2026-08-16 18:01:22 +00:00
Hide_D a26031dc3f feat: add logical game clock 2026-08-04 02:51:27 +00:00
Hide_D 02515303fd feat(engine): finalize unification archives atomically 2026-07-31 14:10:22 +00:00
Hide_D 2de8f64da4 feat: port NPC possession through turn daemon 2026-07-31 03:46:02 +00:00
Hide_D 115218ded8 feat: port scenario 903 select-pool flow 2026-07-30 23:27:59 +00:00
Hide_D d6904f2c9d fix(infra): reconcile shared Prisma migration history 2026-07-30 17:20:52 +00:00
Hide_D 2b15410c5c Track traffic by game month 2026-07-27 11:32:48 +00:00
Hide_D 89013272e1 feat: migrate legacy long-lived database records 2026-07-27 01:12:00 +00:00
Hide_D 8f1fe73bad fix reserved turn daemon api serialization 2026-07-26 19:23:25 +00:00
Hide_D 3cd1ad3b7f fix reserved turn queue concurrency 2026-07-26 18:32:52 +00:00
Hide_D 25e67e15ae Implement nation betting lifecycle 2026-07-25 20:16:11 +00:00
Hide_D 1ae9ca6c1e feat: implement monthly disaster event 2026-07-25 16:39:33 +00:00
Hide_D f8645a4576 feat: migrate monthly city trade rates 2026-07-25 16:16:10 +00:00
Hide_D 36d11acdfa merge: add fenced turn runner and differential harness 2026-07-25 12:14:38 +00:00
Hide_D fbfaf8df81 feat: complete user-facing message and account APIs 2026-07-25 11:39:47 +00:00
Hide_D 0151055f94 feat: fence periodic turn daemon execution 2026-07-25 09:22:32 +00:00
Hide_D 45ba960474 feat: complete general turn lifecycle 2026-07-25 08:42:57 +00:00
Hide_D 5040691d7c feat: implement input event system with durable command handling
- Introduced InputEvent model with status tracking (PENDING, PROCESSING, SUCCEEDED, FAILED) and unique request IDs.
- Added DatabaseTurnDaemonTransport for sending commands and handling idempotency.
- Implemented executeInputEvent function to manage input event lifecycle and error handling.
- Created DatabaseTurnDaemonCommandQueue for managing command processing and lease recovery.
- Enhanced turn daemon lifecycle to support atomic command execution and error recovery.
- Added tests for input event atomicity, command queuing, and error handling scenarios.
2026-07-25 05:36:34 +00:00
Hide_D b0a8f768e9 feat: add survey view with voting functionality and admin panel
- Implemented SurveyView.vue for displaying and managing polls, including voting, comments, and results.
- Added new database tables for vote polls, votes, and comments in migration script.
- Created unique lottery logic for handling unique item rewards based on voting.
- Developed unit tests for unique lottery functionality to ensure deterministic behavior and correct counting of occupied unique items.
2026-02-03 18:25:26 +00:00
Hide_D d3277f204a feat: add dynasty management features including list and detail views
- Implemented `OldNation`, `OldGeneral`, and `Emperor` models in Prisma schema.
- Created API routes for fetching dynasty lists and details.
- Developed frontend views for displaying dynasty list and detail information.
- Enhanced in-memory world to track deleted nation snapshots during unification.
- Added functionality to settle dynasty information after unification events.
2026-01-29 19:09:17 +00:00
Hide_D 9fff671c2f feat: add ranking and hall of fame features
- Implemented new routes for Best General and Hall of Fame views in the frontend.
- Created BestGeneralView and HallOfFameView components to display rankings based on game data.
- Added new database models for RankData and HallOfFame to store ranking information.
- Introduced ranking types and hall of fame types in common types for better type safety.
- Developed ranking router to handle fetching of best general and hall of fame data.
- Updated database schema with migrations to include new tables for rank data and hall of fame.
- Enhanced the main view with links to the new ranking features.
2026-01-29 18:18:35 +00:00
Hide_D 8c5ab5074d feat: 연감 기능 추가 및 데이터베이스 모델 생성 2026-01-28 16:18:14 +00:00
Hide_D 87e4639663 feat: 외교부 기능 추가 및 외교 문서 관련 데이터베이스 모델 생성 2026-01-28 15:35:17 +00:00
Hide_D bebb0de3c4 feat: add board functionality with articles and comments
- Implemented BoardView for creating and displaying articles with comments.
- Added NationAffairsView for managing national policies and financial settings.
- Created ScoutMessageView for editing recruitment messages.
- Introduced database migrations for board_post and board_comment tables.
2026-01-28 14:44:15 +00:00
Hide_D 2d87cf881e 토너먼트 준비 2026-01-23 16:45:36 +00:00
Hide_D 1ed9953c67 경매 구현 2026-01-22 18:23:43 +00:00
Hide_D b5b761984e 경매 관련 진행 준비 2026-01-22 17:25:39 +00:00
Hide_D 3ce1f441d0 feat: add unification handler and inheritance system
- Implemented `unificationHandler.ts` to manage nation unification logic, including inheritance point calculations and logging.
- Created `InheritView.vue` for frontend management of inheritance points, buffs, and logs.
- Added database migration for new inheritance tables: `inheritance_point`, `inheritance_log`, `inheritance_result`, and `inheritance_user_state`.
- Developed inheritance buff logic in `inheritBuff.ts` to apply buffs during domestic and war actions.
2026-01-18 10:59:04 +00:00
Hide_D a9609dcc19 feat: add database schema support for gateway and game profiles
- Introduced `dbSchema` configuration option in GatewayApiConfig and GatewayOrchestratorConfig.
- Implemented schema resolution logic in environment configuration functions.
- Updated context and orchestrator factory to use GatewayPrismaClient instead of PrismaClient.
- Refactored orchestrator server and profile repository to accommodate new database schema handling.
- Created separate Prisma schemas for game and gateway in the infra package.
- Enhanced Postgres connector to support schema overrides in database URLs.
- Updated documentation to reflect changes in database schema handling.
- Added new Prisma generation and database push scripts for game and gateway schemas.
2026-01-03 14:47:28 +00:00