Skip to content

v1.31.0 — 페이지를 지우면 흐름도 함께 정리됩니다

Choose a tag to compare

@kh1012 kh1012 released this 05 Aug 09:46
· 6 commits to main since this release

페이지를 지울 수 있습니다

한 페이지가 갖는 것은 본문만이 아닙니다 — 편집 이력 · 리뷰 피드백 · 스냅샷이 따라다니고, 그 페이지를 화면으로 쓰는 흐름이 따로 있습니다. 파일 하나만 지우면 나머지가 유령으로 남습니다.

DELETE /api/pages/<slug>   → { slug, deleted, detachedFlows }

detachedFlows 는 이 페이지를 화면으로 갖고 있어 함께 정리된 흐름들입니다. 화면이 "무엇이 같이 바뀌었는지"를 말할 수 있어야 하기 때문에 응답에 실었습니다.

왜 흐름을 먼저 정리하나

흐름은 편입 시점 스냅샷(.versions/<slug>/<version>.json)을 참조합니다. 스냅샷부터 지우면 그 사이에 실패했을 때 흐름이 읽을 수 없는 화면을 안고 남습니다.

참조를 먼저 끊고 파일을 지우면 중간에 멈춰도 "화면이 하나 빠진 흐름"이라는 정상 상태로 끝납니다.

왜 page/store 가 흐름을 아는가

페이지는 흐름을 모르지만 페이지를 지우는 일은 본질적으로 두 곳에 걸칩니다. 연쇄를 부르는 쪽(CLI·API)에 맡기면 한 곳이 빠뜨렸을 때 끊긴 흐름이 조용히 생깁니다. 한 함수가 책임집니다.

없는 페이지를 지우면 deleted:false — 오류가 아닙니다.