C.W.K.
Stream
Lesson 03 of 05 · published

date picker 는 양방향으로 움직인다

~9 min · date-picker, retrospective, future-scatter, capture

Level 0차가운 쇠
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"잊은 증상은 지난 화요일로 파일되고, 계획된 훈련 블록은 다음 달로 흩어져. 타임라인은 양방향으로 무한해."

양방향, 일부러

Forge 에선 당일 입력이 절대 강제되지 않아. composer 의 date picker 는 양쪽으로 움직여: 뒤로 — 아빠가 기록 깜빡한 증상이 지난 화요일로 파일되고, 오늘 스캔한 2025 검진이 2025 아래 파일되고 — 앞으로 — 예정된 진료나 계획된 훈련 블록이 미래로 흩어져. 다른 날을 고르면 crumb 의 target_date 가 설정되지만, 그 crumb 이 그때 제출된 척은 안 해. 적어두는 행위와 그게 속한 날짜는 서로 다른 두 사실이야.

여기선 retrospective 가 정상이지 edge case 가 아냐

이건 대부분의 도메인보다 건강에서 더 중요해. 의료 기록은 그게 서술하는 방문보다 몇 주 뒤에 도착하니까. 검진 결과는 지난달 방문을 오늘 올리는 PDF 고, 보충제 목록은 이미 돌아가는 regimen 의 스크린샷이야. retrospective 파일링이 어색한 특수 경로였다면, Forge 의 진짜 콘텐츠 절반이 도구랑 싸울 거야. 그래서 그건 우회로가 아니라 일급 동작이야 — 특히 Medical 탭이 그걸 전제해.

date picker 는 양방향으로 움직이고, captured 는 owned 가 아냐. 다른 날을 설정하면 target_date 만 바뀌어 — 읽기·파일링을 위해 crumb 이 속하는 날 — 절대 captured_at 은 아냐, 그건 적은 진짜 순간으로 남아. 늦은 파일링은 정상이고, 캡처 자체를 back-date 하는 건 아냐.

가드레일 하나: 조용한 re-date 금지

이 둘레엔 신중한 규칙 하나가 있어. 비어있지 않은 persisted 초안은 아빠가 달력 날짜를 탭해도 절대 조용히 re-date 되지 않아 — 그건 이미 시작한 작업을 몰래 옮기는 거니까. 날짜 탭은 composer 에 그 날짜를 파일링 타깃으로 줘. 진행 중인 초안은 아빠가 명시적으로 적용할 때만 고른 날짜를 가져가. 엔진은 crumb 을 타임라인 어디에든 흩뿌리지만, 시키지 않고는 절대 하나도 안 옮겨.

Code

오늘 적었지만 다른 날 소유 — captured_at 은 거짓말 안 함·json
// A symptom Dad forgot, filed today to last Tuesday:
{
  "captured_at":   "2026-07-24T21:40:00+09:00",  // true write moment
  "target_date":   "2026-07-21",                 // the day it belongs to
  "text": "forgot to note it - left wrist ached Tuesday morning"
}

// A planned training block, scattered forward:
{
  "captured_at":   "2026-07-24T21:41:00+09:00",
  "target_date":   "2026-08-04",                 // future
  "text": "start the new 3x lower-body block"
}
// captured_at 은 얼어붙은 진실; target_date 는 파일되는 곳.

External links

Exercise

일어난 건 아는데 오늘로 못 박을 수 없는 건강 사실을 떠올려 — 지난 봄 검진, 몇 년 전 부상, 다가오는 진료. 당일-전용 로깅 앱에선 어디로 가? Forge 에선 어떤 날짜를 받고, 네가 실제로 적어둔 순간엔 어떤 필드가 고정으로 남지?
Hint
당일-전용 앱에선 틀린 날짜를 받거나 사라져. Forge 에선 속하는 날의 target_date 를 가져가고, captured_at 은 네가 파일한 때에 대해 정직하게 남아.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.