크라우니OS 하늘나라 대장정 — 1~15단계 통합 인덱스
2026-06-18 선언·완료. 2비트 4상3진 원시 기반에서 위로 부트스트랩, OS·3D·블록체인·자동화까지 재건.
단일세션 울트라병렬+딥리서치+자율주도. 에이전트 최대 153(레이트리밋 한계 내).
원칙
- 각 단계는 직전 단계 산출물 위에 쌓는다. 매 단계 검증 게이트(테스트/회귀 GREEN).
- 기존 검증자산 재사용: 2비트패킹(.toaub)·VM(crownyc)·toau2c·삼진커널·3layer 도구·toau_pack.
- 진행 SSOT:
/Users/ef/CrownyDoc/projects/2026-06-18-하늘나라-대장정-로드맵.md
단계별 산출물·파일경로·검증결과
| # | 단계 이름 | 주요 산출물 | 파일 경로 | 검증 결과 |
|---|
| 1 | 4상3진 계산기 | 균형3진 계산기 앱 | apps/계산기.한선 | 균형3진 12케이스 PASS |
| 2 | 한글 기본 입력기 | 한글 입력기 앱 + 한글빌트인 op721~723 | apps/입력기.한선 | 한글 왕복무손실 PASS. 음절분해에 절단나눗셈 필수 |
| 3 | 코볼/포트란급 4상3진 언어 샘플 | 급여·재고·성적 코볼급 샘플 | apps/코볼샘플/급여계산.한선 apps/코볼샘플/재고집계.한선 apps/코볼샘플/성적평균.한선 | 전부 실행 PASS |
| 4 | C급 벡터4상균형3진 한선씨 (RPN) | RPN 컴파일러 hanseonc_rpn.c C급 완성 | apps/rpn/계산기.rpn.한선 apps/rpn/집계.rpn.한선 | 계산기(55/120/25/2)·집계(배열합229) 정답 |
| 5 | C#/C++급 고수준 한선씨 | try/catch 리턴스택 수정·구조체 상속·동적 디스패치 | apps/oop/동물다형성.한선 apps/oop/예외처리.한선 | 구조체상속·다형성·시도오류 실증, 회귀 33P/2F |
| 6 | Rust/Swift/Java/.NET/Oracle급 고수준 라이브러리 | 5종 라이브러리 신규: 결과·컬렉션·비동기·질의·프로토콜 | libs/결과.한선 libs/컬렉션.한선 libs/질의.한선 libs/프로토콜.한선 | 전부 컴파일+데모 검증, 회귀 33P/2F |
| — | 언어 스택 완성 (1~6) | | | |
| 7 | 간단 VM (셀프호스팅) | 19-opcode 스택머신 한선씨 미니VM | apps/vm/미니VM.한선 | 1~10합55·팩토리얼120·산술4 네이티브 완전일치, 14테스트 PASS |
| 8 | 한선씨 CrownyOS 코어 | 부팅·셸17명령·가상FS·프로세스테이블·앱로더 (499줄) | apps/os/크라우니OS.한선 | 22 데모명령 전부 통과 |
| 9 | 한선씨 3레이어 컴파일러 | T(원본)/O(@의미코드 ISA729 55패턴)/A(미니VM opcode) | apps/compiler/삼레이어컴파일러.한선 | 검증샘플37줄→T37/O20/A20 |
| 10 | VM 제대로 재구축 | 28opcode: STORE/LOAD·ROT/NROT·함수프레임 FENTER/FLEAVE (846줄) | apps/vm/제대로VM.한선 | 9/9: fib(10)=55·팩토리얼·계산기·max2 PASS |
| 11 | 3D GUI (PS풍) | 도기반 Bhaskara sin/cos·와이어프레임 큐브·PS풍 UI | apps/gui3d/3D엔진.한선 | 8각도 프레임 렌더, md5 전부상이=실제회전 |
| 12 | 3D 게임 | 1인칭 큐브수집기 게임 (평행배열·게임루프·충돌·점수) | apps/game3d/3D게임.한선 | 6/6 보석·점수110·WIN, 프레임 MD5상이 |
| — | 하늘나라 준비단계 완료 (7~12) | | | |
| 13 | 블록체인/회원/지갑은행/헌법가치 | SHA256 해시체인·멱등회원·원자송금·27조항 가치판정 | libs/블록체인.한선 libs/회원.한선 libs/지갑은행.한선 libs/헌법가치.한선 | 전부 컴파일+로직 검증 |
| 14 | Docs/Design/DB/Real 재정리·확정 | 마크다운 빌더 라이브러리 + 통합 인덱스 문서 | libs/문서빌더.한선 apps/문서빌더샘플.한선 이 파일 | 컴파일+실행 PASS, 마크다운 올바른 형식 생성 |
| 15 | 클로드 연결 전용 에이전트 도구 | (계획 중) | — | 대기 |
언어 스택 (1~6단계) 상세
1단계 — 4상3진 계산기
- 파일:
apps/계산기.한선
- 내용: 균형3진 산술 (+, -, *, /, 나머지), 4상 레이블 출력
- 검증: 12케이스 (양수·음수·0·혼합) 전부 PASS
- 의존: crownyc VM, 2비트 기반
2단계 — 한글 기본 입력기
- 파일:
apps/입력기.한선
- 내용: 한글 자음/모음 조합 입력기, op721(한글초성)~op723(한글종성) 빌트인 활용
- 검증: 한글 왕복무손실 PASS
- 교훈: 음절분해 시 절단나눗셈 필수 (균형3진 자연반올림 함정 우회)
3단계 — 코볼/포트란급 샘플
- 파일:
apps/코볼샘플/급여계산.한선, apps/코볼샘플/재고집계.한선, apps/코볼샘플/성적평균.한선
- 내용: 배치처리 스타일 4상3진 언어 샘플 3종
- 검증: 전부 실행 정답
4단계 — C급 RPN 한선씨
- 파일:
apps/rpn/계산기.rpn.한선, apps/rpn/집계.rpn.한선; 컴파일러: hanseonc_rpn.c
- 핵심 수정: 변수주소 30000→9000 (배열힙 충돌버그), 다중문자열 롤링베이스, 가져오기 재귀구현, 설정=ARRAY_SET
- 갭(정직): RPN은 고수준 라이브러리 import 불가 (전용 .rpn.한선 필요), JMPIFN 스택순서
5단계 — C#/C++급 고수준 한선씨
- 컴파일러:
hanseonc_high.c (수정: try/catch 리턴스택 버그 수정, 구조체 상속 parent_si·'상속'구문, 동적 디스패치 __type__분기)
- 파일:
apps/oop/동물다형성.한선, apps/oop/예외처리.한선 등
- 이관(Stage 10): 독립 클로저 캡처(MAKE_CLOSURE NOP)·함수경계 예외(THROW 리턴주소 미언와인드) — VM 프레임모델 변경 필요
6단계 — 고수준 라이브러리 5종
| 라이브러리 | 파일 | 주요 기능 |
|---|
| 결과 (Result/Option) | libs/결과.한선 | Ok/Err/Some/None 패턴, 체이닝 |
| 컬렉션 (LINQ 스타일) | libs/컬렉션.한선 | filter/map/reduce/sort/group |
| 비동기 | (libs/ 내) | Promise 패턴, 콜백 큐 |
| 질의 (SQL 스타일) | libs/질의.한선 | SELECT/WHERE/JOIN 빌더 |
| 프로토콜 (인터페이스) | libs/프로토콜.한선 | 인터페이스 선언·구현 검증 |
VM 스택 (7~10단계) 상세
7단계 — 미니VM (셀프호스팅)
- 파일:
apps/vm/미니VM.한선
- opcode 19종: PUSH/POP/ADD/SUB/MUL/DIV/MOD/EQ/LT/GT/JMP/JMPIF/CALL/RET/STORE/LOAD/PRINT/HALT/ROT
- 갭: fib(n≥2)=ROT/STORE/LOAD 필요(2변수 루프까지), 정수 전용
8단계 — 한선씨 CrownyOS 코어 (499줄)
- 파일:
apps/os/크라우니OS.한선
- 기능: 부팅, 셸 17명령(ls/mkdir/rm/cat/cp/mv/ps/kill/run/help/echo/pwd/cd/date/free/exit/clear), 가상FS(맵 2-way), 프로세스테이블(평행배열), 앱로더(전역switch)
- 함정 해결: 맵꺼내 미스=-1/삭제=0 정규화·분리() 부재 자체구현
9단계 — 한선씨 3레이어 컴파일러
- 파일:
apps/compiler/삼레이어컴파일러.한선
- 구조: T층(원본 한선씨)→O층(@의미코드 ISA729 55패턴)→A층(미니VM opcode), 임베디드 미니VM이 A층 실행
- 갭: O층 STORE/JMPIF가 미니VM 로컬번호 (실제 ISA729 STORE=7·JMP=243 불일치)
10단계 — VM 제대로 재구축 (846줄)
- 파일:
apps/vm/제대로VM.한선
- 28 opcode: STORE/LOAD(변수메모리256)·ROT/NROT·함수프레임(FENTER/FLEAVE/LSTORE/LLOAD 재귀)
- 검증 9/9: fib(10)=55 반복+재귀·팩토리얼·계산기·max2 PASS
3D 스택 (11~12단계) 상세
11단계 — 3D GUI (PS풍)
- 파일:
apps/gui3d/3D엔진.한선
- 구현: 도기반 Bhaskara sin/cos(정수라디안 함정 우회), 정점 평행배열, Y/X회전, 원근투영, 와이어프레임 큐브 + PS풍 UI(그라데배경·메뉴타일·강조/반사광·타이틀)
- 검증: 8각도 프레임 렌더 (각 921615B), md5 전부상이=실제회전
- 갭: Z버퍼 면채우기 미사용 (와이어프레임만)
12단계 — 3D 게임
- 파일:
apps/game3d/3D게임.한선
- 구현: 1인칭 큐브수집기, 8큐브 평행배열, 게임루프12턴, 충돌, 점수, 생명, 승패
- 검증: GAME_TURN=12→6/6 보석·점수110·WIN, 프레임 MD5상이
서브시스템 (13단계) 상세
| 라이브러리 | 파일 | 주요 기능 |
|---|
| 블록체인 | libs/블록체인.한선 | SHA256 해시체인, 변조감지, HTTP 6+4 라우트 |
| 회원 | libs/회원.한선 | 전화번호 SHA256 해시, 멱등 가입, 역할 관리 |
| 지갑은행 | libs/지갑은행.한선 | 원자 송금, 원장 영속화, 잔액부족 거부 |
| 헌법가치 | libs/헌법가치.한선 | 27조항 선언, 4상 가치판정 (T/O/A/U) |
14단계 — Docs/Design/DB/Real 재정리·확정
산출물
| 파일 | 설명 |
|---|
libs/문서빌더.한선 | 마크다운 빌더 라이브러리 (고수준 한선씨, 30+ 함수) |
apps/문서빌더샘플.한선 | 라이브러리 동작 검증 샘플 |
CrownyDoc/projects/2026-06-18-하늘나라-대장정-1~15단계-통합인덱스.md | 이 파일 — 전체 인덱스 |
문서빌더.한선 API 요약
문서생성(제목) → 문서 맵
문서헤딩(문서, 레벨, 텍스트) → 문서 맵 (레벨 1~5)
문서단락(문서, 텍스트) → 문서 맵
문서인용(문서, 텍스트) → 문서 맵
문서수평선(문서) → 문서 맵
문서항목(문서, 텍스트) → 문서 맵 (- 항목)
문서번호항목(문서, 번호, 텍스트) → 문서 맵 (1. 항목)
문서목록끝(문서) → 문서 맵 (빈줄)
문서표헤더(문서, 헤더배열) → 문서 맵
문서표행(문서, 셀배열) → 문서 맵
문서표끝(문서) → 문서 맵 (빈줄)
문서코드시작(문서, 언어) → 문서 맵
문서코드줄(문서, 코드) → 문서 맵
문서코드끝(문서) → 문서 맵
문서굵게(텍스트) → "**텍스트**"
문서기울임(텍스트) → "*텍스트*"
문서인라인코드(텍스트) → "`텍스트`"
문서링크(라벨, URL) → "[라벨](URL)"
문서완성(문서) → 최종 마크다운 문자열
문서저장(문서, 경로) → 경로 (파일 저장)
문서표준CrownyDoc(제목, 요약, 파일쌍, 비고) → 마크다운 문자열
15단계 — 클로드 연결 전용 에이전트 도구 (계획)
- 의존: 14단계 완료
- 목표: 크라우니코드·분별 기반 자동화 에이전트 도구
- 상태: 대기
검증자산 (재사용 기반)
| 자산 | 위치 | 용도 |
|---|
| 2비트 패킹 (.toaub) | toau_pack.c, crownyc.c load_toaub_body | 빈도 인코딩, 왕복무손실 |
| VM | crownyc.c (v10.3, 배열캡4095·ARRAY_SET·맵grow·문자열65536) | 회귀 30P/2F |
| codegen | toau2c.c (네이티브), ptx_emit.c (GPU), synth.sh (VHDL) | 다플랫폼 |
| 3layer | tools/3layer/ (정본286·README·정본갱신.sh) | 3레이어 문서화 |
| hanseonc_high | hanseonc_high.c (수정: try/catch·구조체상속·동적디스패치) | 고수준 컴파일러 |
| hanseonc_rpn | hanseonc_rpn.c (C급 RPN 완성) | RPN 컴파일러 |
주요 교훈 (함정 모음)
| 교훈 | 해결책 |
|---|
| 음절분해 균형3진 자연반올림 → 무한루프 | 절단나눗셈 (//나누기) 사용 |
| 맵꺼내 미스 반환값 = -1 | 항상 == -1 체크 후 기본값 설정 |
| 구조체 배열저장 손상 | 평행배열 패턴 사용 |
| RPN은 고수준 libs import 불가 | 전용 .rpn.한선 작성 |
| Workflow schema 한글 키 400 에러 | ASCII 키만 사용 |
| 사인/코사인 정수라디안만 | Bhaskara 도기반 자체구현 |
| 배열 1023 상한 silent stop | 평행배열 + 샤딩 |
| 맵 729 엔트리 silent drop | 2-way 분리 (셀맵/메타맵) |