/** * 지난 기록 조회의 정렬 축 — **부르는 쪽이 무엇으로 물었는지에 맞춘다.** * * 리졸버 안에 두면 이 규칙을 확인할 방법이 소스를 글자로 전수 조회하는 것뿐이다. 규칙 자체를 부를 수 있게 * 밖으로 뺀다(`test/journal-order-axis.test.ts`). */ export function journalOrder(q: { untilTime?: string | null fromTime?: string | null fromRevision?: number | null toRevision?: number | null }): { eventTime?: 'DESC' revision: 'DESC' } { /* `revision` 으로 물었으면 그 순서가 물음의 답이다. 거르는 축과 정렬 축을 맞추는 규칙과도 같다. */ const byTime = q.untilTime != null || q.fromTime != null if (!byTime && (q.fromRevision != null || q.toRevision != null)) return { revision: 'DESC' } return { eventTime: 'DESC', revision: 'DESC' } }