kintex/docs/GAP_AUDIT.md
zio fe6757f00a docs(web): fix stale backend-not-implemented comments (GAP hygiene item)
auction/visitor/marketing sample data + cms.css headers now state the
real wiring status (live API primary, samples are degraded fallback
only; G-04 SMTP follow-up noted). Mark hygiene item resolved in
GAP_AUDIT.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 23:48:03 +09:00

8.5 KiB
Raw Blame History

KINTEX AI 전시·행사시스템 — 미개발 전수 감사 (GAP_AUDIT)

  • 감사일: 2026-07-12 · 감사자: kintex-gap-auditor
  • 범위: src/frontend(85 라우트) + src/backend(74 컨트롤러) 4자 체인(메뉴↔라우트↔화면↔API) 교차 대조
  • 방법: gap-taxonomy grep 신호 + 실코드 확인. 수정 없음(감사·문서 전용).

① 요약

구분 건수
미개발 총계(코드) 9건
P0 (핵심 흐름 차단) 0
P1 (주요 화면 미배선/백엔드 전무) 2
P2 (부분·degraded·planned) 7
데이터 이슈(별도, 코드 정상) 행사스코프 시드 정렬 계열(전수 아님)
문서 위생(별도, 미개발 아님) 4 (stale "미구현" 주석)

총평: 앱 완성도는 매우 높다. 데드 메뉴 0, 빈 onClick/데드링크 0, 최상위 return null 라우트 0. 도메인 백엔드(auction·visitor·cms·marketing·logistics·settlement·hallassign·boothsales)는 전부 실구현. 가장 중요한 발견은 "미개발이 많다"가 아니라 "프론트 sample 헤더 주석이 Phase D 백엔드 배포 이후 갱신되지 않아 STALE 하다"는 점 — 실제 미개발은 아래 2건(P1)뿐이며 나머지는 graceful degraded/planned.

최우선(P0/P1) 목록

  1. [P1] TenantAdminPage — 백엔드 /api/admin/tenants(목록+생성) 실존하나 프론트가 하드코딩 배열·disabled 버튼으로 미배선.
  2. [P1] PublicTicketPage(입장권 예매/조회) — 티켓·재고·결제(PG) 백엔드가 아예 없음(고객 대면 공개 라우트).

② 4자 체인 인벤토리 (요약)

메뉴 to 타깃 ↔ App.tsx 라우트 ↔ 화면 컴포넌트 ↔ 백엔드 매핑. 전 메뉴 항목이 라우트에 정합(데드 메뉴 없음).

