CrownyAI 터미널 연동 모듈 2종 — 에스텔QI + 건물제어
개요
CrownyAI 터미널(CrownyBrowser)의 내장명령이 호출할 순수 한선씨 CLI 모듈 2개를
신규 작성. 계약: 환경변수
Q로 질의/하위명령을 받고 stdout으로 텍스트를 낸다.
무엇을 했는지
1. 에스텔QI.한선 — estel.crowny.org(estEL) 양자컴퓨팅AI 연동
estEL_AI라우터.한선의 4상 분별(계산의도/지식점수) 로직을 이식.
- 계산의도 키워드(벨/ghz/얽힘/중첩/하다마드/qkd/qec/표면코드/tcount/클리포드/
최적화/보안/pqc 등) → estEL서버.js 실제 라우트(
/api/qkd,
/api/qec,
/api/surface,
/api/tcount,
/api/e2c,
/api/solve,
/api/secure,
/api/pqc)로 매핑해
체계(curl -sm8 ...) 호출 후 JSON파싱→요약 출력.
전용 "벨 상태" 회로 엔드포인트가 없어 얽힘 계열 키워드는 BBM92(얽힘기반
QKD)로 대체 시연.
- 지식 질의(실리콘/광자/큐트릿/스태빌라이저/냉동/센싱 등)는 옴(0)으로 분별해
"estel.crowny.org 참조" 안내만 출력(전용 지식 API 라우트 없음).
- 범위 밖 질의는 음(-1)으로 분별해 "크라우니집사 이관" 안내.
- 인프라 실측(2026-07-11): estel.crowny.org는 도메인 레지스트리상 :9785로
등록돼 있으나(
crowny-ports.sh get estel), 실행 중인
estEL서버.js 프로세스는
자체 기본값 :9601에서 LISTEN 중이었다.
curl 127.0.0.1:9785/...는 byeol.crowny.org의
404 폴백 HTML을 반환(게이트웨이 Host라우팅 갭, 별도 인프라 이슈 — 본 작업
범위 밖이라 무접촉). 모듈은 9785→9601 순으로 자동 폴백 시도하고, 응답이
<!DOCTYPE로 시작하면(byeol 오폴백) 무효 처리해 다음 포트로 넘어가도록
설계. 둘 다 실패하면 "에스텔 서버 미기동(:9785)" 출력(스펙 지정 문구).
2. 건물제어.한선 — crowny-architect 건물관리엔진 연동
건물관리엔진.한선(건물등록/에너지데이터생성/에너지등급판정/
에너지절감제안/주차장생성/주차자동배정/설비점검항목생성 등)을 그대로
가져오기로 재사용(엔진 파일 수정 없음).
- 가져오기 경로 문제(임포트는 호출파일 디렉토리 최우선) 해결: 컴파일 시
CROWNY_STD=/Users/ef/crowny-architect/han 환경변수로 검색경로 추가
(hanseonc_high.c의 검색순서: ①호출파일 디렉토리 → ②crownyc/libs(정본) →
③CROWNY_STD → ④CrownyTVM/std → ⑤apps → ⑥crownyc, 실측 확인).
- 엔진의 in-memory 전역배열(건물목록/건물번호)이 실행마다 초기화되는 문제를
/tmp/건물상태.psv(번호|이름|주소|용도|연면적|층수|준공년도|소유자) 얇은
영속층으로 해결: 매 실행 시작마다 PSV를 읽어
건물등록()을 재호출해
엔진 상태를 재구성.
- 하위명령:
등록 <이름> <용도> <연면적> <층수> / 목록 / `에너지 <번호>
<전기> <가스>
(등급판정+절감제안) / 주차 <번호> <차량유형>
/ 점검 <용도>`
/
도움.
VM 함정 실측 발견 (신규, 2026-07-11)
길이() 내장함수는 맵생성()/맵넣어() 네이티브 해시맵 객체에 대해
항상 0을 반환한다 (배열에는 정상 동작).
건물찾기() 헬퍼에서
"찾은 결과 맵의 길이==0이면 없음"으로 빈맵 판정을 하려다 실측 발견 —
found한 건물 맵(키 10여개)도
길이()가 0으로 나와 "건물 #1 없음"
오탐이 발생했다.
/private/tmp/.../디버그건물4.한선 등으로 격리 재현.
해법: 존재 판정은
맵있나(맵, 키)(opcode751, 참1/거짓-1)로 해야 한다 —
빈 맵은 -1, 값이 채워진 맵은 1을 정확히 반환.
길이(맵)==0로 빈맵을
판정하는 패턴은 전부 오탐이므로 크라우니 전역에서 재사용 시 주의.
관련 파일
/Users/ef/CrownyBrowser/src/에스텔QI.한선 (신규)
/Users/ef/CrownyBrowser/src/건물제어.한선 (신규)
- 컴파일 산출물:
/tmp/에스텔QI.toau, /tmp/건물제어.toau
- 참조(무수정):
/Users/ef/crowny-estel/estEL서버.js,
/Users/ef/crowny-estel/estEL_AI라우터.한선,
/Users/ef/crowny-architect/han/건물관리엔진.한선
- 컴파일 커맨드는 각 .한선 파일 상단 주석에 명기.
잔여 이슈
- estel.crowny.org(:9785) 게이트웨이 Host라우팅이 byeol.crowny.org로
잘못 폴백되는 인프라 갭 — 별도 세션에서 게이트웨이 설정 확인 필요
(본 작업은 라이브 게이트웨이 무접촉 원칙상 미수정).
- 벨/GHZ/중첩 전용 회로 계산 엔드포인트가 estEL서버.js에 없어 BBM92로
대체 시연 중 — 전용 엔드포인트 추가되면 에스텔QI.한선의
estel경로()
매핑만 갱신하면 됨.
- 건물제어의 주차 배정은 매 호출마다
주차장생성(...,50,1)으로 총면수
고정 재생성(사용중 카운트 비영속) — 배정 이력 누적이 필요해지면
/tmp/건물상태.psv와 별도
/tmp/주차상태.psv로 확장 가능.