← 목록
기타 2026-05-27 3KB 읽기 3분

시즌2 명단 입력 도구 (2026-05-27)

개요

시즌2설계.한선의 placeholder new01~new18을 실명으로 채우는 입력 모듈. CLI(한선씨 함수 직접 호출) + HTTP 폼(메인 세션이 라우트 wire)을 함께 지원.

실명은 사용자가 입력해야 한다 — 추정으로 채우지 않는다.

무엇을 했는지

  • 한선씨 라이브러리 시즌2명단 신설 (18인 placeholder 관리)
  • 영속 파일: /tmp/시즌2_신규명단.dat (라인: 슬롯|코드|이름|이메일|crowny_id|검증상태|시간)
  • 셀코어 호환 룰 헬퍼 인라인 (다중 import silent fail 회피)
  • 핵심 함수: 명단_초기화, 명단_등록, 명단_조회, 명단_조회_코드, 명단_전체, 명단_전체_코드, 명단_검증, 명단_검증_sso, 명단_요약, 명단_리셋
  • HTTP 핸들러: 명단_HTTP_POST, 명단_HTTP_GET_전체 (메인 세션이 라우트에 wire)
  • 셀코어 룰: 명단_등록_유효 (우선순위 10), 명단_검증_sso (우선순위 20)
  • 자가검증: 5명 등록 + 중복/형식/범위 거부 + 조회 + HTTP + 27인 합치기

검증 결과

정원=18 채워진=5 검증완료=5 sso완료=5 대기=13
코드중복: err:코드중복 (PASS)
이메일중복: err:이메일중복 (PASS)
형식틀림: err:이메일형식 (PASS)
슬롯0/19: err:슬롯범위 (PASS)
HTTP POST 슬롯9: ok:sso_confirmed (PASS)
신규18 [0]=hsk01 [8]=hsk09 [17]=new18 (PASS)

관련 파일

  • /Users/ef/Downloads/CrownyTVM/std/시즌2명단.한선 (한선씨 본체, 454줄)
  • /Users/ef/Downloads/CrownyTVM/std/시즌2명단.han (.han 동반본)
  • /Users/ef/Downloads/CrownyTVM/std/시즌2설계.한선 (연동 대상, line 24 시즌2_27인_코드)
  • /tmp/시즌2_신규명단.dat (영속)
  • /tmp/v_시즌2명단.han (검증 진입점)

시즌2설계 연동 (메인 세션 처리)

시즌2설계.한선의 시즌2_27인_코드()를 아래로 교체 (시즌1 9 + 명단 18):

javascript가져오기 "시즌2명단"
함수 시즌2_27인_코드() {
    변수 s1 = 시즌1_9인_코드()
    반환 시즌2_27인_코드_실명(s1)
}

시즌2_27인_코드_실명(시즌1코드들)는 시즌2명단에서 노출됨. 미입력 슬롯은 placeholder(new07 등)가 남아 대조 가능.

v0.38 함정 회피

  • dot 변수명 금지 (KwStatDot 키워드 충돌) → 점수로 변경
  • 셀코어 직접 import 금지 → 인라인 룰 헬퍼 (명단룰_생성/조건/변경)
  • 상태 단독 변수명 금지 → stv로 변경
  • 함수명 명단_상태요약명단_요약 (안전성)
  • 맵키들() 미존재 → 글자수 체크로 우회

잔여 이슈

  • sso 검증은 hook (명단_sso_확인_hook) — 실배포 시 sso.crowny.org:9401 호출로 교체
  • OTP 추가: 명단룰_조건(룰2, "otp_확인", "==", 1) 한 줄 끼면 균형 갱신
  • HTTP 라우트 wire는 메인 세션 작업 (finance/ecosystem 서버에 endpoint 추가)