Plan — Org & Cloudflare Reorg v1
autogen-labs 레포·Cloudflare 재구성 기획서 v1
status: 실행 기준 문서
org:autogen-labs· Cloudflare prod-only account
naming SSOT: topology v6 (docs/NAMING_AND_TOPOLOGY.md)
as-of: 2026-08-28
핵심 결론
solution-init Phase 0–8 프롬프트는 신규 제품 스캐폴드다. 현재 org에는 이미 운영 중인 4개 표면이 있다. 이를 core 하나에 /apps/web + /apps/docs로 합치면 topology의 “web + API + admin + kits를 단일 Turborepo로 만들지 말 것” 규칙을 깨고, 오늘 배포된 Worker를 중복 생성한다.
적용 방식: init 페이즈를 레포별로 재매핑하고, Cloudflare 이름은 topology v6 + 실자원을 SSOT로 고정한다. 새 D1은 만들지 않는다.
flowchart LR subgraph repos [GitHub repos] coreRepo[core] webRepo[web-public] docsRepo[docs] appRepo[app-dashboard] end subgraph cf [Cloudflare] coreApi[core-api] coreAdmin[core-admin] webPublic[web-public] appDash[app-dashboard] docsPages[docs] end coreRepo --> coreApi coreRepo --> coreAdmin webRepo --> webPublic docsRepo --> docsPages appRepo --> appDash coreApi --> coreD1[core-d1] coreApi --> coreR2[core-r2]목표 토폴로지
~/develop/autogen-labs/├── docs/ # Pages docs (Astro + Starlight)├── core/│ ├── workers/core-api/ # Worker core-api│ ├── apps/admin-web/ # CF name core-admin│ └── packages/├── web-public/ # Worker/Pages name web-public└── app-dashboard/ # Worker name app-dashboard유지하는 Cloudflare 이름
- Workers:
core-api,core-admin,web-public,app-dashboard - Pages:
docs - D1:
core-d1 - R2:
core-r2
생성하지 않을 것
core안의 Vite/apps/web또는 두 번째 Hono Workerapp-web-api- 새 D1
core-core-db(기존core-d1편입) core-jobs/core-ops/ Queue / KV / Vectorize — 소비자 생기기 전 mint 금지- 단일 org Turborepo
- Cloudflare
name에-dev/-stg/-prod
정책 충돌 해소
| 표면 | 폐기 (kit 방언) | SSOT (topology v6) |
|---|---|---|
| Worker API | app-web-api | core-api |
| D1 | core-core-db | core-d1 (기존 편입) |
| R2 | 신규만 r2-<domain>-<purpose> | 기존 core-r2 유지 |
| 문서 사이트 | /apps/docs in core | 별도 레포 docs |
Worker name을 바꾸면 새 프로젝트가 생기고 *.workers.dev URL이 끊기므로 라이브 이름은 바꾸지 않는다.
STOP-AND-ASK
- 기존
core-d1대신 새 D1 생성 전 .env.example에 없는 새 Secret 키 이름 확정 전- CODEOWNERS에 실제 GitHub username 작성 전
완료 보고 기준
- Phase 0 정책 킷 (core 개정 + satellite 백필)
- D1/R2 편입 검토 코멘트 (
workers/core-api/wrangler.prod.toml등) - 리소스명 topology v6 준수 (라이브
name유지) - wrangler deploy는 GitHub Actions 경유
- Secret 하드코딩 없음 (
wrangler.dev.toml에서 AUTH_SECRET 제거) - ops-ci-workflows 미존재 — 인라인 CI 유지 (이유 기록)
- 기존 스키마 유지 — remote
core-d1에 tenants/users/sessions 등 14개 테이블 확인 - Astro 문서 사이트 ≠ Astra DB (별도
docs레포) - CODEOWNERS 플레이스홀더 + 실계정 요청
- Branch Protection 수동 설정 안내
Follow-up implemented (2026-08-28)
- Hono RPC typed clients —
@autogen-labs/api-client-kitin core; satellite Hono contracts +hcinweb-public/app-dashboard - shadcn token alignment — satellite
--cl-*+ Tailwind presets synced to ui-kit SSOT - solution-init prompts rewritten for multi-repo topology v6 (
manifest1.1.0)
Still manual / deferred
- CODEOWNERS real GitHub usernames (STOP-AND-ASK)
- Branch Protection on
main(GitHub UI) ops-ci-workflowsreusable, kit repo split,core-jobs/ Queue mint — not in scope until consumers exist
고아 리소스 (2026-08-28 재확인)
nf-shared-db-admin/nf-shared-r2-assets는 코드 참조 없음. 계정에서 이미 사라짐 (D1/R2 list에core-d1/core-r2만 존재). 삭제 작업 불필요. 새 D1은 만들지 않음.