Skip to content

chore: remove proxy implementation guide and postinstall injector (0.2.1) - #17

Open
aiden-lemon wants to merge 3 commits into
developfrom
chore/remove-proxy-guide
Open

chore: remove proxy implementation guide and postinstall injector (0.2.1)#17
aiden-lemon wants to merge 3 commits into
developfrom
chore/remove-proxy-guide

Conversation

@aiden-lemon

Copy link
Copy Markdown
Member

설계 문서: knowledge projects/@lemoncloud-io/lemon-devkit/remove-proxy-guide/ (knowledge PR 308, 머지됨). 연계: eureka-flows-api PR 78(lib→proxy) · PR 79(lemon-core 4.3).

목표

  • use-case 기반 개발 패턴("비즈니스 로직은 src/lib/<domain>/ use-case, proxy는 atomic helper")을 devkit에서 걷어낸다. 그 유일한 운반체인 docs/proxy-implementation-guide.md와 postinstall 주입기를 삭제한다.
  • 소비 레포가 devkit을 갱신해도 지운 가이드가 되살아나지 않는다.

문제

  • eureka-flows-api는 lib use-case를 모델별 ManagerProxy 메서드로 전환했고(PR 78) 가이드를 삭제했다. 가이드는 그 반대를 처방한다.
  • 주입기(src/proxy-docs/install.ts)는 overwrite 기본 true에 옵트아웃이 없어, 소비 레포가 지우거나 고쳐도 다음 devkit 설치에서 패키지본으로 되돌린다.
  • devkit 코드(lemon-fields·guard-common)에는 src/lib·src/cores 가정이 0건이다. 문제는 문서와 주입기에만 있다.

수정 (커밋 3개)

  • 8aaa919 삭제: docs/proxy-implementation-guide.md(1,005줄), src/proxy-docs/install.ts·install.spec.ts, src/bin/lemon-devkit-postinstall.ts. package.jsonscripts.postinstallfiles[] 가이드 항목 제거. src/fields/package.spec.ts는 가이드 포함 기대를 not.toContain으로, 헤더·it 제목의 "proxy docs" 문구 제거. README ## Proxy 절 삭제.
  • a4733df src/fields/README.md: src/cores/…#CoreModel·#TestModel 예시 출력 위에 "lemon-core 4.3 미전환 프로젝트 예시" 주석 2줄.
  • 5759728 0.2.1: package.json·lockfile version, README 설치 예시 @0.2.1, VERSION INFO에 두 행(제거 · 미발행 커밋의 fields --check checksum 비교). 기존 0.2.0 두 행은 유지.

검증 (기준 develop 9b134d5, Node 24.15.0)

전 → 후
npm run build / tsc --noEmit 0 / 0 → 0 / 0. stale dist/는 지우고 재빌드해 dist/proxy-docs·dist/bin/lemon-devkit-postinstall.* 소멸 확인
vitest 189/189 → 187/187. −2는 삭제한 install.spec.ts의 it 2개, 실패 0
eslint(--fix 없이) 8 errors·7 warnings → 동일. 전부 기존 spec 파일의 prettier, 새 오류 0
npm pack --dry-run --ignore-scripts 가이드·dist/proxy-docs·postinstall 포함 → dist/bin/lemon-fields.*·src/fields/README.md
잔존 grep use-case|src/lib/|guardProxy 가이드 안에만 → 0건

버전을 patch(0.2.1)로 낸 이유

소비 레포 전부가 lemon-devkit ^0.2.0이다. ^0.2.0은 0.3.x를 포함하지 않으므로 minor로 내면 range를 손으로 올린 레포만 주입기 없는 버전을 받는다. 소비자 대면 동작(문서 주입)이 사라지는 변경이 patch로 실리는 점은 인지하고 택했다. 0.2.0 이후 미발행 커밋(PR 12~16: fields --check checksum/entry-count 비교, schemaVersion 포함, exec-cli import-safe)도 함께 실린다.

소비 레포 안내

이미 주입된 docs/proxy-implementation-guide.md와 README의 <!-- lemon-devkit:proxy-doc:start/end --> 블록은 devkit이 지우지 않는다. 각 레포에서 삭제한다(2026-09-04 로컬 스캔 기준 11곳): chatic-backend-api, chatic-pushes-api, chatic-socials-api, chatic-sockets-api, codes-goods-api(README 블록 없음), eureka-agents-api, eureka-hello-api, lemon-payments-api, lemon-templates-api, lemon-uploads-api, lemon-webhook-api. eureka-flows-api는 PR 78에서 완료.

비범위

  • lemon-fields·guard-common 로직. lemon-core devDependency ^4.2.6 상향(guard-common canon 대조가 필요한 별건). npm publish(소유자 결정). 배포 뒤 flows-api PR 79에 lockfile 갱신 커밋 1개.

@aiden-lemon aiden-lemon self-assigned this Sep 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant