0. AI 작업 규칙 (이 문서를 읽은 AI가 지킬 것)
- 모든 PHP 코드는 PHP 5.6 문법으로 작성한다.
??,?->,fn(),match, 스칼라 타입힌트,declare(strict_types), 짧은[...]구조분해,random_int의존을 쓰지 않는다. (코어는 이 문법을 쓰지 않는다[확인]) - 클로저·
array()문법은 코어가 이미 사용하므로 허용된다. - 파일은
defined('DX_CMS')가드로 시작한다:if (!defined('DX_CMS')) exit('Direct access not allowed.'); - 모든 사용자 출력은
htmlspecialchars또는Secure::esc()를 거친다. POST는 CSRF(dx_csrf_field()/dx_csrf_check())를 포함한다. - DB 접근은
Database::getInstance()와$db->table('이름')(prefix 자동 부여)을 쓴다. 테이블명을dx_로 하드코딩하지 않는다. - 스키마 변경은 운영 DB에 직접 가하지 않고
install/migrate.php형식의 멱등(idempotent) 블록으로 제공한다. - 코어(
core/) 수정은 최소 패치로 한다. 가능하면extend/, 훅, 플러그인, 테마 오버라이드로 해결한다. - 사용자는 완성본 파일/ZIP(원본 폴더 구조 유지) 을 선호한다. 부분 스니펫만 던지지 않는다.