Files
AriWeb-Suite/README.md
T
zzabisagent-labandClaude Fable 5.1 2b31543a86 HAL 0.4.1: 서버 등록 TLS 수정·"이미 등록된 서버" 안내, HAL 배포가 HAL 서버의 Node Agent·HawkEye 를 함께 설치해 부트스트랩을 닫음
- hal/tls.mjs: 공개 주소 TLS 신뢰 확인(시스템 CA → 실패면 체인·공개키 핀), 신뢰 앵커(체인 자체 서명 / <data>/tls/hal-ca.pem), 10분 캐시, 핀 설치 명령(curl -k --pinnedpubkey … --hal-pin). 공개 경로 GET /agent/v1/hal-ca.pem · /agent/v1/tls, CLI tls-probe
- deploy/agent-install.sh: --hal-pin(핀으로 CA 받기)·--ca·--insecure, curl --cacert / Node NODE_EXTRA_CA_CERTS / register --ca / 유닛 Environment, 연결 실패 원인·조치 한 줄, 이미 등록된 서버 안내
- agent/halca.mjs + agent/index.mjs·config.mjs: caFile 런타임 적용(tls.setDefaultCACertificates), fetch 실패를 읽을 수 있는 한 줄로(종료 1), 이미 등록(종료 2, --force), HAL 거부(종료 3), heartbeat observability → hawkeye
- core.registerAgent: 같은 서버의 두 번째 토큰 409 server_already_registered / 쓴 토큰 409 token_used("이미 등록된 서버"), 거부 토큰 미소비, 재등록 허용(replace: 기존 Agent 해지, 감사 agent.replace), 마이그레이션 hal_0011_token_replace, API/CLI --replace --json(재인증), ops.js 재등록 확인·핀 안내
- deploy/hal-host-agent.sh(server-create --profile hal → server-token --json → agent-install loopback → server-approve), bootstrap-hal.sh 6/7 단계(--no-agent), CLI server-create·server-approve, SERVER_PROFILES.hal
- core.deploymentStatus/selfHealth.deployment, 배너 "부트스트랩 완료 · 기능 단위 서버 배포 대기: …" / "진행 중", 배포 릴리스 화면 문구, heartbeat canonicalModuleName(0.3.17 잔여 결함)
- 개발 지시 v0.4.1(Oz)·VERSION_HISTORY 0.4.1·README·docs/HAL-AGENT §6·RUNBOOK §11·AI 스킬, 도입 모듈 변경 없음(Webmaker 1.9.0·AriMail 1.1.0)
- test/hal-041.test.mjs RED → GREEN 7/7(실제 자체 서명 TLS 픽스처·별도 프로세스 CLI), 기존 배너·프로필·버전 테스트 갱신, 전체 32파일 통과, 로컬 E2E 보고서 2026-11-06

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 08:40:09 +00:00

3.9 KiB

Ariweb Suite

