S9 · REPORT2026-07-13 — 로드맵 보완 + 모델 성장 검토

다화자로 자라는 단일 모델 — 공유·색인·서가, 그리고 갈아엎지 않는 성장의 한계

서비스의 미래엔 사용자가 자기 기록의 일부(예: 금전 제외)·전체·또는 책자를 공유하고, 다른 사용자가 그것을 병치·열람하며, 오프라인 공간에 소책자가 진열되고, 나아가 여러 화자가 같은 사건을 연계해 증언(co-narrate)한다. 이 맥락이 로드맵에 빠져 있었기에 보완하고, 동시에 사건 코어 모델이 그 단계에 이르러도 '단일한 모델'로 기능하는지를 정직하게 검토·계획한다.

방법. 현 로드맵(비전·미래계획·정책·유통)을 4갈래로 갭 분석하고, 성장 설계('갈아엎지 않고 additive하게 자란다')를 4갈래 적대 검증에 걸었다. 초안은 세 지점에서 스스로를 미화했고(가드레일 통과·백엔드만 신설·§10 뒤집음), 이 문서는 그 검증에서 살아남은 형태다 — 커널은 지키고, warrant를 넘은 형용사(공짜·언제든·구조적 회피)는 아래에서 내린다. 자매 문서 SEM 재정초 검토 §10('진짜 갈아엎기의 미래')의 심화다.

요 약

판정 먼저

이 다화자·공유·서가 단계에 이르러도 '단일한 모델'로 기능할 수 있는가?
  1. 데이터 스키마 층에선 그렇다. 레코드 단위 co-narration에서 L0 사건 코어(한 문장 + 성분 + 마스터)는 불변·단일 소유로 남는다. 단독 소유 단계는 다저자 모델의 n=1 퇴화형이다 — 저자가 하나면 오늘의 모델과 정확히 같고, 늘면 단일 소유 코어가 옆에 하나 더 선다. '다화자 = 코어 전면 재작성'이라는 조야한 독해는 이렇게 교정된다.
  2. 소유·격리 불변식 층에선 아니다. 교차소유 상관 엣지는 정본의 '교차 사용자 읽기 경로 없음' 불변식을 완화하고, User↔User 양자 동의라는 새 원자를 들이며, 병치·색인 산물은 '정확히 한 User 귀속'이 수용 못 하는 파생 데이터다. 이건 백엔드 디테일이 아니라 모델 소유층(L4) 변경이다. 백엔드는 신설된다 — 당신이 예상한 그 '백엔드 진입'.
  3. 그리고 이 길은 §10을 뒤집지 않고 회피한다. §10이 '진짜 갈아엎기'라 지목한 건 강형(SEM accordingTo/View로 하나의 공유 사건 노드 위에서 속성별로 증언을 가르는 것)이다. 이 길은 약형(통째 레코드 상관)이다 — 둘은 서로 다른 세기의 기능이라 동시에 참이다. §10은 강형에 대해 옳고, 이 문서는 약형에 대해 옳다.
정리 — 이 미래는 로드맵에 빠져 있었다(§1 공백) → 보완한다. 성장은 additive하지만 무비용은 아니다 — 금전 제외는 '공짜'가 아니라 의미 스크럽을 요구하고, 타인 마스킹은 Phase1 하드 블로커이며, 물리 인쇄는 철회 불가이고, 반피드는 구조가 아니라 아직 안 쓴 정책 한 줄에 걸려 있다(§5 일곱 게이트).
갭 분석

1 · 로드맵의 공백 — 있던 것과 없던 것

현 로드맵을 4갈래로 훑은 결과, 공유의 기제(Publication)·책자 출력·대면 확장성(분리 소유)·병치의 씨앗(생물학적 나이 비교)은 있으나, 당신이 확정한 미래의 절반은 공백이거나 단일 소유 RLS로 구조적으로 배제돼 있었다.

