← 목록
기타 2026-07-07 9KB 읽기 8분

요청: 코어-적대검증-보안-운영체크

  • 날짜: 2026-07-07 10:23:55
  • 작업 경로: /Users/ef/CrownyOS/crownyc

요청 본문

패블·오푸스·소넷·하이쿠가 지금 코어상태를 계속 고도화하며 밀도있게 작업할 수 있는 상태인지 적대적검증. LLM 수준 향상과 매칭되게 기능향상 가능한지 체크. 타인 카피 불가 보안속성 마련. 사용자관리/토큰부과계획(누가 얼마나 쓰는지), 사용자 차단 가능여부, 다수 사용자 자동업데이트 가능여부 체크.

관련 산출

(클로드가 작업 결과를 이어 기록)

검증 결과 (울트라 5에이전트 + 페블 교차검증, 2026-07-07)

① 4모델 밀도작업 가능 여부 — 티 (3/3 실증 + 페블 세션 실증)

  • 하이쿠: 별칭 2종 추가+컴파일 성공(티·조건부 — 전체엔진 구동은 자력 실패, 마이크로과제 분업 필요)
  • 소넷: RPN 정본에 검증·질의 추가, §11 규약만으로 린트/컴파일/실행 일발통과(3556/7327 무손상)
  • 오푸스: 신규 알고리즘(조상경로 3홉+순환방지) 구현, 검증 6/6 — 예약어 계속 함정 자력 진단
  • 페블: 본 세션(엔진+RPN 정본+컴파일러 수리) 자체가 실증
  • 조치완료: 예약어 계속·전이 가드레일 템플릿 등재

② LLM 수준 매칭 향상성 — 옴 (조건부, 6개 블로커 실측)

  1. (정정) 문장판정 뒤집힘의 진범 = 시딩 역방향 링크(과일|상위|사과 실측) — 엔진 로직은 정상(개/동물 정상례). 해당 링크 수정 완료. → 진짜 과제 = 시딩 정합성 게이트
  2. 다의어 오염 실측: 배=PEAR 코드에 선박 지식, 다리=BRIDGE 코드에 신체 지식 → 동형이의어 분리 필수
  3. 시딩 30줄 표본: 30% 품질의심, 10% 확정오류(방향역전·무의미쌍)
  4. 스케일업 최선행 병목 = 문자열핸들 480k 전역캡(내부삽입 통짜재구성) → append-전용화 필요
  5. 한국어 어미 전처리 부재(부정 "아니다"가 판정 반영 안 됨·비교 "보다"·조건 "-면")
  6. 27축 한계: 시간선후/정도비교/도구용도 미표현, 판정로직은 27축 중 5종만 사용
→ 전부 국소수정 가능. 수정 후 재검증 시 티 전환 가능

③ 카피방지 — 타→조치중

  • 실측: 전 코어파일 644 world-readable 평문 → 4개 파일 600 잠금 완료
  • 처방: 소스 절대 비서빙(API 응답만), 배포는 .toau 바이너리+해시만, 게이트웨이보안.한선(CWT+IP차단+IDS) 앞단
  • 구멍 발견: brainq(:9977)·crownyllm(:9976)이 게이트웨이로 외부노출인데 인증 없음 — 최우선 봉합 대상

④ 사용자관리/토큰부과 — 옴 (설계 확정, 구축 대기)

  • 재사용: 인증.한선(사용자/세션/토큰) + reward_claims(user_id+claim_key UNIQUE) 멱등 패턴
  • 신설: api_keys(key_id,user_id,issued_at,revoked_at) + api_usage(key_id,ts,endpoint,count) — 키별 누가·언제·몇건 완전 추적, 토큰부과 = usage×단가(맘/포네 결제 crowny-pay 연동)

⑤ 사용자 차단 — 옴 (게이트웨이 실코드 존재, 어댑트만)

  • middleware.한선(IP별 카운터+429) + 게이트웨이보안.한선(IP차단·CWT검증 실패시 차단) 존재
  • 추가 필요: 카운터키를 서비스:apikey로 확장 + 키폐기목록 조회 1줄 → revoke 즉시 발효

⑥ 자동 업데이트 — 옴 (골격 존재, 버전핀 배선만 부재)

  • 존재: crowny-hub(버전 CLI) + Verdaccio(pkg.crowny.org, publish 인증됨) + 게이트웨이 다중도메인
  • 부재: .toau 산출물 SHA256+semver manifest → 클라이언트 해시검증 후 갱신 배선

착수 1 완료 — brainq/crownyllm 무인증 노출 봉합 (2026-07-07)

  • 방식: 게이트웨이 프록시가 X-Forwarded-For를 부착하는 성질 이용 → XFF 있는 요청(=외부)만 x-crowny-key 요구. 로컬 직접호출(XFF 없음)은 무영향 → 기존 세션/봇/스크립트 100% 호환.
  • brainq(:9977, crownycode-brain-server.js) + crownyllm(:9976, 크라우니LLM서버.js) 동일 guardExternal() 규약.
  • 대장: ~/.crownycode/apikeys.psv (키|소유자|발급일|폐기일, 600) — 폐기일 채우면 즉시 revoke. 사용: api_usage.psv (키|소유자|시각|엔드포인트|XFF) 자동 append.
  • 라이브 검증(양 서버): 로컬무키=200 · 외부무키=401 · 외부유효키=200 · 외부폐기키=401, 사용대장 기록 확인.
  • 첫 키 발급(kps). ※게이트웨이 자체가 XFF를 신뢰경계로 세팅하므로, 클라이언트가 XFF를 위조해도 게이트웨이가 덮어씀(프록시 정상동작 전제). 다음 강화: 게이트웨이 층 키검증(이중), api_keys를 SQLite로.

