2026-09-05 · 목적 — 원우님이 손으로 재테스트하기 전에 앱이 스스로 AI 연결·권한·라이선스·그리드/작업 폴더·에디션·업데이트를 점검해 «지금 무엇이 안 되고 무엇을 눌러야 하는지»를 한 화면에 보여주는 패널을 만듭니다. 아래 5건이 그 화면의 생김새·자리·데이터 결정입니다. 컨펌 방법 — 카드마다 A/B를 눌러 고르시고(안 누르면 권고안 그대로 채택), 맨 아래 상자를 눌러(전체 선택) 복사해 대화창에 붙여 주세요. 복사가 안 되면 드래그로 복사하시거나 «전부 권고안대로»처럼 말로 알려주셔도 같은 무게로 처리합니다.
쉬운 말로 — 지금은 앱에 문제가 생기면 원우님이 하나씩 눌러 보며 찾아야 합니다. 이 패널은 건강검진표에 가깝습니다. 항목마다 초록(됨) · 노랑(되지만 알아둘 것) · 빨강(안 됨) 셋 중 하나로 찍고, 빨강에는 누를 버튼을 딱 하나 붙입니다. 판정을 못 하면 «모름»(회색)이라고 정직하게 말하고 «다시 확인» 버튼을 답니다. 점검 항목·문구는 이 보드의 스펙 문서(점검 항목표·§2 쉬운 말 표)에서 글자 그대로 가져왔습니다.
D149 진입 위치 — 어디서 «AI 점검»을 보는가
점검 결과를 어느 화면에서 보게 할지입니다. 5-2까지 «연결 카드»가 이미 설정 › 연결 탭에 있어, 여기 얹으면 «점검 → 고치기»가 같은 탭에서 끝납니다.
D149 설정 › 연결 탭 최상단 + 부팅 배너 + 상태바 pill인가, 별도 모달인가
A는 이미 있는 설정 › 연결 탭 맨 위에 «AI 점검» 섹션을 넣고, 부팅 때 빨강이 1건 이상이면 앱 상단에 띠를 띄웁니다. B는 설정에 두지 않고 상태바 버튼으로만 여는 전체 모달입니다.
A · 설정 › 연결 탭 최상단 + 부팅 배너 + 상태바 pill 권고
AI 점검: 안 되는 것 3건 — 보기보기
GRID.OSINTERNAL 3.1 3
연결AI그리드화면정보
AI 점검 지금 무엇이 안 되는지
지금 안 되는 것 3건·알아둘 것 2건
연동 Notion · Slack · Figma …
점검 섹션이 «연동»(현재 연결 탭 priority 10) 위에 priority 1로 들어갑니다. 안 되는 게 있으면 상단 띠와 우상단 pill이 먼저 말을 겁니다.
어설픔 방지 가드 — 배너는 빨강 1건 이상일 때만 뜨고 노랑만 있으면 뜨지 않습니다(경보 피로 방지). 배너 스타일은 기존 유예 띠 .gos-grace-strip와 같은 문법(전폭 띠·5px 점·우측 밑줄 액션)을 쓰되 색만 err로 바꿔, 두 띠가 같은 자리에서 같은 방식으로 읽히게 합니다. 유예 띠 자체는 손대지 않습니다.
실측 — 설정 탭 목록은 settings-internal.js 31행 { key:'connect', label:'연결' }, 연결 탭 현재 유일 섹션은 integrations(988행, priority 10). 띠 문법은 internal-theme.css 4507행 .gos-grace-strip, pill은 4353행 .set-pill 실측값.
B · 별도 전체 모달 (설정에는 없음)
GRID.OSINTERNAL 3.1 3
AI 점검닫기
지금 안 되는 것 3건·알아둘 것 2건
화면 기록화면을 보여줄 권한이 꺼져 있어요
화면을 크게 쓸 수 있지만, 고치러 갈 «연결 카드»가 설정 안에 있어 모달을 닫고 설정을 다시 여는 왕복이 생깁니다.
벤치마킹 근거 — macOS 시스템 설정의 «개인정보 보호 및 보안», GitHub Desktop·Docker Desktop의 진단 패널이 모두 «설정 안 고정 자리 + 문제 있을 때만 상단 띠» 조합입니다. 문제를 알리는 자리(띠)와 고치는 자리(설정 섹션)를 한 번의 클릭으로 잇는 게 공통 문법입니다.
18개 점검 항목을 한 화면에 어떻게 늘어놓을지입니다. 아래 «시안 4컷»에서 두 형식의 실제 화면을 나란히 보실 수 있습니다.
D150 6개 그룹 전체를 한 행씩 보여줄까요, 빨강만 큰 카드로 먼저 보여줄까요
A는 그룹(AI 연결/권한/라이선스/그리드·폴더/에디션·업데이트/개발·공유) 헤더 아래 «상태 점 + 항목명 + 한 줄 사유 + 오른쪽 버튼 1개»를 한 행씩 놓습니다. 초록 행은 사유 없이 «됨»만. B는 빨강만 먼저 큰 카드로 보여주고 나머지는 «전체 보기»로 접습니다.
A · 그룹 6개 · 한 행 = 점 + 항목 + 사유 + 버튼 1개 권고
권한
화면 기록화면을 보여줄 권한이 꺼져 있어요
손쉬운 사용됨
클라우드 경로iCloud 폴더라 파일 읽기가 느리거나 멈출 수 있어요
업데이트 채널모름 — 서버를 확인하지 못했습니다
전체가 한눈에 보이고, 초록이 많을수록 «다 되고 있다»가 그림으로 읽힙니다. 회색(모름)은 «모름»이라고 적고 «다시 확인» 버튼을 답니다.
어설픔 방지 가드 — 이모지 0건, 아이덴티티 SVG(원·체크·느낌표·물음표)만. 빨강 행의 버튼은 항상 1개입니다(둘 이상이면 무엇을 눌러야 할지 다시 헷갈립니다). 노랑 «안내만» 항목에는 버튼을 달지 않습니다.
앱이 업데이트돼서 macOS가 권한을 다시 물어봐요. 시스템 설정에서 GRID.OS를 끄고 다시 켜 주세요
전체 보기 (초록 13건 · 노랑 2건)
고쳐야 할 것만 크게 보이지만, «지금 다 되고 있다»를 확인하려면 매번 펼쳐야 합니다. 전체 상태를 훑는 용도로는 A보다 약합니다.
벤치마킹 근거 — Xcode의 «Signing & Capabilities» 진단, 1Password·Tailscale의 상태 점검 화면이 모두 «항목 전체를 한 행씩 + 문제 행만 액션» 형식입니다. 접힘형(B)은 항목이 40개를 넘길 때 유리한데, 여기는 18개라 한 화면에 들어갑니다.
근거 — 스펙 §3 D150, 스펙 §1 점검 항목표(18항목 · 3색 + 회색).
D151 키체인(자격증명 보관) 상태 — 신규 점검 API
배포마다 «키체인 암호 입력» 창이 떠서 원우님을 멈추게 한 일이 있었습니다(2026-09-04). 그 상태를 앱이 스스로 말해 주게 할지입니다.
D151 키체인 상태를 읽는 API를 이번에 만들까요
A는 GET /api/license/keychain-status를 새로 만들어 «안전 보관이 가능한지 · 마지막 봉인이 성공했는지 · 평문 폴백으로 떨어졌는지»만 돌려받습니다(값은 안 읽습니다). B는 이번엔 빼고 6단계 서명 뒤에 다시 봅니다.
A · GET /api/license/keychain-status 신설 권고
권한
키체인(자격증명 보관)로그인 정보를 안전하게 보관할 수 없어요. 앱을 처음 열 때 키체인 «항상 허용»을 눌러 주세요
키체인(자격증명 보관)됨
쉬운 말 문구는 스펙 항목표의 «키체인» 행 그대로입니다. 버튼은 «안내만» — 이건 앱이 대신 눌러 줄 수 없는 macOS 창이라 무엇을 눌러야 하는지만 알려 줍니다.
어설픔 방지 가드 — 응답에 토큰·비밀번호 값은 절대 담지 않습니다. 담는 것은 «가능/불가·마지막 성공 시각·평문 폴백 여부» 세 가지 상태뿐입니다. API가 실패해도 점검 패널은 그 행만 회색(모름)으로 두고 나머지는 그대로 그립니다.
B · 이번엔 제외 (6단계 서명 뒤 재검토)
권한
키체인(자격증명 보관)모름 — 이 항목은 아직 점검하지 않습니다
앱 서명이 정식으로 붙는 6단계에서 키체인 프롬프트 자체가 사라질 수 있으니 그때 보자는 안입니다. 다만 그때까지는 같은 증상이 또 나도 앱이 말을 못 합니다.
근거 — 스펙 §3 D151, 2026-09-04 «빌드 교체 후 키체인 프롬프트» 사고 기록.
D152 라이선스 «메모리만 잠김» 결함 수리 방식
파일상 라이선스는 멀쩡한데 앱 안에서만 잠겨 있던 적이 있습니다. 화면은 «정상»으로 보여서 원인을 알 수 없었습니다.
D152 메모리 잠금을 «화면에 드러내기»로 고칠까요, «파일로 합치기»로 고칠까요
A는 /api/license/status에 lockScope(파일 / 메모리만 / 없음)를 더해 메모리 잠금도 잠금으로 표시하고, «지금 다시 확인» 버튼이 확인을 1회 강제합니다. B는 메모리 잠금을 license-lock.json 파일로 적어 둘을 하나로 만듭니다.