commitgate 0.9.4 → 0.9.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/package.json +1 -1
- package/scripts/req/review-codex.ts +14 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
이 프로젝트는 [Semantic Versioning](https://semver.org/lang/ko/)을 따릅니다.
|
|
4
4
|
|
|
5
|
+
## 0.9.5
|
|
6
|
+
|
|
7
|
+
**리뷰 게이트 모델·reasoning effort를 review-call 로그에 기록** (REQ-2026-043). `req:review-codex`가 남기는 측정 로그(`workflow/.review-calls.jsonl`)의 각 행에 `review_model`·`review_reasoning_effort` 두 필드를 추가합니다. 값은 commitgate가 그 리뷰에 해소·전달한 값(`req.config.json`의 `reviewModel`/`reviewReasoningEffort`, 미지정 시 코어 기본 `gpt-5.6-terra`/`high`)이며, 두 값을 `null`로 두어 codex 전역 설정을 상속하는 경우 `null`로 기록해 **미핀 상태를 드러냅니다**. 이로써 "어떤 모델이 각 리뷰를 통과시켰는가"를 로그에서 감사·재현할 수 있습니다. 로그는 `.gitignore` 대상 측정 전용이라 커밋 산출물·승인 원장(`approvals.jsonl`)·게이트 판정에 영향이 없는 **순수 additive**이며, 기존 사용자는 무회귀입니다.
|
|
8
|
+
|
|
5
9
|
## 0.9.4
|
|
6
10
|
|
|
7
11
|
**README 랜딩 서사 보강 + 히어로 이미지** (문서 릴리스). 0.9.3의 랜딩 위에 제품 서사를 강화했습니다 — "코드는 한 AI가 만들고, 다른 AI가 다시 봅니다"(자기 검수의 맹점 → 교대 검수 동기), "사람은 결정에만 참여합니다"(직접 챙기던 일 ↔ CommitGate가 연결 표), 4단계 흐름, 그리고 워크플로를 나타내는 히어로 이미지(빌더 AI → 리뷰어 AI → 사람 확인 → 커밋 게이트)를 추가했습니다. 이미지는 **WebP(~70KB)**로 GitHub raw URL에서 서빙 — `files[]`·npm tarball·payload 축은 **무변경**입니다. 실행 코드·의존성 변경이 없어 기존 사용자는 무회귀입니다.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "commitgate",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.5",
|
|
4
4
|
"description": "CommitGate — Builder↔Reviewer(Claude↔Codex) fail-closed 커밋 게이트: 리뷰·승인·증거 없인 커밋을 통과시키지 않는 AI REQ 워크플로 kit (req:new/next/review-codex/doctor/commit)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -572,6 +572,13 @@ export interface ReviewCallLogRow {
|
|
|
572
572
|
observations_count: number
|
|
573
573
|
timestamp: string
|
|
574
574
|
policy_version: string
|
|
575
|
+
/**
|
|
576
|
+
* REQ-2026-043: commitgate가 **이 리뷰에 핀한** 모델·추론강도(감사·재현성). 값 원천은 해소된 config
|
|
577
|
+
* (`cfg.reviewModel`·`cfg.reviewReasoningEffort`) — codex `-c` override로 흘러가는 그 값(단일 배선, policy_version과 동형).
|
|
578
|
+
* `null`=미핀(`-c` 생략 → codex 전역 `~/.codex/config.toml` 상속). **codex가 실제 실행한 모델을 주장하지 않는다**(00 정직성 경계).
|
|
579
|
+
*/
|
|
580
|
+
review_model: string | null
|
|
581
|
+
review_reasoning_effort: string | null
|
|
575
582
|
}
|
|
576
583
|
|
|
577
584
|
/**
|
|
@@ -591,6 +598,8 @@ export function buildReviewCallLogRow(args: {
|
|
|
591
598
|
verdict: Verdict
|
|
592
599
|
timestamp: string
|
|
593
600
|
policyVersion: string
|
|
601
|
+
reviewModel: string | null
|
|
602
|
+
reviewReasoningEffort: string | null
|
|
594
603
|
}): ReviewCallLogRow {
|
|
595
604
|
return {
|
|
596
605
|
ticket_id: args.ticketId,
|
|
@@ -602,6 +611,8 @@ export function buildReviewCallLogRow(args: {
|
|
|
602
611
|
observations_count: args.verdict.observations?.length ?? 0,
|
|
603
612
|
timestamp: args.timestamp,
|
|
604
613
|
policy_version: args.policyVersion,
|
|
614
|
+
review_model: args.reviewModel,
|
|
615
|
+
review_reasoning_effort: args.reviewReasoningEffort,
|
|
605
616
|
}
|
|
606
617
|
}
|
|
607
618
|
|
|
@@ -2026,6 +2037,9 @@ function mainImpl(argv: string[], opts2?: { reviewer?: ReviewerAdapter }): void
|
|
|
2026
2037
|
verdict: result.verdict,
|
|
2027
2038
|
timestamp: approvedAt,
|
|
2028
2039
|
policyVersion: reviewPolicyVersion(effectivePersona), // REQ-2026-034 B-2b: 전송 persona와 동일(단일 배선).
|
|
2040
|
+
// REQ-2026-043: codex에 흘러간 값(1942-1943)과 동일 원천. null=미핀(전역 상속).
|
|
2041
|
+
reviewModel: cfg.reviewModel,
|
|
2042
|
+
reviewReasoningEffort: cfg.reviewReasoningEffort,
|
|
2029
2043
|
}),
|
|
2030
2044
|
)
|
|
2031
2045
|
|