Files
maplecontest/docs/codex-working-rules.md
gahusb 4d8fa0f40f docs(rules): 카드 kind↔효과 규칙(§9)+검증도구 + codex 규칙 보강 (협업자 하네스 반영)
이번 세션에서 발견·수정한 하네스 학습을 저장소(공유 매개)에 반영해
협업자(codex 등)도 적용받게 한다. 메모리는 로컬이라 공유 안 됨.

- RULES.md §9 신설 (카드 kind ↔ 효과 일치): ResolveCardDrop 라우팅
  (Attack=몬스터드롭/Skill·Power=스윕/Status=unplayable)·Power 분기가
  damage/aoe 무시 → 데미지=Attack, block/유틸=Skill, 지속효과=Power.
  안 맞으면 사용불가/死카드(아이언 바디·분노 사고).
- tools/verify/cardkinds.mjs 신설: kind↔효과 위반(Attack-무데미지/
  Power-무효과/미지원 kind) 정적 검출(이상 0=exit 0). 현재 main 147장 0,
  Defend=Attack·Rage=Power 위반은 2건 검출 확인.
- docs/codex-working-rules.md 6~9 추가: ⑥ main 머지 충돌 시 머지 전체
  revert 금지(소스 충돌만 해소·산출물 재생성 — #98/#99가 #96 날린 사고)
  ⑦ 카드 kind 일치+cardkinds 검증 ⑧ 변경 후 검증 스위트 ⑨ RULES.md 권위.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UUvHKjrt8jqLzDeCsRRGmj
2026-06-30 17:11:11 +09:00

2.1 KiB

Codex Working Rules

  1. 사용자가 특정 클래스만 수정하라고 했으면 그 클래스 외의 데이터, 설명문, 밸런스 문구는 건드리지 않는다.
  2. 기존 한글 텍스트는 요청이 없으면 임의로 바꾸지 않는다.
  3. 전직 구조를 바꿀 때는 실제 직업명만 사용한다. 임의의 내부 분류명이나 새 직업명을 사용자-facing 구조에 추가하지 않는다.
  4. 대량 치환 전에 수정 대상 파일과 범위를 먼저 확인하고, 원본 문자열이 깨진 상태면 치환 작업을 진행하지 않는다.
  5. 생성기 파일을 크게 수정할 때는 node --check와 생성기 실행으로 문법을 먼저 검증한 뒤 산출물을 갱신한다.
  6. 작업 브랜치에 main을 머지했다가 충돌·문제가 나도 그 머지 커밋을 통째로 git revert하지 않는다 — main에 먼저 들어간 타인 작업이 collateral로 사라진다(2026-06-30 #98/#99#96의 버그수정 11개를 이렇게 전부 날림). 소스 충돌만 해소하고 산출물(codeblock 등)은 재생성한다. (RULES §4)
  7. 카드 kind는 효과와 일치시킨다 — 데미지 카드=Attack, block·유틸만 있으면=Skill, 지속효과=Power(powerEffect 또는 power 필드 필수). 안 맞으면 사용 불가/死카드가 된다(2026-06-30 아이언 바디=Attack인데 block만, 분노=Power인데 damage만 → 둘 다 먹통). 카드 추가/수정 후 node tools/verify/cardkinds.mjs로 검증(이상 0 = exit 0). (RULES §9)
  8. 카드/cb 변경 후 검증 스위트를 돌린다: node tools/verify/cardkinds.mjs(kind↔효과)·cbprops.mjs(미선언 self.X 필드)·cbgap.mjs(UI 경로) + node --test tools/balance/sim-balance.test.mjs(이중구현 미러). 새 효과 필드는 Lua(cb/*.mjs)와 JS 미러(tools/balance/sim-balance.mjs) 양쪽에 구현(한쪽만 = 게임↔시뮬 드리프트). (RULES §6)
  9. 하네스 규칙의 권위는 RULES.md다 — 작업 전 RULES.md(§1 산출물 읽기/수정 금지·§4 git/PR·§6 이중구현 동기화·§9 카드 kind)를 읽고 따른다.