다크모드
BE 핸드오프 — 워크스페이스 홈
2026-07-16 전역 헤더 정리
브랜드명, 헤더 패딩, 언어 전환 위치만 변경했다. Leyve Cloud 워드마크와 하단 KO / EN은 프런트 표시 계약이며 인증·locale API나 Organization/Workspace 데이터 계약 변경은 없다. locale은 기존 Vue i18n 런타임 상태를 그대로 사용한다.
2026-07-15 안내 정보 노출 변경
홈의 반복 설명을 제거하고 범위·집계 기준을 InfoHint로 점진 공개하도록 바꿨다. 이는 표시 계층 변경이며 workspace_module_entitlements, Organization/Workspace 문맥, 경영현황 응답 계약에는 변화가 없다. API는 설명문을 내려줄 필요 없이 기존 권한·집계 데이터를 계속 제공한다.
현재 데이터 경계
워크스페이스 홈의 상품 목록은 workspace_effective_module_entitlements(organization_id, workspace_id) RPC를 사용한다. 이 좁은 SECURITY DEFINER 계약이 유효한 organization_product_contract_items와 원본 workspace_module_entitlements의 교집합을 보장하며, 원본 entitlement 테이블은 runtime read contract로 사용하지 않는다. Organization·Workspace 문맥은 organizations, organization_memberships, workspaces와 effective entitlement RPC에서 복원한다.
업무 카드의 한국어·영문 표시명은 프런트 productVocabulary에서 조합한다. API는 별도 표시명을 내려주지 않으며, 표시명 추가가 entitlement·module key 계약을 변경하지 않는다.
전역 메뉴의 5개 상품 범주와 하단 내 계정 배치는 프런트 표시 계약이다. 서버는 기존 module key별 entitlement만 반환하며 범주별 권한이나 별도 메뉴 API를 만들지 않는다. 빈 범주 숨김도 프런트가 활성 entitlement를 바탕으로 계산한다.
sales와 purchasing은 별도 상품·별도 entitlement다. 프런트는 각각 판매·매출채권, 구매·매입채무 카드로 표시하며 한쪽 권한이 다른 쪽 진입 권한을 부여하지 않는다. /workspace/trade 비교 허브만 두 entitlement 중 하나 이상을 허용한다. 이 표시 변경으로 API·DB 키·권한 모델은 바뀌지 않는다.
현재 useBusinessOverview의 매출·매입·VAT는 프론트 데모 증빙 집계이며 실제 Organization 데이터가 아니다. 실제 Organization에는 이 mock 집계를 노출하지 않는다.
실제 집계 API 요구
향후 경영현황 API는 인증 사용자의 Organization membership을 검사하고 다음 입력을 명시적으로 받는다.
organization_id- 선택
workspace_id period=YYYY-MM
응답은 매출 공급가액, 매입 공급가액, 예상 부가세, 미분류 증빙 건수와 집계 기준시각을 포함한다. Organization 범위는 접근 가능한 Workspace의 합계, Workspace 범위는 해당 Workspace만 집계해야 하며 데모 seed를 fallback으로 반환하지 않는다.