Files

156 lines
10 KiB
YAML

lens-registry:
version: 2
purpose: >
서로 구별되는 12개 평가 렌즈를 다양성의 바닥으로 고정한다.
다양성은 렌즈 수에서 나오며 role headcount가 아니다. 효율화(패밀리 통합)는 이 바닥을 줄이지 않는다.
v2: LENS-ADVISORY(외부·제3자 독립 자문) 추가 — 컨설팅 패밀리가 carry. 내부 렌즈로 대체 불가(내부 편향 밖 관점).
source-document: org-os/00-role-registry/team-topology-map.yaml (executive-balance)
rules:
- R1. 패밀리 통합 시 서로 다른 lens는 절대 병합 금지. 같은 lens의 중복 role만 합친다.
- R2. divergent 모드는 tier별 최소 렌즈 수 이상을 병렬로 커버해야 한다.
- R3. converge 모드(특히 heavy)는 렌즈 의견을 하나로 뭉치지 말고 트레이드오프째 노출한다.
- R4. LENS-CONTRARIAN 담당 패밀리는 해당 옵션을 작성한 패밀리와 달라야 한다(이해상충 방지).
lenses:
- { lens-id: LENS-VALUE, name: 장기가치, question: "장기 회사가치·포트폴리오 적합성?", carrier-families: [FAM-CEO, FAM-STRATEGY, FAM-ARCHITECTURE-BIZ], primary: FAM-CEO }
- { lens-id: LENS-TECH, name: 기술, question: "아키텍처·안정성·확장성·기술부채?", carrier-families: [FAM-CTO, FAM-VPENG, FAM-ENG-FRONTEND, FAM-ENG-BACKEND, FAM-ENG-SPECIAL, FAM-PLATFORM-INFRA, FAM-ARCHITECTURE-TECH, FAM-DATA], primary: FAM-CTO }
- { lens-id: LENS-PRODUCT, name: 제품, question: "고객문제·제품가치·로드맵·P/L?", carrier-families: [FAM-CPO, FAM-PRODUCT-MGMT], primary: FAM-CPO }
- { lens-id: LENS-FINANCE, name: 재무, question: "비용·ROI·자본효율·기회비용?", carrier-families: [FAM-CFO, FAM-STRATEGY, FAM-REVOPS], primary: FAM-CFO }
- { lens-id: LENS-OPS, name: 운영, question: "운영타당성·프로세스·지원부담?", carrier-families: [FAM-COO, FAM-OPS-DELIVERY, FAM-ARCHITECTURE-BIZ], primary: FAM-COO }
- { lens-id: LENS-INTEGRATION, name: 제품기술통합, question: "제품-기술 통합·충돌 감소?", carrier-families: [FAM-CPTO], primary: FAM-CPTO }
- { lens-id: LENS-SECURITY, name: 보안, question: "위협·shift-left·데이터 무결성?", carrier-families: [FAM-SECURITY, FAM-PLATFORM-INFRA], primary: FAM-SECURITY }
- { lens-id: LENS-LEGAL, name: 법무, question: "계약·컴플라이언스·프라이버시?", carrier-families: [FAM-LEGAL], primary: FAM-LEGAL }
- { lens-id: LENS-CUSTOMER, name: 고객, question: "사용자 리서치·고객의 소리·경험?", carrier-families: [FAM-UX-RESEARCH, FAM-DESIGN, FAM-GTM-SALES, FAM-OPS-DELIVERY], primary: FAM-UX-RESEARCH }
- { lens-id: LENS-REVENUE, name: 매출, question: "매출영향·GTM motion·lead-to-cash?", carrier-families: [FAM-REVOPS, FAM-GTM-GROWTH, FAM-GTM-SALES], primary: FAM-REVOPS }
- { lens-id: LENS-ADVISORY, name: 외부자문, question: "내부 편향 밖에서 보면? 벤치마크·베스트프랙티스·독립 검증 대비 어디에 서 있나? 실무 프레임워크(MECE·Pyramid·Diátaxis·C4)로 증명되나?", carrier-families: [FAM-CONSULTING, FAM-DOC-CONSULT], primary: FAM-CONSULTING }
- { lens-id: LENS-CONTRARIAN, name: 역발상, question: "이걸 하지 말아야 할 이유·무엇이 깨지나?", carrier-families: [], carrier-policy: rotation-any-audit-capable-non-authoring-family, primary: null }
shared-lens-selection:
rule: divergent 시 공유 렌즈(carrier 다수)는 기본적으로 primary carrier 1개가 대변한다.
heavy-expansion: tier=heavy이고 그 렌즈가 결정에 핵심이면, 동일 렌즈의 추가 carrier를 서로 다른 sub-angle로 분화해 spawn한다.
example: LENS-TECH는 heavy에서 아키텍처(FAM-ARCHITECTURE-TECH)/플랫폼신뢰성(FAM-PLATFORM-INFRA)/데이터(FAM-DATA) sub-angle로 분화.
contrarian-rotation:
state-source: state/workflow-state-registry.yaml last-contrarian-family
policy: round-robin over audit-capable non-authoring families
rule: 직전 last-contrarian-family 다음 순번을 선택하고 선택 후 갱신한다.
sub-specialty-axis:
# lens 다양성(위 12 lens = 다양성 바닥)과 '별개의 축'. lens_cap이 이 축으로 판정한다.
# 근거: 리뷰 finding #12. 이전 lens_cap은 role별이 아니라 family의 carries-lenses를
# 모든 멤버에 복사해, 같은 lens면 무조건 1명만 남기고 나머지 전문분야를 삭제했다
# (아키텍트 7명: EA/솔루션/앱/기술/IT/시스템분석/SWAT → standard에서 6명 삭제).
purpose: >
같은 lens 안에서도 서로 다른 sub-specialty(전문분야)는 중복이 아니다
(application vs system architecture, PM vs TPO, product vs platform design,
security-engineering vs appsec). lens_cap은 이 축으로 '진짜 중복(같은/미분화
sub-specialty)'만 잡고, distinct sub-specialty는 tier 상한까지 허용해 전문분야
삭제를 멈춘다. lens = 다양성 축(무엇을 보는가), sub-specialty = 커버리지 축(어떤 전문성인가).
rules:
- S1. 위반 = 같은 lens 안에서 (a) 같은/미분화 sub-specialty를 2명 이상 spawn(진짜 중복),
또는 (b) distinct sub-specialty 수가 tier 상한 초과(fan-out 폭 가드).
- S2. distinct sub-specialty는 tier 상한까지 허용한다(같은 lens라도 서로 다른 전문분야는 살린다).
- S3. tier=heavy는 permissive(sub-angle 분화 전면 허용) — 상한/중복 검사 생략.
- S4. role→sub-specialty는 대소문자 무시(registry는 UPPER, 호출은 어느 case든 허용).
distinct-sub-specialties-per-lens:
# 한 lens 안에서 병렬 spawn 허용되는 '서로 다른 sub-specialty' 상한(=fan-out 폭 가드).
# 값 근거: standard는 최대 fan-out family(FAM-ARCHITECTURE-TECH 7명)에 여유 1을 더해 8.
# light는 저위험·경량이라 폭을 좁혀 3. heavy는 무제한(null).
light: 3
standard: 8
heavy: null
derivation:
rule: >
role의 sub-specialty는 아래 role-sub-specialty 매핑에서 찾는다(대소문자 무시).
매핑에 없으면 role-id 자체를 sub-specialty로 본다(각 role은 기본적으로 고유 전문분야 —
누락 role이 실수로 '미분화'로 합쳐져 전문분야가 삭제되는 것을 막는다).
lens 판별 불가한 미등록 role은 어느 lens 그룹에도 속하지 않아 위반 대상이 아니다.
soT-note: >
role-profiles.yaml은 편집하지 않는다(gen_agents가 읽는 원천). 이 매핑이 sub-specialty 축의 SoT다.
role-sub-specialty:
# LENS-TECH — architecture (FAM-ARCHITECTURE-TECH): 같은 lens, 서로 다른 전문분야
ARCH-EA: enterprise-architecture
ARCH-SOLUTION: solution-architecture
ARCH-APP: application-architecture
ARCH-TECH: infrastructure-architecture
ARCH-IT: it-systems-architecture
ARCH-SYSANALYST: systems-analysis
ARCH-SWAT: architecture-swat
# LENS-TECH — data (FAM-DATA)
ARCH-DATA: data-architecture
DATA-ENGINEER: data-engineering
DATA-BIGDATA: bigdata-engineering
# LENS-TECH — frontend eng (FAM-ENG-FRONTEND)
ENG-FE: frontend-app
ENG-FEPLAT: frontend-platform
ENG-FEUX: frontend-ux-engineering
# LENS-TECH — backend eng (FAM-ENG-BACKEND)
ENG-BE: backend-app
ENG-BEGEN: backend-generalist
ENG-PRODSERVER: product-server
ENG-PLATSERVER: platform-server
ENG-PRODUCTMINDED: product-minded-engineering
ENG-SW: software-engineering
# LENS-TECH — special eng (FAM-ENG-SPECIAL)
ENG-DESKTOP: desktop-app
ENG-PRODCHAPTER: developer-productivity
# LENS-TECH / LENS-SECURITY — platform·infra (FAM-PLATFORM-INFRA)
INFRA-DEV: infra-development
INFRA-PLATFORM: platform-engineering
INFRA-DEVOPS: devops
SRE: site-reliability
SEC-DEVSECOPS: devsecops
# LENS-TECH — executives (IC와 구별되는 전문분야)
EXEC-CTO: technology-executive
EXEC-VPENG: engineering-delivery
# LENS-PRODUCT (FAM-CPO, FAM-PRODUCT-MGMT)
EXEC-CPO: product-executive
PROD-PM: product-management
PROD-PO: product-ownership
PROD-TPO: technical-product
PROD-PPO: platform-product
# LENS-CUSTOMER (FAM-UX-RESEARCH, FAM-DESIGN, FAM-GTM-SALES, FAM-OPS-DELIVERY)
UX-RESEARCHER: ux-research
DATA-ANALYST: product-analytics
DES-PROD: product-design
DES-PLATFORM: design-systems
DES-INTERNAL: internal-tools-design
GTM-CS: customer-success
GTM-PARTNER: partnerships
OPS-CH: customer-consulting
OPS-CREW: operations-crew
# LENS-SECURITY (FAM-SECURITY)
SEC-ENGINEER: security-engineering
SEC-APPSEC: application-security
SEC-CHAMPION: security-champion
# LENS-REVENUE (FAM-GTM-GROWTH, FAM-GTM-SALES, FAM-REVOPS)
GTM-GROWTHPM: growth-product
GTM-DEMANDGEN: demand-generation
GTM-PMM: product-marketing
GTM-CI: competitive-intelligence
GTM-SALES: sales
GTM-REVOPS: revenue-operations
GTM-PRICING: pricing-strategy
# LENS-FINANCE (FAM-CFO, FAM-STRATEGY, FAM-REVOPS)
EXEC-CFO: finance-executive
STR-ANALYST: strategy-analysis
# LENS-VALUE (FAM-CEO)
EXEC-CEO: chief-executive
# LENS-OPS / LENS-VALUE (FAM-COO, FAM-ARCHITECTURE-BIZ)
EXEC-COO: operations-executive
ARCH-BA: business-architecture
ARCH-BIZANALYST: business-analysis
# LENS-ADVISORY (FAM-CONSULTING, FAM-DOC-CONSULT)
CONSULT-EM: engagement-management
CONSULT-STRAT: strategy-consulting
CONSULT-OPS: operations-consulting
CONSULT-ORG: org-change-consulting
CONSULT-DIGITAL: digital-consulting
CONSULT-FIN: finance-risk-consulting
DOC-LEAD: doc-engagement-lead
DOC-WRITER: technical-writing
DOC-IA: information-architecture
DOC-VISUAL: technical-illustration
DOC-EDU: developer-education
# 기타 렌즈 singleton
EXEC-CPTO: product-tech-integration
GTM-LEGAL: legal-compliance
QA: quality-assurance
OPS-ORCH: orchestration