fix(player): закоммитить .env.production — CI собирал плеер без VITE_API_BASE
All checks were successful
CI / Lint (pull_request) Successful in 56s
CI / Build (pull_request) Successful in 1m31s
CI / Secret scan (pull_request) Successful in 20s
CI / PR size check (pull_request) Successful in 6s
CI / Deploy to S1 + S2 (pull_request) Has been skipped

Корень инцидента 2026-06-07: .env.production был в .gitignore → CI-сборка
без VITE_API_BASE → API base падал на window.location.origin (rublox.pro)
вместо minecraftia-school.ru. redeem-ticket уходил на rublox.pro/api-user
(нет такого) → плеер не получал JWT → выбивал на /app через секунду.
Файл содержит только публичные URL, секретов нет.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
min 2026-06-07 18:41:27 +03:00
parent 5a6a222c78
commit 71f9d4dd11
2 changed files with 45 additions and 1 deletions

5
.env.production Normal file
View File

@ -0,0 +1,5 @@
VITE_API_BASE=https://minecraftia-school.ru
VITE_REALTIME_HTTP=https://minecraftia-school.ru/api-game
VITE_REALTIME_WS=wss://minecraftia-school.ru/api-game
VITE_RUBLOX_HOME=https://rublox.pro/app
VITE_STANDALONE=false

41
.gitignore vendored
View File

@ -41,4 +41,43 @@ public/kubikon-assets/
# OS
Thumbs.db
.env.production
# ============================================================
# SECURITY — добавлено после взлома 2026-06-04
# НИКОГДА не коммитить эти файлы — они могут содержать секреты!
# ============================================================
CLAUDE.md
INFO_PROCESS.md
PASSWORD_*.md
SECRETS*
*_SECRETS*
*.kdbx
*.kdbx.bak
.env
.env.*
!.env.example
!.env.sample
# .env.production содержит ТОЛЬКО публичные URL (api-base, realtime, rublox.pro)
# — без секретов. Нужен в git, чтобы CI собирал прод-бандл с правильным
# VITE_API_BASE (иначе API уходит на origin вместо minecraftia-school.ru,
# redeem-ticket падает → плеер выбивает на /app). Инцидент 2026-06-07.
!.env.production
secrets/
*.pem
*.key
id_rsa
id_ed25519
known_hosts
authorized_keys
# Текстовые заметки разработчика (могут содержать всё что угодно)
NOTES*.md
TODO*.md
PRIVATE*.md
INTERNAL_*.md
# Бэкапы кода с предыдущих версий
*.bak
*.bak_*
BackUp/
backup/