fix: 은퇴 명예 기록과 유산 수명주기 정합성을 복원한다
은퇴·사망·통일의 저장 순서와 명예의 전당 및 명장일람 판정을 Ref 흐름에 맞춘다. 유산 행동을 인증된 daemon transaction으로 통합하고 중복 지급·고유 아이템·로그·오류 경계를 회귀 테스트한다.
This commit is contained in:
@@ -214,7 +214,7 @@ describe('UpdateNationLevel monthly action', () => {
|
||||
expect(world.getGeneralById(1)?.role.items.horse).toBe(uniqueHorse.key);
|
||||
expect(world.getGeneralById(2)?.role.items.horse).toBeNull();
|
||||
expect(world.peekDirtyState().inheritancePointAdjustments).toEqual([
|
||||
{ userId: 'user-1', key: 'unifier', amount: 500 },
|
||||
{ userId: 'user-1', key: 'unifier', amount: 500, phase: 'after_lifecycle' },
|
||||
]);
|
||||
expect(world.getGeneralById(1)?.inheritancePoints?.unifier).toBe(500);
|
||||
expect(world.peekDirtyState().logs).toEqual(
|
||||
@@ -291,7 +291,7 @@ describe('UpdateNationLevel monthly action', () => {
|
||||
meta: { marker: 1, can_국기변경: 1, can_국호변경: 1 },
|
||||
});
|
||||
expect(world.peekDirtyState().inheritancePointAdjustments).toEqual([
|
||||
{ userId: 'user-1', key: 'unifier', amount: 250 },
|
||||
{ userId: 'user-1', key: 'unifier', amount: 250, phase: 'after_lifecycle' },
|
||||
]);
|
||||
expect(world.getGeneralById(1)?.inheritancePoints?.unifier).toBe(250);
|
||||
});
|
||||
@@ -306,7 +306,7 @@ describe('UpdateNationLevel monthly action', () => {
|
||||
expect(world.getGeneralById(1)?.role.items.horse).toBeNull();
|
||||
expect(world.peekDirtyState().logs.some((entry) => entry.text.includes('작위보상'))).toBe(false);
|
||||
expect(world.peekDirtyState().inheritancePointAdjustments).toEqual([
|
||||
{ userId: 'user-1', key: 'unifier', amount: 250 },
|
||||
{ userId: 'user-1', key: 'unifier', amount: 250, phase: 'after_lifecycle' },
|
||||
]);
|
||||
expect(world.getGeneralById(1)?.inheritancePoints?.unifier).toBe(250);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user