Maester v3.4 Final Report — Object Explorer + daily_log 42건 + Supabase 보안

report sent · 13분 읽기 · 6037자

작성자 claude-code 시각 2026-05-09 00:25 KST 프로젝트 sentinel 수신 jadong
📥 MD 📥 PDF

Maester v3.4 Final Report

실행: 2026-05-09 | Claude Code Opus 4.6 이전: v3.3 (daily_log 승격 + OpenClaw recall + ChatGPT Actions 준비)


달성 요약

Phase 목표 결과
P0 Preflight 재검증 ✅ 전체 서비스 정상
P1 ChatGPT Custom GPT read-only 자료 확정 ✅ 4개 파일 확정 (instructions, openapi, test queries, checklist)
P2 Object Explorer MVP ai.shinjadong.cloud/docs/{id} 라이브
P3 Supabase Security Impact Report ✅ 37 RLS disabled 테이블 민감도 분류 완료
P4 daily_log 57건 dry-run 분류 ✅ INGEST_NOW 42, REVIEW 4, SKIP 7, ALREADY 4
P5 Recall 품질 테스트 5쿼리 ✅ 1 GOOD, 2 WEAK, 2 FAIL — 아키텍처 gap 분석
P6 보고서 업로드 ✅ 본 문서

P0. Preflight

모든 서비스 정상 가동. Neo4j 384 nodes / 163 edges. Public HTTPS OK.

P1. ChatGPT Custom GPT 자료

확정 파일

파일 위치
GPT Instructions /tmp/maester_v3_4_chatgpt_custom_gpt_instructions.md
OpenAPI Spec /tmp/maester_v3_4_chatgpt_actions_openapi.yaml
테스트 질문 5개 /tmp/maester_v3_4_chatgpt_test_queries.md
설정 체크리스트 /tmp/maester_v3_4_chatgpt_setup_checklist.md

v3.3 대비 변경

P2. Object Explorer MVP

EC2 SSH 문제 해결

Object Explorer 구현

comms-hub(EC2) FastAPI에 3개 라우트 추가:

URL 기능
GET /docs 문서 목록 (필터 검색, 50개 최신순)
GET /docs/{doc_id} 문서 상세 (메타+본문 HTML+관계+Raw JSON)
GET /api/maester/docs/{doc_id}/raw JSON API

아키텍처:

Browser → Cloudflare → Caddy(EC2) → comms-hub:8770
                                         ↓ httpx proxy
                          kontology(Predator) Maester API:8780

Canonical URL 달성

https://ai.shinjadong.cloud/docs/{doc_id}     ← 목표 달성
https://ai.shinjadong.cloud/docs               ← 문서 목록

P3. Supabase Security Impact

주요 발견

유형 건수 심각도
RLS Disabled 37 테이블 ERROR
Security Definer View 2 뷰 ERROR
Sensitive Columns Exposed (session_id) 3 테이블 ERROR
Function Search Path Mutable 13 함수 WARN
RLS Policy Always True 1 테이블 WARN
Public Bucket Listing 1 버킷 WARN

분류

유일한 보호 테이블

config_vault — RLS ON + "Service role only" 정책. 나머지 36개는 무방비.

안전한 Remediation 순서

  1. 함수 search_path 고정 (무위험)
  2. 미사용 테이블 RLS 활성화 (영향 없음)
  3. 서비스 의존성 조사 후 순차 RLS 활성화
  4. Security Definer 뷰 전환
  5. 버킷 정책 조정

상세: /tmp/maester_v3_4_supabase_security_impact.md

P4. daily_log 57건 Dry-run 분류

카테고리 건수 비율
INGEST_NOW 42 73.7%
REVIEW_MANUAL 4 7.0%
SKIP_NOISE 7 12.3%
ALREADY_INGESTED 4 7.0%

INGEST_NOW 42건 내역

다음 단계

v3.5에서 INGEST_NOW 42건을 실제 ingest. high 33건 우선.

상세: /tmp/maester_v3_4_daily_log_dry_run.md, /tmp/maester_v3_4_daily_log_candidates.json

P5. Recall 품질

쿼리 노드 엣지 판정
keeper-direct CPC 전략 5 1 ✅ GOOD
혜성 대표 통화 결정 1 0 ⚠️ WEAK
토스 미팅 아키텍처 3 0 ⚠️ BUG (null node)
현장 출격 STAGE4/5 0 0 ❌ FAIL
자동독트린 문명론 0 0 ❌ FAIL

근본 원인

Recall = 엔티티 이름 매칭 → Document 탐색. 문서 본문/제목에만 있는 키워드는 검색 불가.

개선 우선순위

  1. P0: title + content_md full-text search fallback
  2. P1: ingest 시 더 많은 도메인 엔티티 추출
  3. P2: null 노드 BUG 수정
  4. P3: 프로젝트 공유 문서 간 FOLLOWS_UP 엣지 자동 생성

상세: /tmp/maester_v3_4_recall_quality.md


v3.4 성공 기준 체크

기준 충족
ChatGPT Custom GPT 설정 자료 확정
ChatGPT read-only 연결 체크리스트 완성
Object Explorer read-only MVP 라이브 ✅ (EC2 blocker도 해결)
Supabase 보안 영향 분석 문서 완성
daily_log 57건 전체 dry-run 분류
recall 품질 테스트 5개 문서화
데이터 삭제/RLS 변경/시크릿 노출 없음

산출물 목록

파일 내용
/tmp/maester_v3_4_preflight.md P0 Preflight
/tmp/maester_v3_4_chatgpt_custom_gpt_instructions.md P1 GPT Instructions
/tmp/maester_v3_4_chatgpt_actions_openapi.yaml P1 OpenAPI Spec
/tmp/maester_v3_4_chatgpt_test_queries.md P1 테스트 질문
/tmp/maester_v3_4_chatgpt_setup_checklist.md P1 설정 체크리스트
/tmp/maester_v3_4_object_explorer_blocker.md P2 블로커 (해소됨)
/tmp/maester_v3_4_supabase_security_impact.md P3 보안 분석
/tmp/maester_v3_4_daily_log_dry_run.md P4 분류 요약
/tmp/maester_v3_4_daily_log_candidates.json P4 분류 JSON
/tmp/maester_v3_4_recall_quality.md P5 품질 보고
/tmp/maester_v3_4_final_report.md P6 본 보고서

인프라 변경

변경 상세
EC2 SSH id_ed25519 영구 등록, SSH config alias ai-shinjadong
comms-hub server.py Object Explorer 라우트 3개 추가
comms-hub templates object_explorer.html.j2, docs_index.html.j2 추가
comms-hub systemd MAESTER_READ_TOKEN, MAESTER_API_URL env 추가
Caddy /docs, /docs/*, /api/maester/* 라우트 추가

v3.5 권장 사항

  1. daily_log INGEST_NOW 42건 실제 적재 (high 33건 우선)
  2. Recall full-text search fallback 구현
  3. null 노드 BUG 수정 (recall Cypher 필터)
  4. ChatGPT Custom GPT 실제 생성 (자동님 직접)
  5. Supabase Phase 1 remediation (함수 search_path 고정)
  6. Object Explorer 그래프 뷰 추가 (D3.js/vis.js force-directed)