Phase 0
폐쇄·단독
자기만의 공간, 암묵 화자 '나'. 비전·개념·데이터 세 층에서 완전히 못박힘(원칙 9·단일 소유·RLS). 정본화됨
Phase 1
공유
일부·전체·책자를 공유. Publication 기제·책자 출력은 있음있음. 그러나 층 단위 공유(금전 제외)·청중 지정·타인(Person) 마스킹은 미설계공백
Phase 2
색인·병치
타인이 열람·병치 (백엔드 진입). 병치는 '생물학적 나이 비교' 한 기능으로만 협소하게 존재. 교차 사용자 열람·co-narration은 RLS 완전 격리로 구조적 배제구조적 배제
Phase 3
물리 서가
소책자 진열 + 열람용 컴퓨터. 개인 PDF 출력(book-export)이 물성의 씨앗일 뿐, 서가·열람 공간 개념 자체가 부재전면 공백
깊은 끝
co-narrate
여러 화자가 같은 사건을 연계 증언. 유일한 언급이 SEM 재정초 §10의 '분기점'뿐 — 정본 미래 계획에 미등재미등재

이 문서의 §7이 각 공백을 어느 정본 문서로 보완했는지 지도로 정리한다.

§10의 정밀화 — 뒤집기가 아니라 갈래 나누기

2 · 두 경로 — 무거운 것과 가벼운 것

'같은 사건을 여러 화자가 연계 증언한다'는 두 세기로 지을 수 있다. SEM 재정초 §10무거운 경로를 '진짜 갈아엎기'라 유예했다. 이 문서는 가벼운 경로가 그 갈아엎기를 회피함을 보인다 — 대가를 명시하면서.

강형 · §10의 fork

공유 노드 위 속성별 증언

  • 하나의 공유된 사건 노드. 화자마다 속성(누가·역할·평가)을 다르게 붙임 — SEM accordingTo/View/Authority.
  • N명이 한 결혼식을 90% 합의·10% 이견으로 증언하면 합의/이견 구조가 1급으로 저장·질의된다.
  • '구성적 비해소'(누구도 틀리지 않음)가 저장 속성. 단일 소유+COW 위에 얹으면 진짜 재작성. → 지금 그 제품 아님(유예).
약형 · 이 로드맵

통째 레코드 상관

  • 화자마다 자기 사건(자기 판본)을 소유. 두 판본을 Link(co-narrates) 엣지로 잇는다 — 우리 시나리오 겹과 같은 레코드 입도.
  • L0 코어 불변, 노드 복제(공유 아님). 병치 = 연결된 두 판본을 나란히 렌더.
  • 대가: 90% 중복 사본 + 속성 입도의 합의/이견 구조 소실. 속성 단위 공동증언은 여전히 강형(fork)의 영역.
둘 다 참이다. §10은 강형(속성 입도·공유 노드·비해소가 1급)이 SEM 재화(reification)를 요구한다는 점에서 옳고, 이 문서는 약형(통째 레코드 상관)이 그것을 요구하지 않는다는 점에서 옳다. 그러므로 이건 '§10 정밀화로 뒤집음'이 아니라 — §10이 fork라 한 강형 공동증언을 포기하는 대가로 fork를 회피하는 약형 대안이다. §10의 핵심('지금 그 제품 아님')은 유예로 남겨, 로드맵이 사양이 아니라 옵션으로 남게 한다.
가장 정직한 구분

3 · 무엇이 변하고 무엇이 안 변하나

"단일 모델로 기능한다"는 데이터 스키마 층의 진술이지 '격리 경계를 넘는 새것이 전혀 없다'는 뜻이 아니다. 두 층을 갈라 본다.

불변 — 그대로 서 있다

  • L0 사건 코어 — 한 문장(Event) + 성분(Involvement) + 마스터(Person·Place·Subject). 각 저자가 자기 것을 단일 소유.
  • 단독 소유 = n=1 — 저자 하나면 오늘 모델과 동일.
  • 사건 UUID(네이티브 M7)는 이미 전역 키 — 교차 참조 준비 완료.
  • user_id는 이미 저자성(Authority) 키 — SEM Actor ⊑ Authority.

