셀코어 엔터프라이즈 규칙 엔진 — 5규칙 × 8회사
소스: /Users/ef/crowny-enterprise/셀코어_엔터프라이즈.한선 (203줄)
JS 미러: /Users/ef/crowny-enterprise/companies.js — SELCORE_RULES, runSelcore(slug), toCells(data, tree)
API: GET /api/selcore/rules (전역) · GET /api/{slug}/selcore (회사별 실행 결과)
1. 셀 슬롯 레이아웃 (엔터프라이즈 도메인)
| 슬롯 | 의미 | 타입 |
|---|
| [0] | 엔티티명 | string |
| [1] | 모듈 (KPI/프로젝트/트리노드) | string |
| [2] | TOAU 상태 | T/O/A/U |
| [3] | 비전단계 | 1일상·2성공·3가치 |
| [4] | KPI 달성률 | 0-100 |
| [5] | 리스크 | 0-5 |
| [16] | 부서코드 | string |
| [17] | 프로젝트코드 | string |
| [18] | 진행률 | 0-100 |
| [19] | 예산 | number |
| [20] | 예산 소진률 | 0-100+ |
| [21] | 종합점수 | 0-100 |
| [22] | 우선순위 | 0-10 |
2. 규칙 정의 (한선씨 ↔ JS 1:1 매칭)
| 규칙 ID | 이름 | 우선도 | 조건 → 동작 |
|---|
| R1 | KPI미달성경보 | 10 | KPI 달성률 40% 미만 → 우선순위 9 (최고) |
| R2 | 고위험프로젝트 | 9 | 프로젝트 리스크 4이상 → 우선순위 8 |
| R3 | 프로젝트완료전환 | 8 | 진행률 100% → TOAU=T(완료) |
| R4 | 보류항목재검토 | 7 | 보류(U) + 리스크 3이상 → 우선순위 7 재검토 |
| R5 | 예산초과경보 | 10 | 예산소진률 90% 이상 → 경보 |
3. 8개 회사 규칙 발화 현황
4. 규칙 평가 흐름
companies[slug].getData()
↓
toCells(data, tree) ← KPI + 프로젝트 + 트리노드 level≥2 셀화
↓
SELCORE_RULES.forEach → rule.when(cell) 참 시 rule.set 적용 + fires[] 기록
↓
topCells = 우선순위(슬롯22) > 0 인 셀 상위 10개
↓
GET /api/{slug}/selcore → JSON 응답
5. TOAU 상태기계
U(보류) ─검토시작→ O(조사)
O(조사) ─실행결정→ T(실행)
O(조사) ─위임결정→ A(위임)
O(조사) ─보류결정→ U(보류)
A(위임) ─위임완료→ T(실행)
A(위임) ─위임실패→ O(조사)
T(실행) ─재검토──→ O(조사)
6. 확장 포인트
- 규칙 추가:
companies.js SELCORE_RULES 배열에 {id, name, priority, when, set, desc} 객체 추가 → 한선씨에도 룰생성() 함수로 미러
- 슬롯 확장:
toCells() 내부에서 새 슬롯 매핑 추가
- 업종별 규칙: Phase 6 — 업종별 특화 규칙세트 (보험GA, 제약, 방송 등)
- 실행 이력:
fires[] 감사 로그에 persist (Phase 9)
자동 생성: 2026-04-16 · 크라우니 엔터프라이즈 셀코어 엔진