Skip to content

chore: 설정 기준선에 비공개 취약점 보고를 더한다 - #394

Merged
minjunkim-dev merged 1 commit into
mainfrom
chore/private-vulnerability-reporting
Nov 8, 2026
Merged

minjunkim-dev merged 1 commit into
mainfrom
chore/private-vulnerability-reporting

Conversation

@minjunkim-dev

@minjunkim-dev minjunkim-dev commented Nov 8, 2026 •

Copy link
Copy Markdown
Owner

Author: Claude Code / Opus 5.5

Summary

repo-baseline c5e994e(#89)부터 GitHub 설정 기준선에 private_vulnerability_reporting이 필수 항목이 됐다. 이 저장소의 .github/repository-settings.json에는 이 키가 없어서, 최신 repo-baseline의 설정 검사가 쓰기 전에 멈춘다.

  • 전: expected에 private_vulnerability_reporting 없음
  • 후: immutable_releases 다음에 "private_vulnerability_reporting": {"enabled": true}를 넣었다. 템플릿과 같은 자리다.

이 저장소는 공개 저장소이고 이 기능은 이미 켜져 있다. 그래서 apply를 실행해도 바뀌는 설정은 없다.

Evidence

  • gh api repos/minjunkim-dev/mobile-runtime/private-vulnerability-reporting → {"enabled":true}
  • gh repo view → visibility: PUBLIC
  • 바꾼 파일을 json.loads로 파싱했고, expected의 키를 repo-baseline main의 templates/github/repository-settings.json과 비교했다. 빠진 키는 없다. 템플릿에 없는 키는 codeql_workflow 하나인데, 검사기가 허용하는 선택 키다.
  • 확인하지 않은 것: apply_github_settings.py의 계획 출력. 이 단계는 소유자가 자기 기기에서 직접 실행한다.

Merge Danger

Door: 되돌리기 쉬움
영향 범위: 설정 검사에서 기대하는 값 하나. GitHub 설정은 바꾸지 않는다.
되돌리는 법: 이 PR을 revert한다.
신뢰 경계: .github/repository-settings.json

Review

리뷰어(구현과 다른 컨텍스트, 도구/모델): 없음. JSON 세 줄을 템플릿 그대로 옮겨 넣은 것이다.
고친 것: 없음
남은 지적: 없음

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Security
    • Private vulnerability reporting is now enabled for the repository. Security issues can be submitted through a private channel, keeping reports out of public view while they are being handled. This adds a discreet reporting option alongside the repository’s existing public activity. No other user-facing changes are included in this update.

repo-baseline c5e994e(#89)에서 private_vulnerability_reporting이 필수 항목이 됐다.
공개 저장소이고 이미 켜져 있어서 기대값만 맞춘다.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 8, 2026 •

Copy link
Copy Markdown

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

The repository settings now enable private vulnerability reporting.

Changes: Repository Settings

Layer / File(s) Summary
Enable private vulnerability reporting
.github/repository-settings.json
The settings add private_vulnerability_reporting with enabled set to true.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Change: Other

Merge Risk: Minimal · up to f3c08

The change adds an enabled expected setting; applying it remains an owner-run operation. No merge-blocking issue is established.

Security architecture risk: Low · up to f3c08

The change declares private vulnerability reporting enabled for one repository without granting new permissions. No introduced security defect was established, but live state and safe application of this setting have not been independently verified.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The declared change targets the private vulnerability reporting setting of one named repository. Any live effect remains conditional on a consumer applying that declaration.

Trust Boundaries and Controls

  • observed — The documented boundary keeps privileged settings application owner-mediated. The baseline continues to specify read-only default workflow permissions and prohibits workflow-token pull request approval; the setup procedure says not to add administrative authority to that token.

Resilience and Maintainability Implications

  • observed — The documented applicator reports post-write drift and request failures separately from successful audit outcomes. This describes a detection control, but does not establish atomicity, rollback, or recovery behavior for this setting.
Pre-merge checks: Passed 5

Check name Status Explanation
Title check Passed 제목은 PR의 주요 변경 사항을 설명합니다. 변경 내용은 .github/repository-settings.json의 expected 항목에 private_vulnerability_reporting 키를 추가하는 것이며, 제목 '설정 기준선에 비공개 취약점 보고를 더한다'는 이 변경과 직접 관련됩니다. 제목은 chore 접두사를 사용하고 한 문장으로 구성되…
Description check Passed 설명은 저장소 템플릿의 주요 섹션을 대부분 채웠습니다. Author 줄(Claude Code / Opus 5.5), Summary(변경 이유, 전후 비교), Evidence(실행한 gh api 및 gh repo view 명령과 결과, 확인하지 않은 범위), Merge Danger(Door, 영향 범위, 되돌리는 법, 신뢰 경계), Review 섹션이 모두 …
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

제목은 PR의 주요 변경 사항을 설명합니다. 변경 내용은 .github/repository-settings.json의 expected 항목에 private_vulnerability_reporting 키를 추가하는 것이며, 제목 '설정 기준선에 비공개 취약점 보고를 더한다'는 이 변경과 직접 관련됩니다. 제목은 chore 접두사를 사용하고 한 문장으로 구성되어 있으며 파일 목록이나 모호한 표현이 없습니다.

Full details: Description check

Explanation

설명은 저장소 템플릿의 주요 섹션을 대부분 채웠습니다. Author 줄(Claude Code / Opus 5.5), Summary(변경 이유, 전후 비교), Evidence(실행한 gh api 및 gh repo view 명령과 결과, 확인하지 않은 범위), Merge Danger(Door, 영향 범위, 되돌리는 법, 신뢰 경계), Review 섹션이 모두 있습니다. Review 섹션에서 리뷰어 항목이 '없음'으로 기재되어 있고, 변경이 JSON 세 줄의 단순 추가라 이 선택은 합리적입니다. 누락이나 비어 있는 핵심 항목은 확인되지 않았습니다.

Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

Finishing Touches

Generate unit tests (beta)

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Recent review info

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: fd80b122-9407-4ba2-a411-8729e18e075d
Commits

Reviewing files that changed from the base of the PR and between adeb73c and f3c0864.

Files selected for processing: 1

  • .github/repository-settings.json

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 3 remain after this review.

@minjunkim-dev
minjunkim-dev merged commit f28b60b into main Nov 8, 2026
14 of 16 checks passed
@minjunkim-dev
minjunkim-dev deleted the chore/private-vulnerability-reporting branch November 8, 2026 14:00
minjunkim-dev added a commit that referenced this pull request Nov 9, 2026
Author: Claude Code / claude-opus-5-5

## Summary
`CLAUDE.md`(`@AGENTS.md` 한 줄)를 지운다. Claude Code는
`CLAUDE.md`·`.claude/CLAUDE.md`·`CLAUDE.local.md`가 없으면 `AGENTS.md`를 프로젝트
지침으로 읽는다([Memory](https://code.claude.com/docs/en/memory), 확인일
2026-11-09). 이제 `AGENTS.md` 하나로 Claude Code·Codex·Cursor가 같은 지침을 읽는다.
repo-baseline이 코어에서 `CLAUDE.md`를 빼는 변경(minjunkim-dev/repo-baseline#94)에
맞춘다. `CLAUDE.md`를 설명하던 문장도 고쳤다.
완료 기준: `CLAUDE.md`가 없고, 남은 문서가 `CLAUDE.md`를 둔다고 말하지 않는다. check가 그대로
통과한다.

## Evidence
- check 명령(scripts/source-only unittest + test-release-input.py): 16개
OK, exit 0
- 바꾼 파일: `AGENTS.md`, `CLAUDE.md`, `docs/agents/development.md`
- Claude Code가 `AGENTS.md`만 있는 저장소에서 읽는지: repo-baseline #94 worktree(루트
`AGENTS.md`만 있음)에서 데스크톱 새 세션이 도구 없이 지침을 `AGENTS.md (project
instructions)`로 받은 것을 확인했다. 이 저장소에서 직접 시험하지는 않았다.
- 확인하지 않은 것: Claude 프로젝트의 클라우드 스레드.

## Merge Danger
Door: 되돌리기 쉬움. 문서와 지침 연결 파일만 바뀐다.
영향 범위: 개인 `CLAUDE.local.md`를 두면 `AGENTS.md`를 읽지 않는다(AGENTS.md에 적음).
되돌리는 법: 이 PR을 revert한다.
신뢰 경계: 없음

## Review
리뷰어(구현과 다른 컨텍스트, 도구/모델): Claude Code / claude-opus-5-5, 라운드 1
고친 것: P0 0, P1 1, P2 0. 문서 사실: `AGENTS.md:31` "하나라도 있으면 읽지 않는다"에 "기본
설정에서는"을 더함(Project instructions 설정으로 바꿀 수 있음,
code.claude.com/docs/en/memory). 커밋 d209ca4
남은 지적: 없음
확인한 것: check(`scripts/source-only` unittest + `test-release-input.py`)
16 tests OK, exit 0(수정 후). `gh pr checks` 전부 pass(CodeQL만 skipping). 브랜치
`docs/remove-claude-md`. 제목 규칙 문서는 없고 한국어 제목은 직전 커밋(#394)과 같다. 저장소 전체
grep(`CLAUDE.md`·`.claude/`·`@AGENTS`): 남은 의존 없음.
`.claude/settings.json`만 있고 `.cursor/`·`.codex/` 없음. AGENTS.md 47줄.
swift test는 문서만 바뀌어 돌리지 않음(CI macOS Swift build and tests pass).
제안(반영 안 함): `docs/agents/development.md:10`이 AGENTS.md:31의 로딩 사실을 다시 적고
`CLAUDE.md`만 든다. AGENTS.md를 가리키는 말로 줄일 수 있다.

🤖 Generated with [Claude Code](https://claude.com/claude-code)


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
<!-- coderabbit-ai-generated:v1 -->

## Summary by CodeRabbit

* **Documentation**
* Clarified that Claude Code reads the project’s shared guidance when no
separate Claude-specific instruction file exists, and may ignore it by
default when one does.
* Updated development guidance to prohibit creating separate
Claude-specific instruction files, shims, or symlinks.
* Removed the separate file that referred readers to the shared
guidance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
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