https://github.com/gnuboard/g7/issues/122 제보자의 추가 지적 2건(빌드가 게시본을 지움 / CLI 최초 게시 후 웹 재생성 불가)에 대응하고, 같은 근본 원인을 공유하는 결함을 전수조사로 함께 고친다. - 빌드가 자기 산출물만 교체한다: 루트 vite `emptyOutDir: false` 기본값 true 는 폴백 없는 코어 3번들과 배달된 immutable URL 의 게시본을 함께 지웠다 - 게시 트리 권한을 웹이 이어받는다: 병합 전 프리플라이트 + 부모 그룹 상속·g+w 종전 소유권 정상화는 root 축만 덮어 비-root CLI 계정은 무방비였다 - 갱신 → 생성 → 완전성 확인을 한 묶음으로: 기록 바이트 대조, .old 원자 스왑, rename 일시 거부 재시도, 프론트 JSON 파싱 검증 - 실패를 억제하고 기록한다: 버전 한정 실패 마커 + 사유별 대시보드 알림 + ext-static:status 점검 커맨드 - 파생: catch-all 제외 목록을 에셋 화이트리스트 합집합에서 파생(mjs·webp·otf 누락), 번들 디스크 쓰기 fail-soft·빈 번들 503, 활성 디렉토리 prune 회피
69 lines
4.3 KiB
PHP
69 lines
4.3 KiB
PHP
<?php
|
|
|
|
return [
|
|
'types' => [
|
|
'module' => '모듈',
|
|
'plugin' => '플러그인',
|
|
'template' => '템플릿',
|
|
],
|
|
|
|
'errors' => [
|
|
'core_version_mismatch' => ':extension (:type)은(는) 그누보드7 코어 버전 :required 이상을 요구합니다. (현재: :installed)',
|
|
'version_check_failed' => '버전 검증에 실패했습니다.',
|
|
'operation_in_progress' => '":name"에 대해 진행 중인 작업(:status)이 있어 요청을 처리할 수 없습니다.',
|
|
'zip_missing_manifest' => 'ZIP 내부에서 :file 매니페스트를 찾을 수 없습니다: :zip',
|
|
'zip_invalid_manifest' => 'ZIP 내부의 :file 매니페스트를 JSON 으로 해석할 수 없습니다.',
|
|
'zip_identifier_mismatch' => 'ZIP 매니페스트의 식별자가 대상 확장과 일치하지 않습니다. (기대: :expected, 실제: :actual)',
|
|
'zip_missing_version' => 'ZIP 내부의 :file 매니페스트에 version 필드가 없습니다.',
|
|
'not_found' => '확장(:identifier) 을 찾을 수 없습니다.',
|
|
'cascade_dependency_failed' => '동반 설치할 :type (:identifier) 의 설치에 실패했습니다: :message',
|
|
'invalid_type' => '유효하지 않은 확장 타입입니다.',
|
|
'not_auto_deactivated' => '이 확장은 코어 버전 호환성 문제로 자동 비활성화된 상태가 아닙니다.',
|
|
'hidden_extension' => '내부용(hidden) 확장은 사용자 노출 대상이 아닙니다.',
|
|
],
|
|
|
|
'warnings' => [
|
|
'auto_deactivated' => ':type ":identifier"이(가) 코어 버전 호환성 문제로 자동 비활성화되었습니다.',
|
|
],
|
|
|
|
'alerts' => [
|
|
'incompatible_deactivated' => ':type ":name" 자동 비활성화됨',
|
|
'incompatible_message' => '필요 버전: :required, 현재 설치됨: :installed',
|
|
'recovered_title' => ':type ":name" 다시 호환 가능',
|
|
'recovered_body' => '코어 업그레이드 후 호환됩니다 (이전 요구: :previously_required). 다시 활성화할 수 있습니다.',
|
|
'recovered_success' => '확장이 다시 활성화되었습니다.',
|
|
'dismissed' => '알림을 닫았습니다.',
|
|
'auto_deactivated_listed' => '자동 비활성화된 확장 목록입니다.',
|
|
'recover_action' => '다시 활성화',
|
|
'dismiss_action' => '알림 닫기',
|
|
'static_publish_failed_title' => '초기 화면 파일 생성 실패',
|
|
'static_publish_failed_parent_not_writable' => '초기 화면 파일을 저장할 폴더에 쓸 수 없어 :count회 연속 실패했습니다. 사이트는 정상 동작하지만 첫 화면이 느려집니다. 서버에서 `php artisan ext-static:status` 로 원인을 확인하세요.',
|
|
'static_publish_failed_write_failed' => '초기 화면 파일을 만드는 중 :count회 연속 실패했습니다. 디스크 여유 공간을 확인하세요. 사이트는 정상 동작하지만 첫 화면이 느려집니다.',
|
|
'static_publish_failed_lock_unavailable' => '초기 화면 파일 생성이 :count회 연속 건너뛰어졌습니다. 캐시 저장소 상태를 확인하세요. 사이트는 정상 동작하지만 첫 화면이 느려집니다.',
|
|
],
|
|
|
|
'badges' => [
|
|
'incompatible' => '코어 업그레이드 필요',
|
|
'incompatible_tooltip' => '코어 :required 이상 필요 (현재: :installed)',
|
|
'incompatible_sr' => ':name 은(는) 코어 :required 이상이 필요하지만 현재 :installed 가 설치되어 있어 업데이트할 수 없습니다.',
|
|
],
|
|
|
|
'banner' => [
|
|
'title' => '코어 호환성 문제로 자동 비활성화된 확장이 있습니다',
|
|
'item_required' => '필요 버전: :required',
|
|
'guide_link' => '코어 업그레이드 가이드',
|
|
'dismiss' => '닫기',
|
|
],
|
|
|
|
'update_modal' => [
|
|
'compat_warning_title' => '코어 버전 호환성 경고',
|
|
'compat_warning_message' => '이 :type 은(는) 코어 :required 이상이 필요합니다. (현재: :installed)',
|
|
'compat_guide_link' => '코어 업그레이드 가이드 보기',
|
|
'force_label' => '경고를 무시하고 강제 업데이트 (권장하지 않음)',
|
|
],
|
|
|
|
'commands' => [
|
|
'clear_cache_success' => '확장 버전 검증 캐시가 삭제되었습니다.',
|
|
],
|
|
];
|