⚠ 기술 표시: Spring Boot + React 아님 · 현재 Python Flask 기반 · 포팅 대상 ·
전체 구성도 MATRIX 원사이트·팔란티어형 설계와 P0 보안 조치 codex · 2026-09-11 17:34 KST · MATRIX-ONE-SITE/P0-SEC-20260911 · 카테고리 🛠️ 운영 보고
기준 2026-09-11 KST · 제품 정본 markjang29/matrix-home · 조직 결정 정본 markjang29/notes
결론
MATRIX는 링크 모음이 아니라 원천 → 조립 → 실제 검증 → 승인 → Matrix → 앱 발행이 한 줄로 이어지는 Spring Boot + React 제품으로 합친다.
제품 통합 저장소: markjang29/matrix-home
Spring: 공개 경로·권한·명령·상태·감사
React: 모바일 우선 한 사이트와 React Flow 보기·편집
Python/Risu/NAI/CUA: 공개 포트가 없는 내부 작업자
PostgreSQL: 객체·관계·workflow·outbox
Object store: 소설·charX·이미지·대화·CUA 증거
현재와 목표는 다르다
공개 /, /sites, /nexus/, 기존 H8는 모두 200이지만, 루트와 사이트맵은 아직 Flask다. Spring + React는 별도 :8024이며 종료 진단은 ready=false다.
AWS 의존 16개, Python 사용자 화면 22개, 엣지 미연결 15개가 남았고 route·data·bot/cron·secret·rollback 검증도 미완료다.
한 줄 자산 흐름
소설·Arca 원천 →
장면·NAI →
Basket·Loadout →
항상 가능한 검사 →
Risu 실제 3회+ →
NAI 보강·증거 →
사람 승인 →
Core·Engine →
Dimension·Lens →
RPG·Instagram
W10 핵심 규칙
잘못된 중간 상태에서도 검사 버튼은 항상 동작한다.
빈 B2 lane이 있으면 정상 slot은 보존하고 빈 곳만 검증된 후보로 채운다.
모두 정상이면 전체 리롤한다.
전체 조합을 transaction 안에서 검사하고 모두 맞을 때만 한 번에 저장한다.
실패하면 기존 loadout을 보존하고 고칠 항목을 직접 보여 준다.
P0 보안 조치
최초 진단에서 bot 모델·provider·인증값과 소설 작업을 바꾸는 Flask POST가 자체 인증 없이 공개돼 있었다.
긴급 방어 commit: dab8fd14c4e4c8396936de19cab63d7b5e352ba2
대상: /api/bot-fleet, /api/novel-queue, /api/novel-ops
결과: 홈 재기동 완료, 11개 테스트 통과, 공개 익명 POST는 503 fail-closed
남은 일: 관리 secret 경로, 기존 token 회전, management ingress, Spring Security/RBAC·감사
우선순위
P0 생존·보안: token 회전, DB/파일/queue 복구, bot·cron 홈 왕복, root 전환·rollback, AWS stop 관찰
P1 바닥: Spring/React import, Security, PostgreSQL/Flyway, object store, outbox, 단일 registry
P2 한 자산 완주: 실제 원천 1건을 Risu 3회와 NAI, 승인, Core까지
P3 반복 운영: 수집 worker, Telegram/JIRA/Agent Mail, bot/model 화면, CLI 후 MCP
P4 Matrix: Core, Engine, Dimension, Lens, RPG/Instagram 발행
P5 측정 뒤 분리: 근거 있는 worker만 microservice, 필요할 때 orchestration 확장
AWS 8GB 종료 판정
현재는 terminate 금지다. 종료 목표를 취소한 것이 아니라 복구 불가능한 종료를 막는 표시다.
producer와 bot을 fence하고, 파일·Mongo·Oracle·queue를 hash/restore 검증하며, actor별 Telegram 왕복과 root rollback을 성공한 뒤 정확한 unit을 stop+disable한다. 인스턴스를 멈춘 채 관찰하고 snapshot 복구 시험 뒤 terminate한다. snapshot/data 삭제는 별도 결정이다.
Git 근거
ELI5
새 MATRIX Home은 하나의 큰 작업장이다. Spring은 문과 규칙을 관리하고, React는 휴대폰에서 보는 안내판이며, Risu·NAI·Python은 뒤쪽 작업실이다. 씨앗 하나가 그림과 대화를 거쳐 승인된 상품이 되는 길을 먼저 완성한다. 옛 AWS 창고는 새 창고에서 물건을 실제로 꺼내 본 뒤 끈다.
← 보고함으로
🐞 H? · 구현: Python Flask + HTML/JavaScript · 오브젝트ID: /reports/operations/matrix-one-site-architecture-2026-09-11
홈 8018 › reports › operations › matrix-one-site-architecture-2026-09-11