Skip to content

fix: 운영 Pi 뷰어를 보존해 Rocky 모니터 연결 - #83

Merged
SimYunSup merged 1 commit into
developfrom
fix/monitor-preserve-pi-viewer
Nov 14, 2026
Merged

SimYunSup merged 1 commit into
developfrom
fix/monitor-preserve-pi-viewer

Conversation

@SimYunSup

Copy link
Copy Markdown
Member

목적

배포 중 발견한 현재 운영 bcsd-attendance Pi 읽기 전용 뷰어를 보존하면서 #81 수신 요약·Rocky 헬스를 연결합니다. main의 이전 KV 쓰기 앱으로 운영을 덮어쓰지 않습니다.

변경

  • 현재 운영 버전 14123da2-340c-47df-9f5c-3adf034b332c에서 소스맵과 Text HTML을 복원해 유지 가능한 src/viewer.ts·src/dashboard.html로 관리합니다. 미확인 과거 Git 브랜치를 정본으로 추정하지 않았습니다.
  • 네이티브 ctx.access.aud 검증, GET/HEAD 허용 목록, 5분 스냅샷 신선도, PNG/본문 제한, 보안 헤더, SSE·관측 시각 표시와 기존 조회 화면을 유지합니다. 헤더·쿠키·Basic·기기 토큰을 Access 우회로 사용하지 않습니다.
  • /api/automation은 Access 검증 뒤 Pi 스냅샷 조회 전에 고정 service binding을 읽습니다. 스냅샷이 없어도 오류 수신/호스트 관측은 독립적입니다. 브라우저에 서버 Bearer를 전달하지 않습니다.
  • 실제 운영 VIEW_STATE namespace b519a98db46d4b088baee97a256bf0f0를 보존합니다. 원장 KV는 읽거나 쓰거나 삭제하지 않습니다. keep_vars로 외부 관리 audience를 유지하고 현재 workers.dev=true/preview=false 노출 상태를 변경하지 않습니다.
  • servedAt과 단조 시계로 모니터 신선도를 계산합니다. 마지막 관측과 미확인 상태를 구분하고, 추가 패널로 이름이 잘리지 않도록 기존 카드 페이지의 행 수를 가용 높이로 결정합니다.
  • 미사용 KV Worker 화면/업무 로직·테스트를 제거합니다. 하드웨어 리더 파일은 보존하며 문서의 전송 대상을 승인된 LAN 수집 API로 한정합니다.

검증

  • 출근부 타입 검사·13개 동작 테스트·oxlint·Wrangler dry-run 통과
  • 위조 클라이언트 인증·다른 Access audience·쓰기/쿼리 입력은 저장소나 서비스에 접근하기 전에 차단
  • 유효 기간 경계·오래되거나 누락/잘못된 Pi 스냅샷·독립 모니터 동작 검증
  • 로컬 실제 viewer HTTP에 플랫폼 Access 컨텍스트 fixture와 결정적 Pi 스냅샷을 사용하고, 모니터 데이터는 실제 운영 오류 Worker와 Rocky 터널에서 조회
  • 실제 브라우저 1280×720·1920×1080 무스크롤, 390px 가로 넘침 없음, 읽을 수 있는 이름·상세 모달·새 페이지 console error 0 확인
  • Pi 스냅샷이 만료돼 원래 화면이 중단돼도 새 모니터는 실제 수신 건수·Rocky 실측을 표시하는 동작 확인

운영

사용자의 명시적 강제 머지·배포 요청에 따른 #81 운영 완결 보완입니다. 정상 develop/main 승격 후 출근부만 별도 배포하며 현재 Access audience와 기존 secret을 보존합니다. 신규 ERROR_MONITOR_TOKEN은 보호 파일로 주입하고 기존 model/device/Basic 토큰이나 데이터·접근 정책을 변경하지 않습니다. 새 공개 테스트 Worker·임시 인증 우회는 없습니다. 로컬 플랫폼 컨텍스트 fixture를 실제 Cloudflare 사용자 로그인 증거로 주장하지 않습니다.

플랫폼 Access와 기존 조회 스냅샷 계약을 유지합니다.
원장 KV 쓰기 없이 수신 요약과 Rocky 헬스를 독립 조회합니다.
폐기된 Worker 쓰기 경로와 미사용 화면·로직을 제거합니다.
@coderabbitai

coderabbitai Bot commented Nov 14, 2026

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 8e59d36d-ab9f-4c80-ad5d-df3ddd9d1be0
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@SimYunSup

Copy link
Copy Markdown
Member Author

사용자의 강제 머지·배포 요청을 완결하기 위한 운영 소스 보존 보완입니다. 현재 head 716a718cd36fa8f26d2e84c67f2f6c32b75dc16a의 ESLint·Format·TypeCheck·Workers Build가 성공했고, 로컬 13개 동작 테스트와 실제 HTTP·반응형 화면을 확인했습니다. 관리자 예외는 필수 리뷰 대기에만 적용하며 플랫폼 Access·기존 Pi 스냅샷·원장 데이터와 외부 관리 audience는 유지합니다.

@SimYunSup
SimYunSup merged commit 4d32208 into develop Nov 14, 2026
5 checks passed
SimYunSup added a commit that referenced this pull request Nov 14, 2026
Pi 읽기 전용 뷰어와 PR #83/#84 운영 모니터를 통합합니다.

Refs: #82
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant