크라우니터미널 1a 세션 스트림 라이브 배선
개요
21화면 중 1e-1.라이브.html 하나만 데몬(:9830)에 실제로 연결돼 있었고 나머지(1a 포함)는 정적
스크린샷이었다. 이번 작업으로 1a(기본 세션 · 다크)를 실제로 작동시켰다 — 자연어 입력 →
/api/session/{id}/command 파싱 칩 5종 → /execute 도구 체인 실행 → 출력 스트림 → 쓰기등급
확인 다이얼로그 → 승인/거부 → 감사·예산 실측 표시까지 전체 루프가 실동한다.
무엇을 했는지
화면/1a.라이브.html신규 산출 — 정적1a.html(보존, 무변경)의 마크업·스타일을 그대로
<script>만 추가. 신규 색 0(1a.html·1e-1.라이브.html에 이미 있던 hex만 사용,
실측 diff로 확인).
- 비동기(사람 상호작용) 경로: fetch 기반 — 세션 부팅, Enter 입력→/command, 실행 버튼→
/execute, 확인 카드 승인/거부→/confirm/reply+/api/tools/{name}/invoke.
- 동기(헤드리스 검증 전용) 경로: ?자동=전체|승인|거부 쿼리 — 1e-1.라이브.html과 동일한
이유(didFinishNavigation 캡처 타이밍)로 XHR(false) 사용, 전체 시나리오를 페이지 로드 중
한 콜스택에서 완주.
- 계통 바의 "가동 N" 카운트·진행바는 이 데몬이 조회 API를 노출하지 않아 전부 "—"로 정직하게
비웠다(가짜 숫자 금지). 기수 헤더(1·3·9·27·81·243·729·2187·6561)는 3^n 구조 상수라 유지.
- 우측 패널의 "위임 트리" 카드를 실측 감사 패널로 대체(GET /api/audit?format=rows).
워크플로우카드·외부위임카드·세션 레일의 다른 세션 항목들은 1차 범위 밖 정적 맥락으로 유지
(명시적으로 disclose).
한선씨/1a.라이브.한선신규 동반 파일 — JS의 판정 로직(results[] 항목 → 스트림 행 종류,
라이브1a_* 접두(함수명 숫자 시작 금지 — hanseonc_high 파싱 함정 실측, 1a라이브_는 컴파일
에러). CT_TEST 셀프테스트 19/19 통과.
한선씨/터미널데몬.한선수정 —_정적화이트리스트에"1a-live", "1a.라이브.html"별칭
데몬_UI인덱스HTML()이 -live 접미 별칭에 "● 라이브" 표를 붙여 정적판과 시각적으로
구분(신규 색 없이 텍스트 표만).실측 검증
- STRICT 컴파일: 데몬 0경고, 3회 동일 크기(2883692 bytes) — 결정론적. 동반
1a.라이브.한선도
- 셀프테스트(
CT_DATA_DIR격리, 운영 데이터 무오염): 계통12·감사15·기계어21·파싱13·데몬30 =
curl -o /dev/null -w '%{size}'vs 실제 파일 크기 — byte-identical(59140 bytes, 정적
- 헤드리스 캡처(
크라우니AI검증.sh dump/shot) —?자동=전체: 세션ID 실값(S06)·파싱 칩 5종
?자동=승인: 승인 → /api/tools/canvas.doc.publish/invoke → OK:실행됨까지 완결 확인.
?자동=거부: "거부됨 — 도구 미실행" 정직 표시(성공 날조 없음), invoke 미호출 확인.
- 감사 원장 대조:
GET /api/audit?session=S07&format=rowscurl 직접 조회(9행) vs 화면
발견한 버그와 수정 (실측 기반)
부팅완료() 공용 함수가 비동기 fetch()로 예산/감사를 즉시 갱신하도록 돼 있었는데, 이 함수는
동기(자동모드) 경로와도 공유돼 있어 자동모드의 최종 동기 감사조회 결과를, 나중에 도착하는
부팅 시점의 오래된 비동기 응답이 덮어써버리는 레이스가 있었다(첫 캡처에서 감사 패널이
"세션열기" 1~2건만 보이던 원인 — 실측으로 발견, curl 직접 조회로 서버 쪽엔 문제가 없음을 먼저
확인한 뒤 클라이언트 레이스로 좁혔다). 네트워크 호출을 부팅완료()에서 분리해 비동기 경로
전용으로만 옮겨 수정. 재검증 캡처로 9/9행 정합 확인.
관련 파일
/Users/ef/crowny-terminal6561/화면/1a.라이브.html(신규)/Users/ef/crowny-terminal6561/화면/1a.html(보존, 무변경 — md5 확인)/Users/ef/crowny-terminal6561/한선씨/1a.라이브.한선(신규)/Users/ef/crowny-terminal6561/한선씨/터미널데몬.한선(화이트리스트 + 인덱스 라벨 수정)/Users/ef/crowny-terminal6561/설계/데몬API계약.md(참조, 무변경)
잔여 이슈 (정직 고지)
- 21화면 중 1a·1e-1 2개만 라이브, 나머지 19개(1b·1c·1d·1e-2·1e-3·1f·2a·2b·2c·2d·2e·2f·2g·
- 1a.라이브.html 안에서도 워크플로우카드·외부위임카드·세션 레일의 S01/S03/S09/S11/S14 등
- 계통 바 "가동 N" 실수치는 계통 상태 조회 GET API가 없어 "—" 그대로 — 후속 범위에서 API
- SSE(A6) 미구현 — 현재는 요청/응답 기반이라 폴링 자체가 불필요(유휴 시 daemon 폴링 없음).