확장 — 소유·격리 층에서 자란다

  • 교차소유 상관 엣지 — '교차 사용자 읽기 경로 없음' 불변식을 완화(명문 개정 필요).
  • 양자 동의 — 쌍방·지속·상호 철회. 현 Publication은 일방(제2자 없음)이라 새 원자.
  • 색인·병치 산물의 소유 — 어느 한 User에 못 붙는 파생 데이터. 운영자 소유(Question에 이은 2번째 예외) 또는 신설 클래스 필요.
  • 교차소유 읽기 투영(백엔드) — 아키텍처(정본 밖), 그러나 실재하는 신설.
그래서 '데이터 모델은 순수 additive'는 소유 층위에서 거짓이다. 스키마(한 문장의 모양)는 additive가 맞지만, 병치·색인 산물의 소유는 데이터 모델이 답해야 하는 질문이고 '정확히 한 User 귀속' 불변식이 그것을 수용하지 못한다. 정직한 진술: 스키마는 단일하게 유지하되, 격리 불변식을 명시적으로 완화하고 새 합의 백엔드를 신설한다.

지금 심을 것

4 · 네 씨앗 (검증 교정판)

지금 이 네 씨앗을 심으면, 나중에 모델을 갈라지 않고 잠재 차원을 펼치는 방식으로 자란다. 초안의 과장은 아래에서 각각 내린다.

씨앗 1저자성을 독자성과 영구 동일시하지 않기
지금은 소유=저자=독자가 한 명이지만, 나중엔 독자만 넓힌다(쓰기 저자성은 단일 유지). '나'는 이미 Authority #1이고 user_id가 그 키다.
씨앗 2co-narration = 출판 스냅샷 사본 위 교차소유 엣지
두 저자의 두 EventLink(co-narrates)로 잇되, 라이브 레코드가 아니라 출판된 스냅샷 사본을 링크한다. 엣지는 계정 층(L4, Publication의 형제)에 두고, 각 저자가 자기 쪽 동의 레코드를 소유(이중 단일소유 분해 — 단 하나의 교차 공유 행 금지). 철회는 revokedAt 보존(하드삭제 금지).
교정: 초안은 이를 '라이브 모델 Link, Allocation 전례로 가드레일 통과'라 했으나 — Allocation한 User 내부 조인이라 '교차소유' 신규성을 커버 못 한다(가드레일 Q7 RLS 격리에서 실패). 실질 전례는 Allocation(페이로드)+Publication(교차가시·revokedAt·단일소유 분해)의 합성이다. 또 시나리오 참조 무결성('확정 세계 또는 같은 시나리오만')이 교차 User 라이브 참조를 금하므로 출판 사본만 링크해야 한다.
씨앗 3부분 공유 = 층 단위 Publication (그러나 스크럽 필요)
Publication.targetType이미 층을 구분한다(event=L0·reflection=L5·flow/allocation/goal=L2). 그래서 'L0+L5 공개, L2 금전 제외'는 새 필드 없이 발행 프리셋으로 파생된다 — 돈 4역이 사건의 필드가 아니라 eventId로 참조하는 별도 층이기 때문. 사건 코어 §4의 층 설계가 바로 이 기능의 기제였음이 여기서 실증된다.
교정: 금전 제외가 '공짜·깨끗'은 숫자 원장(Flow·Allocation·Goal·Snapshot 행) 한정이다. 재정 사실은 네 경로로 샌다 — ① 자유서술(title·why·how·note·Reflection.content의 금액 언급) ② 앵커-존재(Flow를 빼도 남은 '이사' 사건이 "그날 큰돈이 움직였다"를 증언) ③ Subject 잔존('전세 보증금'·'비상금'은 L0 성분이라 L2 제외로 안 지워짐) ④ 시나리오 겹(제주 vs 서울 비교의 본질은 감당가능성). 공유 파이프라인은 '층 필터'가 아니라 '의미 스크럽 게이트'여야 한다.
씨앗 4백엔드 = 출판 사본만의 교차소유 읽기 투영
쓰기 모델은 영원히 소유자별(local-first, 원칙 9). 공유된 부분집합만 모으는 교차저자 색인이 백엔드다 — 소유자 라이브 저장소에 RLS 접근을 주는 게 아니라 출판 사본의 투영. 물리 서가 = 이 투영 + 인쇄 소책자 + 열람 컴퓨터.
정직: 이 백엔드는 신설이고(당신이 말한 '백엔드 진입'), 그 하드웨어는 마켓 발견성 인프라와 사실상 같다 — 씨앗 4를 심는 순간 '발견성 억제'는 코드가 아니라 정책으로만 유지된다(§5·§6).
additive지만 무비용은 아니다

