기억 말고 되감기
Anvil의 기록 줄기는 덧붙이기만 하고, 빠짐이 없고, 그것만으로 자족하도록 저장돼. 모든 상태 전이, 결과물 판본, 심사, 동점 처리, 이견, 공개는 보여주기 전에 영속화돼. 회차와 자리와 제출 화면은 그 기록의 투영이지, 무너진 뒤에 운영자가 이력을 손봐도 된다는 허가가 아니야.
복구는 영속 상태와 저장소 참조를 읽는 데서 시작해. 실패 전에 보관된 제출은 계속 제출된 상태고, 저장된 표는 계속 유효하고, 확정되지 않은 단계 넘김은 적용되지 않은 채로 남아. 과정이 다시 시작했다는 이유만으로 이미 끝난 모델 작업이나 하네스 작업을 다시 돌리지 않아.
봉인된 레일에서는 원본과 걷어낸 결과물 사본이 기록 줄기와 함께 살고, cwkPippa 대화 번호는 뒤를 가리키는 참조일 뿐이야. Anvil 회차를 다시 세우는 일이 다른 제품의 대화 저장소를 다시 읽는 데 기대지 않아. Open Run의 저장소 나무와 보고서도 함께 남고, yard는 귀중한 과정의 흔적이지만 다시 세우기 위한 의존 대상은 아니야.
영속 사실과 화면에 남은 값이 다르면 기록 줄기가 이겨. 복구는 대체, 기권, 이어서 한 동작을 새 사실로 덧붙이지 앞선 사건을 고쳐 쓰지 않아.
영속 사실에서 다시 세우고 운영자의 기억으로 이력을 재현하지 마. 다시 시작한 뒤에도 저장소와 기록 줄기가 겨루기를 정의해.