Ctrl K
ComunidadGuías…

tsconfig.build.json

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  // 프로덕션/built 런타임 산출물 빌드 (ADR 2026-07-14 D1 — Option B: 디렉터리 보존 tsc).
  //
  // 기존 tsconfig.json(rootDir=src, include=src) 은 그대로 유지 — `build`/`typecheck`/
  // 클린룸(sync §5·§7) 이 계속 그것을 쓴다. 본 설정은 *별도 프로덕션 빌드* 전용.
  //
  // 핵심: rootDir="."(레포 루트) + include 에 plugins 추가 → 결과가 소스 트리를 그대로
  // 미러(dist/src/... + dist/plugins/...). 그래야 플러그인의 리터럴 `../../../src/core/*.js`
  // 깊은 import 가 dist/ 아래에서 dist/src/core/*.js 로 정확히 해석된다(재작성 0). 진입 =
  // node dist/src/index.js. 비-.ts 자산(SYSTEM.md·skills·agents·플러그인 package.json)은
  // tsc 가 안 옮기므로 build:prod 의 copy 단계(bin/copy-dist-assets.mjs)가 dist/ 로 복사한다.
  "extends": "./tsconfig.json",
  "compilerOptions": {
    "rootDir": ".",
    "outDir": "dist",
    // ★플러그인 **공개 면**(2026-08-28). 플러그인은 코어를 상대 경로로 짚지 않고
    //  `@tiguclaw/plugin` 하나만 부른다 — 홈에 깔린 플러그인엔 `../../../src/core` 가
    //  존재하지 않기 때문이다(실측: 홈이 레포 밖이면 해석 실패).
    // ★**타입 전용 패키지**라 컴파일 뒤 import 가 사라진다 → 런타임 해석이 필요 없다.
    //  그래서 워크스페이스 링크도, 퍼블리시도 지금은 필요 없다.
    "baseUrl": ".",
    "paths": {
      "@tiguclaw/plugin": ["packages/plugin/index.ts"]
    },
    // 플러그인은 지금껏 typecheck 밖이라 미검증 타입 오류가 잠재할 수 있다(메모리:
    // "plugins 는 typecheck 밖"). 프로덕션 산출물 emit 을 그런 잔여 타입 이슈로 막지
    // 않도록 noEmitOnError=false — .js 는 항상 나오게. 타입 게이트는 별도 typecheck 가 담당.
    "noEmitOnError": false,
    // 산출물 슬림 — 런타임 실행엔 .d.ts 불필요.
    "declaration": false
  },
  // packages/**/* 추가(2026-07-14 dashboard built fix) — packages/dashboard/index.ts 는
  //  src 의존 0 의 자립 HTTP 서버지만 built 모드에서 tsx 부재라 실행 불가였다. rootDir="."
  //  덕에 dist/packages/dashboard/index.js 로 경로 보존 emit → dashboard plugin 이 node 로
  //  직접 스폰(tsx 미경유). 비-.ts 정적파일(index.html 등)은 copy-dist-assets 가 옆에 복사.
  "include": ["src/**/*", "plugins/**/*", "packages/**/*"]
}