배경
플러그인 sweep PR 들 (lvis-plugin-meeting #75, local-indexer #100, ms-graph #54, lge-api #43, work-proactive #55, agent-hub #93, lvis-plugin-template #39 — check:ui-tokens) 의 self-review 에서 architect 가 구조적 중복을 지적.
현재 각 플러그인 repo 에 standalone validate-*.yml 워크플로 4 종류 존재:
validate-hostapi.yml
validate-events.yml
validate-manifest.yml
validate-ui-tokens.yml (이번 sweep 추가)
각 워크플로가 동일 패턴 — actions/checkout + setup-bun/setup-node + 단일 bun run … / node …. 7 repo × 4 워크플로 = 28 개의 거의 동일한 YAML.
문제
- 변경 시 28 곳 동기 (예: action SHA-pin, runner 변경)
- 각 워크플로가 floating tag 사용 (
oven-sh/setup-bun@v2) vs 본 reusable workflow 의 pinned-SHA 정책 충돌
- bun version 도
1.1.38 하드코딩 vs plugin-ci.yml 의 1.3.9 input default → 같은 repo 안에서 두 bun 버전 존재
- Self-hosted runner 게이트 (
head.repo.full_name == github.repository) 도 4 곳에 복붙
권장
lvis-project/.github/.github/workflows/plugin-ci.yml 의 lint/typecheck/test conditional 패턴 (line 49-60) 을 mirror 해서:
- name: validate:hostapi (if script exists)
if: hashFiles('scripts/validate-hostapi.mjs') != ''
run: bun run validate:hostapi || node scripts/validate-hostapi.mjs
- name: validate:events (if script exists)
…
- name: check:ui-tokens (if script exists)
…
각 플러그인 repo 의 7 개 standalone yml 제거, ci.yml 만 남기면 자동 활성화.
영향
- 7 repo × 4 yml = 28 파일 제거
plugin-ci.yml 에 conditional step 4 개 추가
- bun/action 버전 통일
의존성
- 본 sweep PR 들 (#75/#100/#54/#43/#55/#93) 머지 후 진행 — 그 전에 하면 PR 충돌 발생
배경
플러그인 sweep PR 들 (lvis-plugin-meeting #75, local-indexer #100, ms-graph #54, lge-api #43, work-proactive #55, agent-hub #93, lvis-plugin-template #39 —
check:ui-tokens) 의 self-review 에서 architect 가 구조적 중복을 지적.현재 각 플러그인 repo 에 standalone
validate-*.yml워크플로 4 종류 존재:validate-hostapi.ymlvalidate-events.ymlvalidate-manifest.ymlvalidate-ui-tokens.yml(이번 sweep 추가)각 워크플로가 동일 패턴 —
actions/checkout+setup-bun/setup-node+ 단일bun run …/node …. 7 repo × 4 워크플로 = 28 개의 거의 동일한 YAML.문제
oven-sh/setup-bun@v2) vs 본 reusable workflow 의 pinned-SHA 정책 충돌1.1.38하드코딩 vsplugin-ci.yml의1.3.9input default → 같은 repo 안에서 두 bun 버전 존재head.repo.full_name == github.repository) 도 4 곳에 복붙권장
lvis-project/.github/.github/workflows/plugin-ci.yml의 lint/typecheck/test conditional 패턴 (line 49-60) 을 mirror 해서:각 플러그인 repo 의 7 개 standalone yml 제거,
ci.yml만 남기면 자동 활성화.영향
plugin-ci.yml에 conditional step 4 개 추가의존성