크라우니집사회 출시 — deacon.crowny.org v2.0.0 고도화
개요
딕컨(deacon.crowny.org:9772)을 크라우니집사회로 고도화. 패블·오푸스·소넷·하이쿠가 에너지 들이지 않고 결과물을 만들어내게 하는 도구 연결체이자, 마스터크라우니집사의 능력을 극대화하는 계층 오케스트레이션 허브. 오직 JIT 구조의 순수 한선씨로 구현.
계층 모델 (7⁴ = 2401)
L0 마스터크라우니집사 (작업계획)
└ L1 패블 ×3~7 (미션 목표)
└ L2 오푸스 ×3~7 (아키텍팅 목표)
└ L3 소넷 ×3~7 (명확한 작업)
└ L4 하이쿠 ×3~7 (빠른 작업, 리프)
- JIT 적시생성: 트리를 미리 만들지 않는다. 자식 티켓은 부모가
보고하는 시점에만 생성(학습DBJIT적시생산어휘 계승). 팬아웃 클램프 최대 7(초과 병합 기록, 무언절삭 금지). - 규칙게이트(내재 목표): 티켓 생성 즉시 3단 게이트 — ①결정형 핸들러(닫힌 화이트리스트) ②brainq :9977(0.2ms 토큰0) ③셀코어 룰. HIT면 LLM 없이
규칙처리즉시완료. 자립도(규칙처리/전체)를 stats로 상시 노출 — 대다수를 규칙기반 내부컴퓨팅이 처리하는 방향으로 래칫.
무엇을 만들었나
서버 (순수 한선씨, LLM 3집사 병렬 구축)
/Users/ef/crowny-deacon/서버.한선(508줄) + 코어 4엔진한선씨/: 집사회(110)·계층분배(72)·규칙게이트(88)·미션장부(274줄, PSV append-only + 리플레이 복원). 전 파일 STRICT 경고 0.- API:
GET /api/health·plans(기존 계약 불변)·/api/council/stats·missions·tree,POST /api/council/mission·claim·report(전부 X-Deacon-Key 필수 — 무인증 공개노출 전례 방어. 본문 shell 실행 경로 없음 — 딕컨 RCE 전례 방어). GET /= 집사회 관제 UI,GET /landing= 기존 랜딩(요금제) 이전 서빙.- LaunchAgent
org.crowny.deacon→ crownyc run 서버.toau 전환 +org.crowny.deacon-recycle(매일 4:44 kickstart — crownyc 힙144MB 누적OOM 대책).
관제 UI
public/집사회.html(450줄, 단일파일·크라우니디자인 중앙CSS·디자인대조 PASS): 자립도 게이지, 집사 계층 카드, 미션 목록→티켓 트리(레벨 들여쓰기·상태 배지·규칙처리=골드 토큰0 배지), 미션 발행 폼(열쇠 localStorage), 10초 폴링.
연결체 (분업/협업 도구 재점검 결과 계승)
- 구 분업도구 점검:
butler-dispatch.js(울트라워크플로우 이전, 2026-06-13)·~/.claude/butler/집사자산 6종·분업.한선+분업규칙.psv 19규칙 — 전부 생존, 집사회의 하부 레이어로 계승. ~/.claude/scripts/집사회.sh— 터미널 세션 브릿지:미션/수신/보고/현황. 4상 판정(티/옴/타/음, 키 없음=음 이관) 동반집사회브릿지.한선.~/.claude/workflows/butler-council.js— 세션 내 실행 백본: args.tickets를 모델별 agent()로 병렬 소화(가드레일 전주입), 패블 티켓은 실행 금지 fable_required 반환(패블 실행자금지 규칙). 동반 butler-council.한선./butler-council스킬 등록됨.
마스터크라우니집사 사용 흐름 (패블코어 초고속 작업)
bash집사회.sh 미션 "제목" "목표1
목표2
목표3" # → L1 패블 티켓 3개 (규칙게이트 선통과 — HIT면 토큰0 즉시완료)
집사회.sh 수신 fable # 패블 터미널이 미션목표 claim
집사회.sh 보고 T1 "결과" "아키텍팅지시1⏎지시2⏎지시3" # → L2 오푸스 JIT 생성
# 오푸스→소넷→하이쿠 동일. 세션 내 소화는 butler-council.js(Workflow)로.
집사회.sh 현황 # 자립도·집계
라이브 실측 (2026-07-26 전항 PASS)
- 9772 v2.0.0 응답, /api/plans 기존 JSON 동일, /landing 기존 랜딩 타이틀 확인, 키없는 POST 403.
- JIT 체인: 미션(목표 3줄)→L1 패블 3티켓→claim→report(자식지시 3)→L2 오푸스 3티켓→claim→완료.
- 규칙게이트 HIT:
티켓집계→ 즉시 규칙처리(처리자=규칙게이트), 자립도 14% 노출. - 재기동(kickstart) 후 장부 리플레이 복원 정확(미션2·티켓7·완료2). 공개 HTTPS/HTTP 200.
- 학습 래칫: 코어 4엔진 + UI 로직 4건 + 브릿지 2건 크라우니코드 학습 완료(다음부터 토큰0 재구축).
발견 함정 (전파)
- 하위디렉토리 모듈의 상대 가져오기는 엔트리 파일 디렉토리 기준 —
한선씨/x.한선접두는 서버.한선(루트 엔트리)에서만 유효. 모듈 단독 컴파일(brain learn 포함) 시 이중경로 실패 → 학습은 접두 제거 사본으로. 본문추출cad 패턴의"\n\n"탐색은 실클라이언트\r\n\r\n에서 전 POST 빈본문 —\r\n\r\n우선 + 폴백.- 테스트포트도 선점 확인 필수(9773=walk 라이브 → 9799 사용).
관련 파일
- 스펙 SSOT:
/Users/ef/crowny-deacon/집사회-스펙.md - 코어 상세: CrownyDoc
2026-07-26-crowny-deacon-집사회-코어엔진.md/ 연결체:2026-07-25-집사회-연결체-도구3종.md - 열쇠:
/Users/ef/crowny-deacon/data/집사회열쇠.txt(노출 금지)
잔여 이슈
- 규칙게이트 결정형 화이트리스트 확장(현재 집계·조회·현황 소수) — 자립도 14%→상향이 다음 래칫.
- 패블 터미널 자동 claim 루프(자율루프.한선 연동)·크라우니메신저 보고 배선.
- E2E 보관 장부
data/*.psv.e2e-0726는 참조용(라이브 장부는 신규 시작).
v2.1/v2.2 — 기계어 명령·도구래칫 (2026-07-26~27)
추가된 것
- 명령 물화(4상균형3진 기계어): 티켓 지시문 → brainq(:9977) 조회 → HIT면
data/명령/<티켓ID>.한선저장 → RPN 변환(high2rpn.sh) →.toau기계어. 집사는집사회.sh 명령 <티켓ID>로 수신. route 3종(RPN·HIGH_DIRECT·HIGH_FALLBACK) 기록. - 도구제작 래칫: claim된 티켓의 대응이 타/옴이면 ①
~/.crownycode/미스로그.psvappend(전 세션 ratchet 합류) ②같은 미션에 도구제작 티켓(L3 소넷) JIT 자동 발행. 중복방지·무한증식 차단(도구제작 티켓은 래칫 제외). - 부분대응(옴): brainq MISS여도 학습DB 유사검색 HIT면 참고패턴을
.참고.txt로 첨부. - 장부
|대응|명령경로후방호환 확장, stats대응티/옴/타/도구제작,GET /api/council/order.
성능 회귀와 수리 (실측)
- 회귀: 미션 생성 1건 26.5초, 읽기 stats 10.78초. 원인 둘 — ①
high2rpn.sh가 셀코어 코드에서 14초 쓰고 반드시 실패 후 0.03초 폴백(무의미 비용) ②장부 per-char 스캔 O(n²) + 규칙게이트가 brainq 코드 전문을 결과요약에 저장해 만들어진 11KB 거대 행. - 수리: RPN 사전판정(가져오기·8KB 임계) +
_PSV파싱분리()기반 전환 + 유니크최신 맵기반 O(R) + 결과요약 300자 캡 + 라이브 거대행 2건 압축. - 결과(라이브): 미션 생성 26.5s→0.125s, stats 10.78s→1.03s. 격리 테스트 클린 장부에선 0.02s급.
- RPN 정통 경로 최초 재현: 가져오기 없는 소품 코드 0.19s에 route=RPN.
라이브 래칫 발동 실측 (2026-07-27)
양자내성 격자암호 서명검증 루틴 구현(미학습) → 대응=옴 → 패블 claim → 미스로그 append + T11 도구제작 티켓(L3 소넷) 자동 발행 확인. 공개 HTTPS 200.잔여
- 장부 스케일링 비선형(21→100행 17배): crownyc
부분()/글자수()가 전체 길이 비례라 구조적. 장부 회전·외부 분해 필요. - 형제 모듈
가져오기학습코드는 컴파일 실패(0바이트 toau)인데 대응=티로 남는 정직성 결함 → v1.3 수리 중(대응 옴 강등·미해결 임포트 사전판정).
v1.3/v1.4 — 정직성 수리 + 자립도 정의 정정 (2026-07-27)
v1.3 — 컴파일 실패를 성공으로 보고하던 결함
- 증상(라이브): 형제 모듈을
가져오기하는 학습코드는 산출 디렉토리에 모듈이 없어 컴파일 실패(0바이트.toau)인데 대응이티(정확대응)로 기록 → "기계어 확보"가 거짓. - 수리: 컴파일 FAIL·0바이트면 대응
티→옴강등, 빈.toau삭제, route에 사유 기록(FAIL|미해결 가져오기). 미해결 임포트는 컴파일 시도 전 사전판정(표준 라이브러리·셀코어는 정상 통과 — 과잉차단 없음 실측).
v1.4 — 규칙게이트 자동완료가 자립도를 부풀리던 결함
- 증상(라이브 T13): 대응=옴(기계어 미확보)인데 상태=
규칙처리, 처리자=규칙게이트, 결과요약=brainq 원문. brainq HIT은 "학습DB에 유사 코드가 있다"일 뿐 작업 수행이 아닌데 완료로 계상. - 수리: 자동완료 근거를 결정형 핸들러(실제 값을 계산)로만 한정. 규칙게이트에서 brainq 단계 제거(명령변환과 중복 조회이자 11KB 거대행의 근원). 결정형 화이트리스트 2종→7종 확장:
티켓집계·자립도현황·대기티켓수·모델별대기·도구제작대기·최근완료·미션목록. - 라이브 실측: brainq HIT 티켓은 이제
대기로 남아 claim 대상(결과요약 0자). 신규 5키 전부 실제 계산값 반환(예:모델별대기 fable 2 opus 2 sonnet 1 haiku 0). 자립도 53%는 결정형이 실제 처리한 비율.
장부 압축 도구 (신규 운영 자산)
장부압축.한선(+.toau, STRICT 0): ID별 최신 행만 남기되 최초 등장 순서 보존(claim 순서 불변). 백업 자동.- 근거: crownyc
부분()/글자수()가 전체 길이 비례라 구행이 매 요청 파싱 비용을 물린다. 라이브 실측 stats 2.58초 → 0.094초(11KB 구행 제거). - 자동화:
org.crowny.deacon-recycle(매일 4:44)이 압축 → 재기동 순으로 실행하도록 갱신.
라이브 최종 상태 (2026-07-27)
- 미션 13 / 티켓 19 / 규칙처리 10 / 자립도 53%(정직 정의) / 대응티 3·옴 9·타 0 / 도구제작 티켓 1.
- 응답: stats 0.094s · 미션생성 0.15s급 · 공개 HTTPS 200.
- 소크: 30회 연속 요청 후 PID 불변·200(문자열 핸들 90% 경고는 프로그램 로드 시 소비분, 요청당 누수 아님).
배포 함정 (전파)
cd가 세션에 유지되는 셸에서cp /tmp/새.toau 서버.toau를 컴파일러 디렉토리에서 실행하면 엉뚱한 위치에 배포된다(crownyc 디렉토리에 서버.toau 생성 → 실제 서비스는 구버전 유지). 배포는 항상 절대경로로.