{
  "_": "PWA 매니페스트. 아이폰 사파리에는 requestFullscreen 이 아예 없어서 '홈 화면에 추가'가 유일한 전체화면 길이다 (engine/touch.js 의 touchFsCan). 안드로이드는 설치하면 orientation 이 처음부터 가로를 준다 — 그때는 어떤 안내도 안 뜬다 (touchStandalone). 서비스 워커는 2026-09-08 에 넣었다 — **캐시는 여전히 0 이다** (sw.js 머리말: `caches` 를 지우는 자리만 있고 여는 자리가 없다). 크롬이 자동으로 설치를 권하는 알고리즘이 아직 fetch 처리기를 요구해서다. ⚠ 그보다 먼저 막고 있던 것은 표(ticket)였다 — 크롬은 매니페스트를 자격증명 없이 가져가고 안드로이드 설치는 구글 서버가 바깥에서 아이콘을 받아 가므로, 이 파일과 아이콘이 쿠키 없이 200 이어야 한다 (config 의 deploy.noTicket).",
  "_icons": "assets/icons/ 의 다섯 장은 spiki_pinchtitle_x21.png 칸 0(타이틀 얼굴 · 768px)에서 잘라낸 것이다. 다시 그리지 않았다. 배경 #7ec8f0 은 index.html 의 캔버스 배경(하늘)과 같은 색이고, maskable 은 투명이면 검게 나오므로 반드시 불투명이어야 한다.",
  "name": "스피키 스토리 — 네르지 마세요",
  "short_name": "스피키 스토리",
  "description": "스피키가 되어 모험하는 횡스크롤 온라인 RPG (팬 게임 · 개발판)",
  "lang": "ko",
  "dir": "ltr",
  "id": "/",
  "start_url": "./index.html",
  "scope": "./",
  "display": "standalone",
  "display_override": ["standalone", "fullscreen"],
  "orientation": "landscape",
  "background_color": "#0d1020",
  "theme_color": "#0d1020",
  "icons": [
    { "src": "assets/icons/icon-192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" },
    { "src": "assets/icons/icon-512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" },
    { "src": "assets/icons/icon-maskable-192.png", "sizes": "192x192", "type": "image/png", "purpose": "maskable" },
    { "src": "assets/icons/icon-maskable-512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" }
  ]
}
