Files
document-haness/docs/TechLog/tech-log-studio/one-route-many-hand-kept-lists/case/case-eight-places-a-single-route-touches.md
T
DongHyeonkaandClaude Opus 5 0650d91def docs(TechLog): 설명 뒤에 붙은 평가·예고·되풀이를 걷어낸다
rewriting-technical-prose-naturally 를 서브에이전트 셋으로 나눠 56편에 적용했다.
ai-tells.md 의 첫 절대로 다른 표현으로 바꾸는 대신 문장을 통째로 지웠다.

  설명한 것의 중요성을 다시 평가하는 꼬리   19
  이미 설명한 것을 추상어로 되풀이           19
  독자에게 읽는 법을 지시하거나 오해를 가정   9
  자료가 뒷받침하지 않는 덧붙인 이득          4

문서군 전체의 문형 편중도 풀었다 — 함께 27→7(한 묶음), 그대로 22→12(두 묶음),
하게 된다 1→0. 한 편에서 세 번 반복되던 「같은 병이 ~에서도 났다」와 두 기록에
같은 문장으로 있던 세 쌍을 갈랐다.

계약 제목 「여덟 자리」가 본문의 「여덟 곳」과 어긋나 있었다. 제목이 spatial-metaphor
규칙에도 걸리므로 계약과 기록을 함께 「여덟 곳」으로 맞췄다.

검사 넷 전부 통과한다 — check_prose 56편 error 0 · check_body PASS ·
check_evidence --repo 문제 없음 · verify-tech-log-tree error 0 warn 0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-07 16:03:16 +09:00

4.3 KiB

kind, slug, title, topic, topicName, project, status, lastVerifiedOn, sourceRevision, source
kind slug title topic topicName project status lastVerifiedOn sourceRevision source
CASE eight-places-a-single-route-touches 라우트 하나가 건드리는 여덟 곳과, 그것들이 우는 시점 one-route-many-hand-kept-lists 라우트 하나가 울리는 손 목록 TechLog 게시 전 2026-09-04 tech-log@2026-09-02
final/document.md#§8.1
final/document.md#§8.3
final/document.md#§8.4

라우트 하나가 건드리는 여덟 곳과, 그것들이 우는 시점

라우트를 하나 더하면 여덟 곳이 같이 운다. 어떤 것은 빌드 직전에, 어떤 것은 배포 직전에, 어떤 것은 배포 뒤에 운다. 개념 라우트를 더한 커밋이 그 목록을 남겼다.

관계

  • nginx 가 모르는 라우트는 새로고침에서 404 다 이 목록에서 배포 뒤에 우는 항목의 사건이다.
  • 라우트에 딸린 목록은 라우트 계약에서 유도하고, 유도할 수 없는 것은 대조 검사를 둔다 이 목록을 다루는 기준이다.
  • 가드는 작동했는데 제가 그것을 돌리지 않아 두 번 새어 나갔다 이 목록을 빠뜨린 뒤 게이트가 빨간 채로 지나간 사건이다.

문제

라우트 하나를 더하면 그 라우트를 아는 곳이 여덟이다. 어느 하나를 빠뜨리면 우는 시점이 제각각이라, 빠뜨린 것을 알아채는 시점도 제각각이다.

결론

여덟 곳과 우는 시점이 갈린다.

빌드 매니페스트 단계 : vite chunk 이름 표 배포 직전 CI : 아티팩트 개수 상수 · 수동 접근성 증거 개수 · 게이트 집합의 sha256 배포 뒤 : nginx 서빙 패턴 그 밖 : 라우트 계약 · 런타임 등록 · 메시지 카탈로그

청크 이름 표는 다섯 검사 안에서 대조하게 했다. 게이트 기준값 셋은 여전히 손으로 움직이고, 옛 값을 먼저 재현해 계산 방법을 확인한 뒤 갱신한다.

검증 환경

tech-log-frontend : 048c1b2 · 197db74 · fe6b56a CI : FE-GATE-009 — 라우트마다 수동 접근성 증거 1개 확인 방식 : 라우트를 더한 커밋 넷에서 기준값이 어떻게 움직였는지 대조

재현 조건

  1. 라우트를 하나 더하고 vite chunk 이름 표에는 넣지 않는다
  2. 빌드한다 — 번들은 만들어지고 매니페스트 단계에서 멈춘다
  3. 표에 넣고 CI 기준값은 그대로 둔다 — 게이트가 거절한다

본문

여덟 곳

라우트 계약          tech-log-route-contract.ts
런타임 등록          route-runtime-contract
메시지 카탈로그       화면 제목·설명
nginx 서빙 패턴       tech-log-serving-contract.json → 생성된 nginx conf
코드 분할 청크         vite.config.ts 의 chunk 이름 표
CI 게이트 FE-GATE-009 라우트마다 수동 접근성 증거 1개
CI 게이트 아티팩트 기준선 정확한 개수를 고정
CI 게이트 형상 digest  게이트 집합의 sha256

우는 시점이 다르다

주제 편집 화면을 더하고 청크 이름 표를 빠뜨렸더니 번들은 만들어지는데 빌드 매니페스트 단계에서 Missing built route chunk: TECH_LOG_STUDIO_TOPIC_EDIT 로 멈췄다. 검사 다섯 개를 다 통과한 뒤 배포 직전에야 드러났다.

이 표도 손으로 나열한 목록이므로 다섯 검사 안에서 대조하게 했다.

게이트 기준값 셋은 라우트마다 움직인다

FE-GATE-009 는 설치된 라우트마다 수동 접근성 증거를 하나씩 요구하고, 그 집합이 정확히 일치하지 않으면 거절한다.

커밋 라우트 아티팩트 기준선 증거 개수 digest
16e5b9f /studio/projects/:id 132 → 133 111 → 112 187dbd96… 재계산
84d72c4 /studio/releases/:id 133 → 134 112 → 113 f9e7e521… 재계산
048c1b2 /concepts/:slug +1 +1 fb138e7c… 재계산
fe6b56a /topics, /topics/:s/:v, /studio/topics/:id 135 → 138 114 → 117 87a22f68… 재계산

digest 를 다시 계산할 때는 매번 이전 gates.json 에서 옛 상수를 먼저 재현해 계산 방법이 맞는지 확인한 뒤 새 파일을 해싱했다.

확인하지 못한 것

게이트 기준값 셋은 여전히 손으로 움직인다. 옛 값을 먼저 재현하는 절차는 사람이 기억해야 하고 검사가 강제하지 않는다.