착수 2 완료 — 시딩 정합성 게이트 + 다의어 리포트 (2026-07-07)

  • 게이트 코어: libs/의미어정합성게이트.한선 (순수 한선씨, 규칙 R1~R4). 래퍼 의미어정합성.sh {run|homonym|promote|all}.
  • 규칙(적대검증 지목 반영):
  • R1 자기루프(A|rel|A) → 폐기. R3 상하위동시 → 폐기.
  • R2 상호역전(A|상위|B & B|상위|A) → 가중치 낮은 쪽만 폐기. 실측: 교차필드 에이전트가 역방향 링크를 88가중으로 생성, 정답은 필드 에이전트 95가중 → 가중치가 정답을 가려냄(새|상위|까마귀 88 제거, 까마귀|상위|새 95 보존). 동률은 의심.
  • R4 온톨불일치(상위/하위인데 출발·도착 온톨로지 상이) → 의심(감정 Thing 상위 외롭다 Property = 역전 검출).
  • R5 허브역전은 폐기: 분류체계 중간노드(새=동물의 하위이자 참새의 상위) 전부 오탐 → 규칙 무효 확인.
  • 결과: 3335링크 → 정합 3173·폐기 30(상호역전27·자기루프3)·의심 132(온톨불일치122·동률10). 통과율 95%. 정본 승격(백업 .bak, 30 제거·132 검토보존). 연결기 회귀 정상(개→동물 상위, 저장소 2868).
  • 다의어: 코드북 복수의미장 글로스 317개 → data/다의어_리포트.tsv (참조수순). 눈(신체/자연)·병(용기/질병)·고기(4의미장) 등 = 온톨 복합키 분리(v2) 대상 목록 확보. 실제 분리는 코드북 코드발급 재설계라 v2.
  • 적대에이전트 오독 교정: "트럭|부분|엔진 오류" 주장은 오독 — 명세 X|부분|Y=X가 Y를 가짐 → 정답. 게이트 미폐기.
  • VM 함정 실측(메모리 등재): 거대 문자열 concat 반복재생성이 native 사전 값핸들 손상(string-pool 앨리어싱, 총량무관). → 라인당 즉시 덧쓰기 + 정화본 조립은 awk 이관. 사전있나 부재=-1(==0 금지).
  • 착수 3 완료 — 사용대장 + 차단 (2026-07-07)

    • 관리 CLI: ~/.claude/scripts/크라우니키.sh {issue <소유자>|list|revoke <키|소유자>|usage [필터]|top}.
    • 대장: ~/.crownycode/apikeys.psv(키\|소유자\|발급일\|폐기일) + api_usage.psv(키\|소유자\|시각\|엔드포인트\|출처IP), 둘 다 600.
    • E2E 검증: 발급→외부요청200→revoke→외부요청401(즉시발효)→유효키는 200 유지. list/usage/top으로 누가·언제·몇건·엔드포인트별 회계.
    • 서버 연동은 착수1의 guardExternal()과 동일 대장 공유(brainq·crownyllm 즉시 반영). 셸 함정: $n건 = 변수 뒤 한글 → ${n}건 중괄호 필수(set -u 부재변수 오류).
    • 잔여(v2): SQLite 정식화·일일한도(reward_claims식 멱등)·게이트웨이층 이중검증.

    착수 4 완료 — .toau/엔진 버전핀 자동업데이트 (2026-07-07)

    • 도구: ~/.claude/scripts/크라우니매니페스트.sh {register|generate|verify|pull|list}.
    • 자산목록 ~/.crownycode/배포자산.psv(이름|경로|분류) → 매니페스트 manifest.psv(# version=<ts> / 이름|sha256|크기|분류|경로).
    • 3중 보장: ①무결성(SHA256 변조·부분전송 차단) ②버전핀(바뀐 것만 갱신) ③해시검증 후에만 반영(원자적 mv).
    • API 키 결합: pull [key] → x-crowny-key 헤더 → 갱신도 유효키만(착수1·3과 한 대장 공유).
    • E2E 실증(로컬 HTTP 서버): ①정상 pull 갱신2 ②재pull 최신2(스킵) ③서버 자산 변조 → 해시불일치로 거부·미반영(클라이언트 무결성 유지). 셸 함정: set -u+bash3.2 빈배열 ${a[@]}${a[@]+"${a[@]}"}.
    • 초기 자산 4개 등록(연결기 .한선/.rpn, 정합성게이트, 연결저장소), verify 4/4 일치.
    • 잔여(v2): crowny-hub commit 시 manifest 자동갱신 훅, Verdaccio/게이트웨이로 실배포 URL 연결, 서명(HMAC) 추가.

    4단계 종합 — "옴→티 전환 조건" 대부분 충족

    착수 전착수 후
    ③ 카피방지타(644 평문)600 잠금 + 무인증 노출 봉합(brainq·crownyllm E2E)
    ④ 사용자관리/과금옴(없음)티(키발급·사용대장·회계 CLI E2E)
    ⑤ 차단옴(어댑트필요)티(revoke 즉시 401 E2E)
    ⑥ 자동업데이트옴(배선부재)티(매니페스트 버전핀+해시검증 pull E2E)
    ② 매칭향상옴(6블로커)정합성게이트로 시딩품질 블로커 착수(30폐기·다의어317리포트), 잔여 5블로커