5 · 일곱 정직한 게이트

공유를 켜기 전에 반드시 통과·명시해야 하는 것들. 대부분 모델이 아니라 정책·동의·물성의 문제이며, 침묵하면 로드맵이 정본과 자기모순한다.

① 타인 실명 = Phase 1 하드 블로커. 내 책자를 공유하면 등장인물(제3자) 실명이 청중 앞에 노출된다. 마스킹은 아직 '열린 질문'인데 로드맵은 Phase 1에서 공유를 켠다 — 순서 오류. co-narration은 이를 해소하지 않고 노출면을 곱한다(마스킹 대상 P가 저자가 되면 P의 이야기 속 새 제3자 Q가 다시 비동의 노출 — 고정점 없음). 고인·재회 불가 인연 등 등장인물 절대다수에겐 마스킹이 유일한 지렛대다.
② 철회 불가. revoke는 소스 + 1차 채널에만 유효하고 물리 인쇄본·교차-RLS 소비 사본엔 구조적으로 무력하다. "네 기록은 어떤 회사보다 오래 산다"(부검 ⑦ 강점)와 "언제든 다시 비공개로"(정책 보증)를 동시에 약속할 수 없다 — 물성 영속성과 철회 불가능성은 같은 동전의 양면. 물리 출력은 '되돌릴 수 없음'을 알리는 더 강한 일회성 동의 게이트를 요구한다.
③ 이중 동의. '항목 공개(Publication)'와 '타인과 병치·색인·co-narrate되는 것'은 별개의 두 동의다. 항목을 공개했다고 자동으로 교차 색인 대상이 되는 것에 동의한 것이 아니다.
④ 격리 불변식 완화는 실질 비용. 스키마는 additive여도, '교차 사용자 읽기 경로 없음'이 '동의된 공개 사본은 별도 투영에서만 예외'로 완화되는 것 자체§10이 'fork의 시작'으로 지목한 교차소유 표면이다. data-model 소유 절을 명문 개정해야 한다(§7 C2).
⑤ 반피드는 아직 안 쓴 정책 한 줄에 걸려 있다. 레포 전체에 발견성·피드·보상·랭킹을 규율하는 조항이 0건이다. 정책이 보장하는 건 넷뿐(기본 비공개·항목 옵트인·철회·쓰임 투명성) — '무보상·무순위 진열'은 어디에도 없다. 자매 문서 monetization §4 마켓플레이스는 발견성과 공개자 보상을 구조로 요구해 부검 ③(전시용 자아)을 정확히 재점화한다. 정책 한 줄을 실제로 박기 전엔 '정책이 상위'는 순환 참조다.
⑥ 강형 포기의 대가. 약형(레코드 상관)은 속성 입도의 합의/이견 구조를 포기한다(§2). 그 공동증언이 정말 필요해지면 그때가 강형(SEM reification = 진짜 fork)이며, 지금은 유예다.
⑦ 디지털 색인은 부검 ⑦을 되살린다. 교차 User 색인이 운영자 소유면 운영자와 함께 죽는다. 그래서 종이 소책자는 '미래의 강점'이 아니라 색인이 되살린 수명 문제에 대한 필수 mortality hedge다. (사적 인쇄가 이미 그 물성 영속성을 전량 확보한다 — 공개 진열이 ⑦에 더하는 한계이득은 0.)
§12 부검을 미래에 대본다

6 · 부검 재대조 — 청중·철회·물성

타임라인 서비스들이 죽은 8원인 중 셋이 이 로드맵에서 재점화된다. 정직하게 대본다 — 방어는 실재하되 구조가 아니라 정책에 얹혀 있다.

