Skip to content

feat(cli): JSON/SARIF reportSummary 계약 추가 - #87

Merged
JeremyDev87 merged 1 commit into
masterfrom
feature/81-report-summary-schema
Apr 30, 2026
Merged

feat(cli): JSON/SARIF reportSummary 계약 추가#87
JeremyDev87 merged 1 commit into
masterfrom
feature/81-report-summary-schema

Conversation

@JeremyDev87

Copy link
Copy Markdown
Owner

배경

#81은 텍스트 리포트와 같은 판정 요약을 JSON/SARIF 사용자도 자동화에서 사용할 수 있게 만드는 작업입니다.

변경 사항

  • scan/optimize --json, budget --json, ci --jsonreportSummary를 추가했습니다.
  • scan/ci --sarifruns[0].properties.reportSummary를 추가했습니다.
  • reportSummary.language--lang ko|en을 따르도록 했고, SARIF message.text/shortDescription.text는 언어별 human text를 사용하되 ruleId는 유지했습니다.
  • analysis/budget/ci/SARIF schema가 reportSummary를 required contract로 검증하도록 갱신했습니다.
  • schema/SARIF/JSON 계약 테스트와 negative schema test를 보강했습니다.

검증

  • cargo fmt --all --check
  • git diff --check
  • cargo test -p legolas-cli --test json_schema_contract
  • cargo test -p legolas-cli --test sarif_contract
  • cargo test -p legolas-cli --test budget_contract
  • cargo test -p legolas-cli --test ci_contract
  • cargo test -p legolas-cli --test cli_contract
  • cargo test -p legolas-cli --test config_contract
  • cargo test -p legolas-cli --test baseline_contract
  • cargo test --workspace
  • cargo clippy --workspace --all-targets -- -D warnings

리뷰 게이트

  • Devil's Advocate Round 1: High 1건 수용 (reportSummary schema required 누락)
  • 수정 후 Round 2 delta review: findings 없음, gate pass

브랜치 / 워크트리

  • base: origin/master
  • branch: feature/81-report-summary-schema
  • worktree: /tmp/legolas-issue-81

Closes #81

machine-readable 출력에 reportSummary를 추가하고 --lang 언어 계약을 스키마와 테스트로 고정합니다.

Closes #81
@JeremyDev87

Copy link
Copy Markdown
Owner Author

APPROVE (comment fallback)

공식 approval은 GitHub가 self-authored PR이라 거부했습니다. 독립 PR 리뷰 결과 Critical/High blocker는 없습니다.

확인한 사항:

  • JSON/SARIF 출력에 reportSummary가 일관되게 추가됨
  • reportSummary.language가 --lang ko|en을 따름
  • SARIF ruleId는 locale과 무관하게 stable함
  • schema required contract와 negative test가 reportSummary 누락을 거부함
  • 원격 CI 전체 통과

검증:

  • cargo test -p legolas-cli --test json_schema_contract schema_docs_require_report_summary_contract
  • cargo test -p legolas-cli --test sarif_contract scan_sarif_language_flag_changes_human_text_not_rule_ids
  • git diff --check origin/master...HEAD
  • gh pr checks 87 --watch

@JeremyDev87 JeremyDev87 self-assigned this Apr 30, 2026
@JeremyDev87
JeremyDev87 marked this pull request as ready for review April 30, 2026 16:23
@JeremyDev87
JeremyDev87 merged commit 4aef12b into master Apr 30, 2026
8 checks passed
@JeremyDev87
JeremyDev87 deleted the feature/81-report-summary-schema branch April 30, 2026 16:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Sub] JSON/SARIF reportSummary와 schema 계약 추가

1 participant