고객이 회원가입·로그인 → 상품 선택 → 사이트 제작(Webmaker) → 배포 → 도메인·HTTPS → 메일(AriMail) → 백업 → 운영(재배포·복원·이전·소유권·해지)까지 하나의 연결된 서비스로 이용하는 통합 플랫폼이다. 운영자는 HAL(hal.ariweb.net)에서 릴리스·서버·모듈·작업·장애·복구를 관리하고, HAL 이 Node Agent 를 통해 나머지 모든 모듈을 배포·갱신·되돌리기·복구한다.

  • 버전: 0.4.1 — 변경 이력은 VERSION_HISTORY.md
  • 0.4.1: 사설 CA·자체 서명 HAL 주소의 서버 등록(핀 설치 명령·/agent/v1/hal-ca.pem), "이미 등록된 서버" 안내, HAL 배포가 HAL 서버의 Node Agent·HawkEye 를 함께 설치해 부트스트랩을 닫음(deploy/hal-host-agent.sh): docs/HAL-AGENT.md §6
  • HAL AI 채팅룸(연결·방·도구·MCP, 0.3.0): docs/HAL-AI.md
  • 설계·개발 규약: docs/ARCHITECTURE.md · 포털↔HAL 작업 계약: docs/HAL-JOBS.md · HAL↔Agent 프로토콜: docs/HAL-AGENT.md
  • HAL 통합 설정 관제(0.4.0 — Webmaker·AriMail·Agent 서버 단위 설정을 HAL 이 관리): docs/HAL-SETTINGS.md
  • 도입 소스(Webmaker 1.9.0 · AriMail 1.1.0, 모두 HAL 0.4.0 대응): IMPORTED_SOURCES.md — node scripts/import-sources.mjs 로 갱신(참조 저장소와 나란히 개발 중이면 --allow-dirty)
  • 개발 지시 원문: Ariweb-Suitle_Dev-Order_v0.1.1.md(기준) · Ariweb-Suitle_Dev-Order_v0.1.4.md · Ariweb-Suitle_Dev-Order_v0.2.0.md(Webmaker 직접 편집) · Ariweb-Suitle_Dev-Order_v0.2.1.md(HAL 고위험 재인증 안내 위치) · Ariweb-Suitle_Dev-Order_v0.3.0.md(HAL AI 채팅룸, Oz) · Ariweb-Suitle_Dev-Order_v0.3.1.md(서버 설치 CLI 자동 탐색, Oz) · Ariweb-Suitle_Dev-Order_v0.3.2.md(AI 연동 편의성·도구 기본 설정·승인 요청, Oz) · Ariweb-Suitle_Dev-Order_v0.3.9.md(로그인 터미널·텍스트 셸·모델 선택·슬래시 명령, Oz) · Ariweb-Suitle_Dev-Order_v0.3.10.md(텍스트 셸 복사·주소 추출, Oz) · Ariweb-Suitle_Dev-Order_v0.3.17.md(HawkEye·역할별 통합 배포·릴리스 화면·작업 진행 창·서버 선택, Oz) · Ariweb-Suitle_Dev-Order_v0.4.0.md(통합 설정 관제)

구성

프로세스 진입점 포트 공개 주소
HAL(제어 평면·운영자 콘솔·공개 상태) hal/index.mjs 127.0.0.1:8900 https://hal.ariweb.net
고객 포털 portal/index.mjs 127.0.0.1:8910 https://my.ariweb.net
Node Agent agent/index.mjs — 각 관리 서버
Webmaker(도입) modules/webmaker/server.js 127.0.0.1:3080 https://webmaker.ariweb.net
AriMail(도입) modules/arimail/server/index.mjs 127.0.0.1:8790 + 메일 포트 https://webmail.ariweb.net

외부 npm 의존성 없음. Node 22.13 이상(node:sqlite).

개발

node test/run.mjs                 # 전체 회귀 테스트 (test/*.test.mjs)
node test/run.mjs lib             # 이름에 lib 가 들어간 테스트만
node scripts/import-sources.mjs   # 참조 저장소 고정 커밋에서 모듈 소스 갱신 + manifest
node scripts/release.mjs          # 릴리스 artifact(dist/<version>/) 생성·검사
ARIWEB_PORTAL_DATA=./data/portal node portal/index.mjs
ARIWEB_HAL_DATA=./data/hal node hal/index.mjs

배포 순서(§32)

  1. main 에 병합된 승인 릴리스에서 node scripts/release.mjs 로 artifact 생성
  2. 최초 설치에서만 deploy/bootstrap-hal.sh 로 HAL 설치(HAL 자체 건강·실행 버전 확인, 첫 Node Agent 등록)
  3. 이후 모든 모듈(포털·Webmaker·AriMail·Agent·백업·관측)은 HAL 운영자 콘솔의 모듈 배포 작업으로만 설치·갱신·되돌리기