본문 바로가기
C.W.K.
Stream
Lesson 01 of 05 · published

kit 경계

~10 min · sibling-kit, vendoring, drift-check, shared-plumbing

Level 0차가운 쇠
0 XP0/37 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"공유 배관엔 주인이 정확히 하나야. 거기서 편집하고, sync 로 배포해. 로컬로 편집한 사본은 일부러 테스트를 실패하고."

공유 층엔 주인 하나

Forge, Vesta, Waystone 은 app-agnostic 배관의 진짜 층을 공유해. cwkPippa client, publish client, veil, ULID, settings slice, capture outbox 랑 ask-thread 계약, 공유 UI atom, calendar date math. 그 층엔 주인이 하나야. cwkSiblingKit. Forge 는 그걸 vendored shim(백엔드 kit_*.py, 클라이언트 frontend/src/kit/)으로 실지만, source of truth 는 kit 이야. 이게 존재하는 건, 셋이 같은 날 같은 모양에서 seeding 됐고 공유 코드가 즉시 세 벌로 나타났기 때문이야. 같은 날 drift 하고, 진짜 cross-app 버그 하나까지. kit 이 그 fix 야. 주인 있는 dedup.

vendored, drift check 와 함께

배포는 패키지 설치가 아니라 vendored 사본 더하기 drift check 야. sync 스크립트의 --check 모드가 각 consumer 테스트 안에서 돌아서, 손 편집된 vendored 파일은 그 repo 테스트를 실패시켜. 이게 강제하는 규칙은 뭉툭해. kit 파일은 kit 에서 편집하고, sync 로 배포해. vendored 사본을 제자리에서 절대 편집하지 마. 로컬 편집에 실패하는 테스트가 세 앱이 공유해야 할 코드에서 조용히 갈라지는 걸 막는 가드레일이고, 그게 정확히 kit 이 고치려고 만들어진 병이야.

kit 파일은 kit 에서만 편집해. 로컬 편집된 vendored 사본은 drift check 를 실패하고. kit 이 공유 배관의 유일한 주인이고, consumer 는 synced 사본을 실어. 로컬 편집에 실패하는 테스트는 우회할 마찰이 아니라, 가족이 방금 dedup 한 코드를 다시 fork 하는 걸 막는 메커니즘이야.

kit 은 절대 domain shape 를 흡수 안 해

kit 이 소유할 수 있는 것엔 단단한 선이 있어. app-agnostic 배관만 가져가고 그 외엔 없어. journey 는 Waystone 에, journal 은 Vesta 에, 건강 도메인 전체는 Forge 에 남고. kit 은 절대 health 필드, symptom type, analysis 규칙을 키우면 안 돼. 이게 '엔진은 뭘 소유하느냐로 정의된다' 를 공유 층에 적용한 같은 규칙이야. 배관이 공통인 건 정확히 누구의 도메인도 아니라서고. domain shape 가 kit 에 새는 순간, 공유를 안전하게 만드는 경계가 사라져.

Code

kit 이 소유하는 것 vs Forge 가 소유하는 것·text
cwkSiblingKit (one owner, vendored to consumers + drift check):
  - cwkPippa client layer (brain vocabulary, streamed turns)
  - publish client + canonical publication record
  - veil, ULID, settings slice
  - capture outbox + ask-thread contracts
  - shared UI atoms, calendar date math

cwkForge (owns its domain, NEVER pushed into the kit):
  - the seven readings, the interpretation rubric
  - aggregates / narration / analysis, observe-never-diagnose
  - the digest contract, health-density calendar query

# kit 파일은 kit 에서 편집하고, sync 로 배포.
# 손 편집된 vendored 사본 -> drift check 가 suite 를 실패시킴.

External links

Exercise

Forge 에서 일하다 kit 파일(예를 들어 capture outbox)에서 진짜 버그를 발견해. 세 형제 앱이 다 fix 를 받게 하려면 어디서 고치고, 대신 Forge 의 vendored 사본에서 '그냥 여기서 고치면' 구체적으로 뭐가 잘못되지?
Hint
cwkSiblingKit 에서 고치고 re-sync 해. vendored 사본 편집은 Forge 자기 drift check 를 실패시키고, 그걸 우회해도 다른 두 앱은 fix 를 절대 못 받아서 공유 코드가 fork 돼. kit 이 막으려고 존재하는 바로 그 drift 야.

Progress

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

댓글 0

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

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