o2o-infinith-demo/supporters
Haewon Kam e44ff60537 feat(supporters): 회복 일정 플래너 계측 이벤트 (메인 체크아웃 미커밋분에서 가져옴)
메인 체크아웃(feature/ai-sentiment-rubric)의 작업 트리에 커밋되지 않은 채 남아 있던
플래너 계측 코드가 main 에 없었다. 기록 노트 머리말이 "2026-09-12 추가 작업: 플래너
계측 이벤트 구현"이라고 적은 그 코드다. 브랜치 통합은 커밋된 상태까지만 가져가므로
빠졌고, 그래서 배포된 세 사이트에 플래너 계측이 없었다.

Planner.astro 의 계측 부분만 가져왔다(haewon 결정). 같은 미커밋분이 Base.astro 에도
GA4 태그를 넣는데, main 에는 이미 같은 태그가 들어가 있어 그대로 두었다. 두 구현이
겹치면 태그가 두 번 들어간다.

가져온 것
- track(): window.gtag 가 없으면 아무것도 하지 않는다. GA4 측정 ID 가 비어 있으면
  태그 자체가 안 나가므로 기본 상태에서 조용하다.
- plan_procedure_select · plan_result · plan_save 이벤트.
- leadBucket(): 수술일 원본을 보내지 않고 남은 기간 구간(past·0-7d·8-28d·29-90d·90d+)만
  보낸다. 체류 일수·출국 확정 여부·선호·국적도 값이 아닌 구간·플래그로 보낸다.
- 호텔·항공·상담 링크의 data-ga 속성. Base.astro 의 클릭 리스너가 이 값을 읽는다.

site.json 에 ga4MeasurementId 자리와 설명을 넣었다. 템플릿 빈 데이터셋에는 이미 있었다.

검증: 뷰 34페이지, 게이트 41/41, check.mjs 오류 0건, tsc 0 에러,
빈 데이터 템플릿 16페이지, 내보내기 0. 번들에서 gtag 미존재 시 조기 반환 확인.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-14 08:55:44 +09:00
..
.vscode feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
briefs feat(supporters): 원진 랜딩 히어로를 글로벌 허브 리셉션 사진으로 (haewon 지정) · 갤러리 사진을 카드 후보에서 제외 2026-09-12 16:55:40 +09:00
docs feat(supporters): 2단계 2차 원천 콘텐츠 5편 초안 + 1차 4편 검토 확정 + 의료진 6명 추가 2026-09-07 11:28:06 +09:00
public feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
scripts feat(supporters): 원진 랜딩 히어로를 글로벌 허브 리셉션 사진으로 (haewon 지정) · 갤러리 사진을 카드 후보에서 제외 2026-09-12 16:55:40 +09:00
src feat(supporters): 회복 일정 플래너 계측 이벤트 (메인 체크아웃 미커밋분에서 가져옴) 2026-09-14 08:55:44 +09:00
.env.example feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
.gitignore feat(supporters): 회복 일정 플래너를 템플릿·워커에 통합 (/plan·/en/plan), /recovery·/stay 를 /plan 으로 정리 2026-09-11 11:27:59 +09:00
AGENTS.md feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
astro.config.mjs fix(supporters): astro.config 의 /stay→/recovery 리다이렉트 제거 (주변 안내 페이지가 리다이렉트 HTML 로 덮이던 원인) 2026-09-11 18:30:24 +09:00
CLAUDE.md feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
DEPLOY_NOTE.md feat(supporters): 회복 일정 플래너를 템플릿·워커에 통합 (/plan·/en/plan), /recovery·/stay 를 /plan 으로 정리 2026-09-11 11:27:59 +09:00
package-lock.json feat(supporters): 근거 수집기 scripts/collect_evidence.mjs + evidence/viewclinic (§7-3) 2026-09-07 14:26:15 +09:00
package.json feat(supporters): 글 생성기 §7-4 — brief+근거 컨텍스트 → GPT-4.1 → 소스 게이트·수치 대조·근거 대조·수정 2회, 정답지 18편 회귀 18/18 통과 2026-09-07 16:37:56 +09:00
README.md feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
tsconfig.json feat: 뷰성형외과 서포터즈 샘플 사이트 v3 + 설계 v0.1 + 공식 사이트 대비 AEO 감사 2026-09-07 08:40:10 +09:00
vercel.json feat(supporters): 주변 안내(/stay·/en/stay) 뷰 샘플에 추가 · 내비·언어 짝·사이트맵·스타일 이식, 구조 기준선 갱신 2026-09-11 18:28:13 +09:00

Astro Starter Kit: Minimal

npm create astro@latest -- --template minimal

🧑‍🚀 Seasoned astronaut? Delete this file. Have fun!

🚀 Project Structure

Inside of your Astro project, you'll see the following folders and files:

/
├── public/
├── src/
│   └── pages/
│       └── index.astro
└── package.json

Astro looks for .astro or .md files in the src/pages/ directory. Each page is exposed as a route based on its file name.

There's nothing special about src/components/, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.

Any static assets, like images, can be placed in the public/ directory.

🧞 Commands

All commands are run from the root of the project, from a terminal:

Command Action
npm install Installs dependencies
npm run dev Starts local dev server at localhost:4321
npm run build Build your production site to ./dist/
npm run preview Preview your build locally, before deploying
npm run astro ... Run CLI commands like astro add, astro check
npm run astro -- --help Get help using the Astro CLI

👀 Want to learn more?

Feel free to check our documentation or jump into our Discord server.