부검 원인이 로드맵에서
③ 청중 착오
(전시용 vs 성찰용)
공유·병치·진열은 정의상 청중을 발생시킨다(회피 대상 아님). 진짜 방어선은 '청중 없음'이 아니라 보상·랭킹·발견성 신호 없음. Publication 모델은 청중·랭킹 필드가 없는 중립 구조라 피드를 막지도 허용하지도 않는다 — 억제는 정책에서 온다. 성찰용 원본 vs 전시용 산출(책자) 분리는 '원본 청소'만 막고, 상류 자기검열·산출물 아트디렉션 노동은 못 막는다.
⑧ 감정 부채정적 종이는 'Year in Review'류 급성 부채(알고리즘의 불청 재부상)를 오히려 낮춘다. 대신 관계가 변해도 인쇄·진열본을 조용히 물릴 수 없는 비가역성(만성) 부채를 올린다. '물리 = ③⑧ 위험 최댓값'은 부정확 — '③ + 비가역성'으로 분리해야 한다.
⑦ 회사 수명 < 기록 수명종이 소책자는 ⑦의 가장 강한 물성 해답. 단 §5⑦대로 이는 디지털 색인이 되살린 ⑦에 대한 필수 헤지이지 순수 강점이 아니다.
침식원 명시. monetization §4의 양면 시장(구매자가 콘텐츠를 찾아야 하고 공개자가 수익을 얻음)이 반피드 방어의 최대 침식원이다. 마켓이 켜지는 순간 Facebook Timeline의 청소 노동·전시용 자아가 그대로 돌아온다. '정책 상위'가 실효화되려면 service-policy의 발견성 경계 조항이 선행 조건이다.
보완 추적

7 · 정본 보완 지도 — 어디에 무엇을

이 검토를 정본에 얹었다. 정본 삼각의 고도 분리(원칙 / 왜·언제 / 세부)를 지키되, 세부는 이 보고서를 detail 참조로 링크하고, 모델 불변식 개정만 데이터 모델 본문에 직접 박았다.

문서보완
concept-model.md§10 원칙 9에 각주 — '소유=정상 운영 중 불변, 공개·색인=사본 파생(소유 이전 아님); 단 대면 계정 발급·소유권 이전은 일회적 후견 이양으로 카브아웃'. 신설 §11 '여러 화자 — 단일 모델의 n=1 퇴화형'(§7 미래와 다른 저자 축).
service-vision.md대면 확장성 절 뒤 신설 로드맵 절 'Phase 0→1→2→3 + co-narrate'. 대면 확장성(분리 소유)과 co-narration(같은 사건 연계)의 차이 명시.
data-model.md불변식 개정 소유 절 '교차 사용자 읽기 경로 없음'→'라이브 저장소로의 경로 없음; 동의된 공개는 원본 분리 사본을 별도 투영에'. Publication 절에 '층 단위 공개 프리셋'(금전 제외=숫자 원장 한정, 의미 스크럽 필요). Phasing에 '다화자 co-narration'(가드레일 Q2·Q3·Q6·Q7 조건부 통과). 용어 사전에 index=시대 전용어 예약.
account-policy.mdPerson 공개를 두 게이트로(Phase1 마스킹 하드 블로커 / Phase4-5 연결·동의). 반피드 규율 절. 원칙 9 카브아웃 정합.
service-policy.md발견성 경계 조항 신설(초대·링크 공유·무랭킹·무피드). '언제든 비공개로'를 범위 한정 보증으로(물리·소비 사본엔 무력).
PD6-FuturePlan/신규 detail-SoT 문서(이 보고서 링크) + future-plans-index 등재. social-timeline-comparison을 Phase 2 하위로 재배치. book-export를 Phase 1·물리 서가로 연결.
편집하지 않는 것 — SEM 재정초 검토(2026-07-13)는 날짜 박힌 리포트 스냅샷이라 origin으로 인용만 한다. 살아 있는 정밀화(강형/약형 구분, §10 회피)는 위 정본 문서에 얹는다.