TestFlight
- Supabase 스키마/마이그레이션 v1 명세:
docs/supabase-schema-v1.md - 데이터 레이어 전환 설계 v1:
docs/data-layer-transition-v1.md - 다견가정 도메인/UX 명세 v1:
docs/multi-dog-domain-v1.md - 명소 넓이 데이터 거버넌스 v1:
docs/area-references-data-governance.md - 비교군 UI DB 전환 v1:
docs/area-reference-db-ui-transition-v1.md - 이미지 생성 공급자 라우터 명세 v1:
docs/image-provider-router-v1.md - 시계열 Heatmap 명세 v1:
docs/heatmap-timeseries-v1.md - Watch 액션 신뢰성 명세 v1:
docs/watch-connectivity-reliability-v1.md - 캐리커처 비동기 파이프라인 명세 v1:
docs/caricature-async-pipeline-v1.md - 근처 사용자 익명 핫스팟 명세 v1:
docs/nearby-anonymous-hotspot-v1.md - 핫스팟 위젯 프라이버시 매핑 v1:
docs/hotspot-widget-privacy-mapping-v1.md - 핫스팟 위젯 반경 preset v1:
docs/hotspot-widget-radius-preset-v1.md - 위젯 액션 실기기 검증 매트릭스 v1:
docs/widget-action-real-device-validation-matrix-v1.md - 위젯 액션 실기기 증적 런북 v1:
docs/widget-action-real-device-evidence-runbook-v1.md - 위젯 액션 실기기 증적 템플릿 v1:
docs/widget-action-real-device-evidence-template-v1.md - 위젯 family 실기기 검증 매트릭스 v1:
docs/widget-family-real-device-validation-matrix-v1.md - 위젯 simulator baseline coverage 매트릭스 v1:
docs/widget-simulator-baseline-coverage-matrix-v1.md - 위젯 family 실기기 증적 런북 v1:
docs/widget-family-real-device-evidence-runbook-v1.md - 위젯 family 실기기 증적 템플릿 v1:
docs/widget-family-real-device-evidence-template-v1.md - 위젯 액션 종료 체크리스트 v1:
docs/widget-action-closure-checklist-v1.md - 위젯 액션 종료 코멘트 템플릿 v1:
docs/widget-action-closure-comment-template-v1.md - Manual evidence helper v1:
docs/manual-evidence-helper-v1.md - Manual evidence prefill v1:
docs/manual-evidence-prefill-v1.md - Manual blocker evidence status runner v1:
docs/manual-blocker-evidence-status-runner-v1.md - Manual evidence validator v1:
docs/manual-evidence-validator-v1.md - Manual evidence archive export v1:
docs/manual-evidence-archive-export-v1.md - Manual closure comment renderer v1:
docs/manual-closure-comment-renderer-v1.md - Manual closure comment poster v1:
docs/manual-closure-comment-poster-v1.md - Issues #680 #681 closure evidence v1:
docs/issues-680-681-closure-evidence-v1.md - Widget state CTA taxonomy v1:
docs/widget-state-cta-taxonomy-v1.md - Widget Lock Screen accessory family plan v1:
docs/widget-lock-screen-accessory-family-plan-v1.md - Watch Smart Stack glance plan v1:
docs/watch-smart-stack-glance-plan-v1.md - Walk widget action state model v1:
docs/walk-widget-action-state-model-v1.md - Walk widget action convergence v1:
docs/walk-widget-action-convergence-v1.md - Walk Live Activity copy/timer policy v1:
docs/walk-live-activity-copy-timer-v1.md - Walk Control Widget timer refresh v1:
docs/walk-control-widget-timer-refresh-v1.md - Walk Control Widget family layout v1:
docs/walk-control-widget-family-layout-v1.md - Home Widget family layout budget v1:
docs/home-widget-family-layout-budget-v1.md - Widget action bridge observability v1:
docs/widget-action-bridge-observability-v1.md - Walk Live Activity priority v1:
docs/walk-live-activity-priority-v1.md - Watch action feedback UX v1:
docs/watch-action-feedback-ux-v1.md - Watch selected pet context UX v1:
docs/watch-selected-pet-context-ux-v1.md - Watch offline queue sync UX v1:
docs/watch-offline-queue-sync-ux-v1.md - Watch sync recovery UX v1:
docs/watch-sync-recovery-ux-v1.md - Watch walk end summary UX v1:
docs/watch-walk-end-summary-ux-v1.md - Watch 메인 overflow scroll UX v1:
docs/watch-main-scroll-overflow-ux-v1.md - Watch control surface density v1:
docs/watch-control-surface-density-v1.md - Issue #698 closure evidence v1:
docs/issue-698-closure-evidence-v1.md - Issue #738 closure evidence v1:
docs/issue-738-closure-evidence-v1.md - Watch AppIcon asset fix v1:
docs/watch-appicon-asset-fix-v1.md - Walk widget pet context policy v1:
docs/walk-widget-pet-context-policy-v1.md - Territory widget goal deeplink v1:
docs/territory-widget-goal-deeplink-v1.md - Territory widget next goal summary v1:
docs/territory-widget-next-goal-summary-v1.md - Quest/Rival widget next action recovery v1:
docs/quest-rival-widget-next-action-recovery-v1.md - 라이벌 프라이버시 하드 가드 v1:
docs/rival-privacy-hard-guard-v1.md - 라이벌 프라이버시 정책 Stage1 v1:
docs/rival-privacy-policy-stage1-v1.md - 설정 프라이버시 센터 IA v1:
docs/settings-privacy-center-ia-v1.md - 프라이버시 제어/권한 복구/보존 삭제 플로우 v1:
docs/privacy-control-recovery-retention-flow-v1.md - 프라이버시 제어 server-first canonical status v1:
docs/privacy-control-server-canonical-status-v1.md - 프라이버시 삭제 요청 접수/추적 흐름 v1:
docs/privacy-deletion-request-intake-tracking-v1.md - 라이벌 공정 리그 매칭 v1:
docs/rival-fair-league-v1.md - 라이벌 Stage2 백엔드(리더보드/권리경로) v1:
docs/rival-stage2-backend-v1.md - 라이벌 Stage3 클라이언트 UX v1:
docs/rival-stage3-client-ux-v1.md - 시즌 안티 농사 규칙 v1:
docs/season-anti-farming-v1.md - 시즌 복귀 캐치업 버프 v1:
docs/season-comeback-catchup-buff-v1.md - 시즌 주간 정책 Stage1 v1:
docs/season-weekly-policy-stage1-v1.md - 시즌 집계/정산 파이프라인 Stage2 v1:
docs/season-stage2-pipeline-v1.md - 시즌 canonical server state v1:
docs/season-canonical-server-state-v1.md - 실내 미션 canonical server state v1:
docs/indoor-mission-canonical-server-state-v1.md - 시즌 첫 진입 설명/도움말 레이어 v1:
docs/map-season-onboarding-help-layer-v1.md - 체감 날씨 피드백 루프 v1:
docs/weather-feedback-loop-v1.md - 날씨 리스크 모델/Provider 정책 v1:
docs/weather-risk-provider-policy-v1.md - 날씨 snapshot/provider 확장 v1:
docs/weather-snapshot-provider-v1.md - 홈 날씨 반려견 가이드 시트 v1:
docs/home-weather-pet-guidance-sheet-v1.md - 날씨 canonical server state v1:
docs/weather-canonical-server-state-v1.md - 산책 기본 루프 정보 위계 v1:
docs/walk-primary-loop-information-hierarchy-v1.md - 이슈 #610 #611 #612 클로저 증적 스냅샷 v1:
docs/issues-610-611-612-closure-evidence-v1.md - 이슈 #618 #619 #622 클로저 증적 스냅샷 v1:
docs/issues-618-619-622-closure-evidence-v1.md - 산책 가치 설명/저장 후 연결 흐름 v1:
docs/walk-value-flow-onboarding-v1.md - 산책 결과 설명 공용 DTO v1:
docs/walk-result-report-shared-dto-v1.md - 산책 결과 설명 카드 정보구조 v1:
docs/walk-result-report-card-information-architecture-v1.md - 산책 결과 설명 리포트 analytics 계측 v1:
docs/walk-result-report-analytics-instrumentation-v1.md - 첫 산책 온보딩 Step1 이해 구조 v1:
docs/first-walk-onboarding-step1-understanding-v1.md - 첫 산책 온보딩 Step2 기록/공유 기본값 v1:
docs/first-walk-onboarding-step2-recording-sharing-v1.md - 홈 미션 정의/등장 이유/완료 방식 도움말 레이어 v1:
docs/home-quest-help-layer-v1.md - 홈 미션 자동 기록/직접 체크 구분 가이드 v1:
docs/home-quest-tracking-mode-guideline-v1.md - 홈 상단 safe area 계약 v1:
docs/home-top-safearea-contract-v1.md - 비지도 탭 루트 top inset 계약 v1:
docs/non-map-tab-root-top-inset-contract-v1.md - 비지도 커스텀 헤더 safe area 계약 v1:
docs/non-map-custom-header-safearea-contract-v1.md - TabBar card surface / viewport density v1:
docs/tabbar-card-surface-viewport-density-v1.md - 산책 기록 상단 safe area 계약 v1:
docs/walklist-top-safearea-contract-v1.md - 라이벌 상단 safe area 계약 v1:
docs/rival-top-safearea-contract-v1.md - 홈 refresh 중복 제거 umbrella v1:
docs/home-refresh-dedup-lightweight-v1.md - 맵 파생 계산 경량화 umbrella v1:
docs/map-derived-calculation-lightweight-v1.md - 이슈 #465 #467 클로저 증적 스냅샷 v1:
docs/issues-465-467-closure-evidence-v1.md - 맵 하단 컨트롤러 anchored density v1:
docs/map-bottom-controller-anchored-density-v1.md - 맵 add-point / walking deck 분리 계약 v1:
docs/map-add-point-walking-deck-separation-v1.md - 맵 상단 slim HUD safe area 계약 v1:
docs/map-top-slim-hud-safearea-v1.md - 맵 HUD disclosure 정책 v1:
docs/map-hud-disclosure-policy-v1.md - 맵 시작 설명 카드 compact v1:
docs/map-start-meaning-card-compact-v1.md - 맵 시즌 점령 지도 시각화 v1:
docs/map-season-tile-occupation-visualization-v1.md - Issue #690 closure evidence v1:
docs/issue-690-closure-evidence-v1.md - 맵 시즌 타일 상세 패널 v1:
docs/map-season-tile-detail-panel-v1.md - 맵 heatmap trigger gating v1:
docs/map-heatmap-trigger-gating-v1.md - 맵 route/mark snapshot cache v1:
docs/map-walk-point-snapshot-cache-v1.md - 맵 hotspot cluster trigger gating v1:
docs/map-hotspot-cluster-trigger-gating-v1.md - 맵 motion ticker layer split v1:
docs/map-motion-ticker-layer-split-v1.md - 홈 refresh entrypoint 정리 v1:
docs/home-refresh-entrypoint-v1.md - 홈 미션 pet context snapshot v1:
docs/home-mission-pet-context-snapshot-v1.md - 날씨 치환/스트릭 보호 서버 엔진 v1:
docs/weather-replacement-shield-engine-v1.md - 날씨 연동 UX/fallback/접근성 v1:
docs/weather-ux-fallback-accessibility-v1.md - 퀘스트 Stage1 템플릿/난이도 정책 v1:
docs/quest-stage1-template-difficulty-policy-v1.md - 퀘스트 표면 정책(홈/지도/위젯 경계) v1:
docs/quest-surface-policy-v1.md - 지도 퀘스트 피드백 HUD 정책 v1:
docs/map-quest-feedback-hud-v1.md - 지도 퀘스트 HUD 최소 정보셋 v1:
docs/map-quest-hud-minimum-info-set-v1.md - 지도 상단 overlay 우선순위 매트릭스 v1:
docs/map-quest-overlay-priority-matrix-v1.md - 퀘스트 Stage2 진행/클레임 백엔드 엔진 v1:
docs/quest-stage2-progress-claim-engine-v1.md - 퀘스트 실패 완충(자동 연장 슬롯) v1:
docs/quest-failure-buffer-v1.md - 퀘스트 Stage3 UX/리마인드 v1:
docs/quest-stage3-ux-reminder-v1.md - 홈 퀘스트 리마인드 당일 산책 억제 v1:
docs/home-quest-reminder-same-day-suppression-v1.md - 반려견 맞춤 난이도/쉬운 날 모드 v1:
docs/pet-adaptive-quest-difficulty-v1.md - Feature Flag/롤아웃 모니터링 명세 v1:
docs/feature-flag-rollout-monitoring-v1.md - ViewModel 현대화 리팩토링 명세 v1:
docs/viewmodel-modernization-v1.md - CoreData 반환 계약 정리 v1:
docs/coredata-return-contract-v1.md - Swift 안정화(강제 언래핑/타이머 수명) v1:
docs/swift-stability-hardening-v1.md - 프로젝트 설정/의존성 안정화 v1:
docs/project-settings-dependency-stability-v1.md - Supabase 마이그레이션/운영 검증 v1:
docs/supabase-migration.md - Supabase integration smoke matrix v1:
docs/supabase-integration-smoke-matrix-v1.md - Member Supabase HTTP full sweep v1:
docs/member-supabase-http-full-sweep-v1.md - Member Supabase HTTP 5xx zero-budget gate v1:
docs/member-supabase-http-5xx-zero-budget-gate-v1.md - Backend geo test seed / fixture lifecycle v1:
docs/backend-geo-test-fixture-lifecycle-v1.md - Backend 계약 버저닝 정책 v1:
docs/backend-contract-versioning-policy-v1.md - Backend 고위험 계약 매트릭스 v1:
docs/backend-high-risk-contract-matrix-v1.md - Backend request correlation/idempotency 정책 v1:
docs/backend-request-correlation-idempotency-policy-v1.md - Backend migration drift / RPC CI 체크 v1:
docs/backend-migration-drift-rpc-ci-check-v1.md - Backend scheduler 운영 기준 v1:
docs/backend-scheduler-ops-standard-v1.md - Backend realtime/moderation retention policy v1:
docs/backend-realtime-moderation-retention-policy-v1.md - Backend realtime retention cleanup rollout v1:
docs/backend-realtime-retention-cleanup-rollout-v1.md - Widget summary RPC 공통 응답 모델 v1:
docs/widget-summary-rpc-common-response-model-v1.md - TabBar SF Symbol fallback policy v1:
docs/tabbar-sf-symbol-fallback-policy-v1.md - WalkList design refresh v1:
docs/walklist-design-refresh-v1.md - WalkList hub density compact v1:
docs/walklist-hub-density-compact-v1.md - WalkList metric tile density v1:
docs/walklist-metric-tile-density-v1.md - UI overlap / ellipsis / small screen policy v1:
docs/ui-overlap-ellipsis-small-screen-policy-v1.md - WalkList month calendar hub v1:
docs/walklist-month-calendar-hub-v1.md - WalkList calendar weekend/holiday semantic v1:
docs/walklist-calendar-weekend-holiday-semantic-v1.md - WalkList detail design refresh v1:
docs/walklist-detail-design-refresh-v1.md - Walk detail back affordance v1:
docs/walk-detail-back-affordance-v1.md - Walk detail share system sheet v1:
docs/walk-detail-share-system-sheet-v1.md - Walk record tab label v1:
docs/walk-record-tab-label-v1.md - UX copy guideline v1:
docs/ux-copy-guideline-v1.md - Auth mail resend state machine v1:
docs/auth-mail-resend-state-machine-v1.md - Auth CAPTCHA insertion & fallback UX v1:
docs/auth-captcha-insertion-fallback-ux-v1.md - Auth abuse guard policy v1:
docs/auth-abuse-guard-policy-v1.md - Auth mail cooldown / Retry-After UX v1:
docs/auth-mail-cooldown-retry-after-ux-v1.md - Auth session signal contract v1:
docs/auth-session-signal-contract-v1.md - Auth SMTP provider / DNS / secret checklist v1:
docs/auth-smtp-provider-selection-dns-secret-checklist-v1.md - Auth SMTP rollout evidence runbook v1:
docs/auth-smtp-rollout-evidence-runbook-v1.md - Auth SMTP rollout evidence template v1:
docs/auth-smtp-rollout-evidence-template-v1.md - Auth SMTP live-send validation matrix v1:
docs/auth-smtp-live-send-validation-matrix-v1.md - Auth SMTP closure checklist v1:
docs/auth-smtp-closure-checklist-v1.md - Auth SMTP closure comment template v1:
docs/auth-smtp-closure-comment-template-v1.md - Auth SMTP rollout readiness preflight v1:
docs/auth-smtp-rollout-readiness-preflight-v1.md - Auth service / 운영 mail 채널 분리 정책 v1:
docs/auth-service-mail-channel-separation-policy-v1.md - Auth mail observability / metric / alert / request key v1:
docs/auth-mail-observability-metric-alert-request-key-v1.md - Backend Edge auth policy v1:
docs/backend-edge-auth-policy-v1.md - Backend Edge auth mode inventory v1:
docs/backend-edge-auth-mode-inventory-v1.md - Backend upload-profile-image owner binding policy v1:
docs/backend-upload-profile-image-owner-binding-policy-v1.md - Backend Gemini API key canonicalization v1:
docs/backend-gemini-api-key-canonical-v1.md - Backend Edge secret inventory / rotation runbook v1:
docs/backend-edge-secret-inventory-rotation-runbook-v1.md - Backend Edge/RPC deployment matrix & post-deploy v1:
docs/backend-edge-rpc-deployment-matrix-post-deploy-v1.md - Backend legacy fallback / compat sunset plan v1:
docs/backend-legacy-fallback-compat-sunset-plan-v1.md - Backend Edge shared utility module guide v1:
docs/backend-edge-shared-utility-module-guide-v1.md - Backend deploy rollback / roll-forward runbook v1:
docs/backend-deploy-rollback-roll-forward-runbook-v1.md - Backend Edge observability 표준 v1:
docs/backend-edge-observability-standard-v1.md - Backend Edge error taxonomy v1:
docs/backend-edge-error-taxonomy-v1.md - Backend Edge incident runbook v1:
docs/backend-edge-incident-runbook-v1.md - Backend Edge observability adoption matrix v1:
docs/backend-edge-observability-adoption-matrix-v1.md - Backend Edge failure dashboard view v1:
docs/backend-edge-failure-dashboard-view-v1.md - 릴리즈 회귀 체크리스트 v1:
docs/release-regression-checklist-v1.md - PR fast smoke gate v1:
docs/pr-fast-smoke-gate-v1.md - PR fast smoke gate report template v1:
docs/pr-fast-smoke-gate-report-template-v1.md - Nightly full regression gate v1:
docs/nightly-full-regression-gate-v1.md - Release real-device evidence matrix v1:
docs/release-real-device-evidence-matrix-v1.md - 릴리즈 회귀 실행 리포트(2026-02-26):
docs/release-regression-report-2026-02-26.md - 에픽 #21 클로저 증적 스냅샷 v1:
docs/epic-21-closure-evidence-v1.md - 에픽 #123 클로저 증적 스냅샷 v1:
docs/epic-123-closure-evidence-v1.md - 에픽 #420 클로저 증적 스냅샷 v1:
docs/epic-420-closure-evidence-v1.md - 이슈 #566 클로저 증적 스냅샷 v1:
docs/issue-566-closure-evidence-v1.md - 이슈 #533 클로저 증적 스냅샷 v1:
docs/issue-533-closure-evidence-v1.md - 이슈 #532 클로저 증적 스냅샷 v1:
docs/issue-532-closure-evidence-v1.md - 이슈 #530 클로저 증적 스냅샷 v1:
docs/issue-530-closure-evidence-v1.md - 이슈 #529 클로저 증적 스냅샷 v1:
docs/issue-529-closure-evidence-v1.md - 이슈 #522 클로저 증적 스냅샷 v1:
docs/issue-522-closure-evidence-v1.md - 이슈 #520 클로저 증적 스냅샷 v1:
docs/issue-520-closure-evidence-v1.md - 이슈 #506 클로저 증적 스냅샷 v1:
docs/issue-506-closure-evidence-v1.md - 이슈 #503 클로저 증적 스냅샷 v1:
docs/issue-503-closure-evidence-v1.md - 이슈 #476 클로저 증적 스냅샷 v1:
docs/issue-476-closure-evidence-v1.md - 이슈 #458 클로저 증적 스냅샷 v1:
docs/issue-458-closure-evidence-v1.md - 게임 레이어 공통 관측/QA 기준 v1:
docs/game-layer-observability-qa-v1.md - 다중 반려견 산책 N:M 2차 설계 v2:
docs/multi-pet-session-nm-v2.md - 다견 1차 선택 반려견 UX v1:
docs/multi-dog-selection-ux-v1.md - 선택 반려견 컨텍스트 배지/빈 상태 UX v1:
docs/pet-context-badge-empty-state-v1.md - 산책 시작/종료 UX 단순화 v1:
docs/walk-start-stop-ux-v1.md - 영역 포인트 자동 기록 모드 v1:
docs/walk-point-auto-record-v1.md - 산책 세션 자동 복구/자동 종료 정책 v1:
docs/walk-session-recovery-auto-end-v1.md - 산책 런타임 예외 방어 가드레일 v1:
docs/walk-runtime-guardrails-v1.md - 산책 저장/동기화 정합성 아웃박스 v1:
docs/walk-sync-consistency-outbox-v1.md - Sync-walk session stage 오류 분류 정책 v1:
docs/sync-walk-session-stage-error-policy-v1.md - Cycle #80 결과 보고서(2026-02-26):
docs/cycle-80-sync-consistency-report-2026-02-26.md - 예외처리 장애주입 매트릭스 v1:
docs/fault-injection-matrix-v1.md - 예외처리 장애주입 런북 v1:
docs/fault-injection-runbook-v1.md - 예외처리 결과 템플릿 v1:
docs/fault-injection-result-template-v1.md - 시즌 인터랙션 모션팩 v1:
docs/season-motion-pack-v1.md - Cycle #81 결과 보고서(2026-02-26):
docs/cycle-81-fault-injection-report-2026-02-26.md - Cycle #78 결과 보고서(2026-02-26):
docs/cycle-78-auto-end-policy-report-2026-02-26.md - Cycle #148 결과 보고서(2026-02-27):
docs/cycle-148-quest-failure-buffer-report-2026-02-27.md - Cycle #170 결과 보고서(2026-03-01):
docs/cycle-170-quest-stage3-ux-reminder-report-2026-03-01.md - Cycle #127 결과 보고서(2026-03-01):
docs/cycle-127-quest-stage1-policy-report-2026-03-01.md - Cycle #205 결과 보고서(2026-03-03):
docs/cycle-205-quest-stage2-engine-report-2026-03-03.md - Cycle #206 결과 보고서(2026-03-03):
docs/cycle-206-game-layer-observability-qa-report-2026-03-03.md - Cycle #214 결과 보고서(2026-03-03):
docs/cycle-214-widget-epic-closure-report-2026-03-03.md - Cycle #218 결과 보고서(2026-03-03):
docs/cycle-218-hotspot-widget-privacy-report-2026-03-03.md - Cycle #232 결과 보고서(2026-03-03):
docs/cycle-232-map-camera-jump-fix-report-2026-03-03.md - Cycle #147 결과 보고서(2026-02-27):
docs/cycle-147-pet-adaptive-quest-report-2026-02-27.md - Cycle #145 결과 보고서(2026-02-27):
docs/cycle-145-season-catchup-buff-report-2026-02-27.md - Cycle #124 결과 보고서(2026-02-27):
docs/cycle-124-season-policy-report-2026-02-27.md - Cycle #135 결과 보고서(2026-02-27):
docs/cycle-135-weather-ux-fallback-report-2026-02-27.md - Cycle #133 결과 보고서(2026-02-27):
docs/cycle-133-weather-risk-policy-report-2026-02-27.md - Cycle #134 결과 보고서(2026-02-27):
docs/cycle-134-weather-stage2-engine-report-2026-02-27.md - Cycle #138 결과 보고서(2026-02-27):
docs/cycle-138-pet-context-badge-report-2026-02-27.md - Cycle #139 결과 보고서(2026-02-27):
docs/cycle-139-area-reference-db-ui-report-2026-02-27.md
- 전체 체크(iOS/watchOS build 포함):
bash scripts/ios_pr_check.sh - 문서/유닛만 빠르게 체크:
DOGAREA_SKIP_BUILD=1 bash scripts/ios_pr_check.sh - 위젯 액션 기능 회귀 UI:
bash scripts/run_widget_action_regression_ui_tests.sh - 위젯 layout fast smoke:
bash scripts/run_pr_fast_smoke_widget_layout_checks.sh - blocker evidence helper:
bash scripts/render_manual_evidence_pack.sh <widget|auth-smtp> --write - blocker evidence prefill:
bash scripts/prefill_manual_evidence_pack.sh <widget|auth-smtp> <path> - blocker evidence status runner:
bash scripts/manual_blocker_evidence_status.sh [widget|auth-smtp] [--write-missing] - blocker evidence validator:
bash scripts/validate_manual_evidence_pack.sh <widget|auth-smtp> <evidence-path> - blocker closure renderer:
bash scripts/render_closure_comment_from_evidence.sh <widget|auth-smtp> ... - blocker closure poster:
bash scripts/post_closure_comment_from_evidence.sh <widget|auth-smtp> --issue <number> ... [--post] - auth smtp readiness preflight:
bash scripts/auth_smtp_rollout_readiness_check.sh - widget blocker bundle poster:
bash scripts/post_closure_comment_from_evidence.sh widget --all-related .codex_tmp/widget-real-device-evidence --post - Backend drift / RPC contract 전용 체크:
bash scripts/backend_migration_drift_check.sh - Backend smoke entrypoint:
bash scripts/backend_pr_check.sh - Live Supabase smoke matrix:
DOGAREA_RUN_SUPABASE_SMOKE=1 DOGAREA_TEST_EMAIL=... DOGAREA_TEST_PASSWORD=... bash scripts/backend_pr_check.sh
산책하다 보면 강아지들이 영역 표시를 하는 것을 아실 수 있습니다.
그런데 이 영역을 시각적으로 보고 기록할 수 있으면 재미있지 않겠습니까?
그래서 간단한 토이 프로젝트의 의미로 프로젝트를 시작하게 되었습니다.
- Map > location의 배열을 가지고 영역 폴리곤을 만들어야 함!
- Mapkit 활용
- Location의 입력을 받아 버튼 눌렀을 때 annotation을 추가하고 완성된 annotatione들의 coordinate를 기반으로 폴리곤 제작
- 완성된 폴리곤을 토대로 image화 하여 저장, 사진 저장 기능 추가
- Data storage
- CoreData로 활용
- Polygon 데이터 저장 : 역대 산책한 영역들을 저장
- 유저 정보 저장 : 유저의 identity와 강아지 관련 정보 저장
- CoreData로 활용
- User에 대한 고민 : 프로필 이미지를 캐릭터화 하고 싶다..
- OpenAI로 image generate하기 < 바라는 이미지로는 안나옴,, 그냥 이미지 입력 받아야 할듯
- Apple 로그인을 통해 User 정보 확보하기
- 처음 사용자의 경우 프로필을 만드는 기능을 추가 > 완료
- 필요한 정보는 Identifiable한 랜덤 정보면 된다.
- 이메일, 이름으로 결정
- 사용자의 프로필 이미지의 필요 여부를 결정해야 한다.
- 없을 경우 empty image넣어주기로 결정
- 강아지의 정보를 필수값으로 저장해야 한다. 이름은 필수 이미지는 옵셔널
- 입력받은 UIImage를 URL화 하기
- Firebase storage를 활용해서 해결하였다.
- 메인 화면
- 더보기 눌렀을 때 뷰
- 막 산책을 마치고 다음 목표를 넘어섰을 때 Event를 추가하고 싶습니다.
- 메인 뷰입니다. 앱을 켜면 바로 등장합니다.
- 산책을 시작하면 실시간으로 산책 시간과 영역 넓이를 계산하여 보여줍니다.
- 영역 추가 버튼을 통해 영역을 추가할 수 있고, 추가된 영역을 클릭하여 삭제할 수 있습니다.
- 산책이 완료되면 영역의 폴리곤을 오버레이한 사진을 코어데이터에 저장하고 관련 정보를 보여줍니다.
- 공유하기 기능은 아직 미구현입니다.
- 저장하기 버튼을 통해 완성된 이미지를 사진첩에 저장할 수 있습니다.
- 확인 버튼을 통해 뷰를 내릴 수 있습니다.
유저 정보와 설정값, 회원 탈퇴 등의 기능이 필요