메뉴 그룹 대표 라우트 화면 상태 백엔드 컨트롤러 판정
전시운영 /exhibitors,/schedule,/halls,/booth-sales,/ops/operations,:eventId/dashboard 실렌더 Exhibitor·EventCatalog·HallAssign·BoothSales·Ops·Dashboard
설계·시공 :eventId/halls/:hallId/layout,/docs,/auctions,/contractor/dashboard,/logistics 실렌더 Floorplan(m2)·Design(m3)·Utility(m4)·RenderJob(m5)·Document·Auction·Contractor·Logistics
관람객·마케팅 /visitors,/visitors/checkin,/leads,/campaigns,/sponsorship,/cms 실렌더 Visitor·Marketing·CmsContent/Media/Microsite
정산·분석 /settlement,/analytics 실렌더 Settlement·Analytics(+Overview)
업무공통 /work/*(worklog·schedule·message·notice·meeting·report·approval·opinion·search),/app-qr 실렌더 work.* 11 컨트롤러
시스템관리(admin) /admin,/admin/users·roles·depts·companies·menus·programs·role-menus·codes·auth-policy·login-history·audit·error-log·system-health·settings·mail-config·notify-config·**tenants**·masterdata/rulesets·holidays·login-slides 실렌더 system.* + AdminDashboard·AuditLog·Ruleset·TenantAdmin ⚠ tenants만 미배선
공개사이트 /public/*,/visitor·/business·/agency,/tickets/* 실렌더 PublicSite·PublicGuide·PublicCms·PublicMicrosite·VisitorAssistant /tickets/*만 백엔드 전무
모바일 셀프 /m/booths/:id/checklist·/inspection 실렌더(웹뷰) (모바일 앱 mobile/ 별도 트랙)

③ 미개발 목록 (근거·유형·심각도·정본)

P1 — 주요 미배선/백엔드 전무

G-01 [P1] 테넌트 관리 화면 미배선 (frontend)해소(2026-07-13)

  • 파일: src/frontend/src/screens/admin/TenantAdminPage.tsx:20(하드코딩 TENANTS), :53(추가 버튼 disabled title=notImpl)
  • 유형: 미배선(백엔드 존재, 프론트 sample 고정) — CRUD 누락(목록·생성 미연결)
  • 근거: 백엔드 TenantAdminController(/api/admin/tenants GET list + POST create) 실존. 화면 주석 "백엔드 미구현"은 STALE.
  • 정본: PLANNING M18 §1A(테넌트 온보딩), design.md SCR-A9. 기획에 있음.
  • 해소: tenantApi(list/create) 라이브 배선 — react-query 목록(로딩/에러/빈 상태), 등록 모달(서버 권위 검증+클라 미러), KxDataTable(검색·정렬·CSV), tenant.* i18n 17키×4로케일. 하드코딩·disabled·샘플 배너 제거.

G-02 [P1] 입장권 예매/조회 백엔드 전무

  • 파일: src/frontend/src/screens/public/PublicTicketPage.tsx:5(주석 "티켓·재고·결제 API 부재 → 샘플"), :36(하드코딩 TICKETS)
  • 라우트: /tickets/:eventId/purchase, /tickets/lookup (공개, 비로그인 고객 대면)
  • 유형: 미구현 API(백엔드 컨트롤러 부재 — grep "ticket" in backend = 0) + PG 미연동
  • 정본: PLANNING M10(관람객)·M9(정산) design.md SCR-P7. 기획에 있음.

P2 — 부분 미개발(정상 degraded/planned)

ID 항목 근거(파일:라인) 유형 비고
G-03 CMS AI 자동번역 cms/MultilingualCmsPage.tsx:127 · cmsApi.ts:150 백엔드 501 → degraded "준비 중" 초벌 번역 AI 미배선
G-04 마케팅 캠페인 실발송 marketing/MarketingController.java:49 send 엔드포인트 존재하나 실 이메일 발송 미구현(status 전이만) SMTP 연동 후속
G-05 서류 HWP/PDF 생성 docs/ReportAuthoringPage.tsx:476-479 · docs/DocsMilestonePage.tsx:34 버튼 disabled "준비중" 파일 큐 연동 후속
G-06 회의 녹음/STT 전사 work/MeetingPage.tsx:161 "준비 중" 표기 녹음·STT AI 미배선
G-07 통합검색 자연어(AI) work/SearchPage.tsx:132,144 "준비 중", 키워드 검색은 동작 AI 검색 미배선
G-08 마이페이지 프로필 수정·알림 서버동기화 work/MyPage.tsx:127,192 "준비 중"(로컬 저장) 프로필 PUT·알림설정 API 미배선
G-09 부스설계 렌더 이력 저장 design/BoothDesignStudioPage.tsx:135 501 → "큐잉만 동작" 렌더 이력 영속 후속

계획됨(미개발 아님)

  • AppQr iOSappqr/AppQrCodePage.tsx: Android APK 배포, iOS는 EAS G3 게이트 명시적 로드맵.

④ 별도 분류 (미개발 아님)

데이터 이슈 (코드 정상 · 담당=kintex-testdata-dev)

  • sample-import 12개 화면(analytics·dashboard·ops·floorplan·gallery·marketing×2·schedule·visitor×3)은 조건부 degraded 폴백(NETWORK/NOT_FOUND/NOT_IMPLEMENTED 시에만 sample). 실 API가 primary. 빈 화면으로 보이면 코드가 아니라 행사스코프 시드 미정렬 → testdata 담당.

문서 위생 — STALE 주석 (기능 영향 없음 · 담당=frontend-dev 청소) — 해소(2026-07-13)

  • screens/auction/sampleAuction.ts:3 "M15 역경매 엔진 미구현" → 실구현 반영 주석 갱신
  • screens/visitor/sampleVisitor.ts:3 "M10/M11 백엔드 미구현" → 실구현 반영 주석 갱신
  • screens/marketing/sampleMarketing.ts:3 "M12 백엔드 미구현" → 실구현 반영 주석 갱신(G-04 실발송 후속 명시)
  • screens/cms/cms.css:4 "M17 백엔드 미구현 → 전 화면 로컬 샘플" → cmsApi 실배선 반영 주석 갱신 → 4건 모두 "실구현 완료 + 샘플은 강등 폴백" 문구로 정정. 재감사 오탐 방지.

⑤ 우선순위 백로그 (수정 담당 매핑)

순위 ID 작업 담당
1 G-01 TenantAdminPage → /api/admin/tenants GET/POST 배선(하드코딩·disabled 제거) — 2026-07-13 해소 kintex-frontend-dev
2 G-02 티켓 도메인 백엔드(티켓·재고·예매·조회) + PG 어댑터 + 프론트 배선 kintex-backend-dev(+visitor-dev) → frontend-dev
3 G-04 캠페인 실발송(SMTP, 수신동의·상한) kintex-backend-dev(marketing)
4 G-03 CMS AI 자동번역 배선(AiTextRouter) kintex-ai-dev
5 G-06/G-07 회의 STT·통합검색 자연어 AI kintex-ai-dev
6 G-05/G-09 서류 HWP/PDF 생성·렌더 이력 영속(파일/렌더 큐) kintex-backend-dev
7 G-08 마이페이지 프로필 PUT·알림설정 API kintex-backend-dev + frontend-dev
8 (위생) STALE "미구현" 주석 4건 정리 — 2026-07-13 해소 kintex-frontend-dev
(데이터) 행사스코프 시드 정렬(빈 화면 폴백 해소) kintex-testdata-dev

P0/P1 지적은 kintex-qa가 실동작(라우트 렌더·경계면)으로 재검증 후 kintex-impl-orchestrator로 인계.