oh-my-customcode 1.1.89 → 1.1.91
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/dist/cli/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/templates/.claude/rules/MAY-optimization.md +2 -0
- package/templates/.claude/rules/MUST-sync-verification.md +2 -0
- package/templates/.claude/skills/agora/SKILL.md +3 -3
- package/templates/.claude/skills/agora/scripts/judge.sh +1 -1
- package/templates/.claude/skills/pipeline/workflows/auto-dev.yaml +40 -5
- package/templates/manifest.json +1 -1
- package/templates/workflows/auto-dev.yaml +40 -5
package/dist/cli/index.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -78,6 +78,8 @@ zsh는 미인용 `$var`를 단어분할하지 않습니다(#1683 #5) — 분할
|
|
|
78
78
|
|
|
79
79
|
계수/매칭 방법 확인(#1521): 카운트 대조 전 비교 대상의 계수 방법(glob vs `find`, 부분매칭, 확장자 필터, 머지커밋 diff 생략 등)을 먼저 확인합니다.
|
|
80
80
|
|
|
81
|
+
`git grep -E`(POSIX ERE)는 `\b`·`\d`·`\s`를 지원하지 않으며 오류 없이 0건을 반환할 수 있습니다(#1760, 플랫폼 의존 — macOS git 2.52.0에서 확인, GNU/glibc ERE는 확장으로 지원) — 이식 가능한 PCRE가 필요하면 `git grep -P` 또는 python을 사용합니다.
|
|
82
|
+
|
|
81
83
|
<!-- DETAIL: counting method check
|
|
82
84
|
> **계수/매칭 방법 확인 (#1521)**: 카운트를 대조하기 전에 **비교 대상이 무엇을 어떻게 세는지** 먼저 확인한다 — 같은 지표라도 계수 방법이 다르면 값이 달라진다. 대표 함정 4종: (a) glob(`ls *.md`, 최상위만) vs 재귀 `find`(하위 디렉토리 포함), (b) 부분 문자열 grep(`grep "sdd"`가 `sdd-dev`까지 매칭), (c) 확장자 필터(`--include='*.md'`가 `CLAUDE.md.en`을 미매칭), (d) **머지 커밋 diff 기본 생략** — `git show --name-only <머지커밋>`은 diff를 기본적으로 출력하지 않아 변경 파일 0개로 오독된다. 머지 커밋의 변경 파일을 세려면 `--first-parent`(1차 부모 대비) 또는 `-m`(각 부모별 diff)을 명시한다. 검증 스크립트와 대조할 때는 **스크립트의 실제 계수 로직을 읽고** 같은 방법으로 센다. 위 `ls | tail` 시계열 오판(#1417)과 동류로, 도구의 기본 동작을 확인하지 않은 채 결과를 해석해 오탐에 이르는 패턴이다. Origin: #1521 (2026-07-20 세션에서 3회 반복; 두 서브에이전트가 독립적으로 동일 오탐에 도달); (d)는 #1553 찐빠 #4 (2026-07-30 세션에서 머지 커밋 `--name-only` 0파일을 "변경 없음"으로 오독).
|
|
83
85
|
-->
|
|
@@ -503,6 +503,8 @@ Origin: #1584 #1 (v1.1.46 세션) — 이슈 생성(8/11~14)과 작업(8/15) 사
|
|
|
503
503
|
|
|
504
504
|
R017 게이트 통과 후 스코프가 확장되면(추가 파일 편집), 커밋 전 게이트를 **최종 상태에서 재실행**한다.
|
|
505
505
|
|
|
506
|
+
**경계 (#1760)**: 이 경계는 위 재실행 규칙을 취소하지 않고 같은 파일 내 리뷰 정정에 한해 좁힙니다. "리뷰 정정"은 이 게이트의 리뷰 위임(mgr-sauron R017, 적대적 리뷰)의 지적에 따라 게이트 대상 변경 집합에 이미 있는 파일만 바꾼 정정입니다. 그런 정정 후 결정론 검사(`bun run lint`, `bun run typecheck`, `bash .github/scripts/verify-template-sync.sh`, `bun .github/scripts/validate-docs.ts --programmatic-only`, 전체 `bun test`)를 최종 상태에서 재통과했다면 구조 재검증(mgr-sauron 재실행)을 생략할 수 있으며 생략 사실을 기록합니다. 이 생략은 게이트 판정이 PASS였던 경우에만 적용되며, FAIL 판정 후의 정정은 PASS가 나올 때까지 항상 게이트를 재실행합니다. #1688이 요구하는 리뷰 후 위키 재동기화가 만든 위키 페이지·매니페스트는 `verify-wiki-sync.sh`가 다루므로 그것만으로는 재실행 사유가 아닙니다. 그 외 새 파일이나 새 구조 표면이 생기면 게이트를 재실행합니다.
|
|
507
|
+
|
|
506
508
|
<!-- DETAIL: Post-Gate Scope-Expansion Re-Run intro, original wording
|
|
507
509
|
R017 게이트(mgr-sauron) 통과 선언 후 신규 결함 발견 등으로 스코프가 확장되면(추가 파일 편집), 커밋 전 게이트를 **최종 상태에서 재실행**한다. 게이트 통과 시점 이후의 변경은 형식적으로 미검증이므로, 확장분 미검증 커밋은 R017이 최종 산출물을 커버하지 못하게 만든다.
|
|
508
510
|
-->
|
|
@@ -21,9 +21,9 @@ argument-hint: "<topic> [--attach <path>] [--max-rounds <N>] [--auto]"
|
|
|
21
21
|
|
|
22
22
|
| 축 | 겹침 |
|
|
23
23
|
|----|------|
|
|
24
|
-
| 모델 ID | 없음 — 리뷰어는 `claude-opus-4-8`(`claude` CLI) / `omx` 기본 모델(`omx` CLI) / `gemini-3.1-pro-high`(`agy` CLI), 심판 슬롯은 1: `claude-opus-5`(`claude` CLI) / 2: `claude-opus-4-6-thinking`(`agy` CLI) / 3: `gpt-oss-120b-medium`(`agy` CLI) |
|
|
24
|
+
| 모델 ID | 없음 — 리뷰어는 `claude-opus-4-8`(`claude` CLI) / `omx` 기본 모델(`omx` CLI) / `gemini-3.1-pro-high`(`agy` CLI), 심판 슬롯은 1: `claude-opus-5-5`(`claude` CLI) / 2: `claude-opus-4-6-thinking`(`agy` CLI) / 3: `gpt-oss-120b-medium`(`agy` CLI) |
|
|
25
25
|
| CLI 바이너리 | **있음** — `claude` 바이너리는 `claude` 리뷰어와 심판 슬롯 1이, `agy` 바이너리는 `agy` 리뷰어와 심판 슬롯 2·3이 공유합니다 |
|
|
26
|
-
| 모델 계열 | **있음** — 심판 3슬롯 중 2슬롯(`claude-opus-5`, `claude-opus-4-6-thinking`)이 `claude` 리뷰어의 모델(`claude-opus-4-8`)과 같은 Claude 계열입니다. 이 2슬롯은 CLI로는 각각 `claude`와 `agy`이므로 CLI 축과 계열 축은 서로 다른 모양으로 겹칩니다 |
|
|
26
|
+
| 모델 계열 | **있음** — 심판 3슬롯 중 2슬롯(`claude-opus-5-5`, `claude-opus-4-6-thinking`)이 `claude` 리뷰어의 모델(`claude-opus-4-8`)과 같은 Claude 계열입니다. 이 2슬롯은 CLI로는 각각 `claude`와 `agy`이므로 CLI 축과 계열 축은 서로 다른 모양으로 겹칩니다 |
|
|
27
27
|
|
|
28
28
|
따라서 "리뷰-판정 간 교차 오염이 없다"고 말할 수 있는 범위는 **모델 ID 단위까지**입니다. 같은 계열 모델이 공유하는 사전 학습 편향은 이 분리로 제거되지 않습니다.
|
|
29
29
|
|
|
@@ -300,7 +300,7 @@ Consensus: MAJORITY Verdict: BUILD_WITH_CHANGES
|
|
|
300
300
|
| 2. 영어 일반 단어와 겹치는 모델 계열명 | `opus` `sonnet` `haiku` `flash` | **두 형태에서만** — (a) 버전 인접(`Opus 4.8`, `sonnet-5`, `flash 2.0`) (b) 비ASCII 문자 인접(`Sonnet 관점에서`). 맨 단어를 막으면 정상 리뷰 산문("magnum opus", "flash memory")에서 중단됩니다 |
|
|
301
301
|
| 3. 봉인 경로 형태 | `SEALED/` `/mapping/` `raw/round-` | 부분 문자열 |
|
|
302
302
|
|
|
303
|
-
실제로 이 세션에서 쓰이는 모델 ID는 전부 계층 1에 걸립니다 — `claude-opus-4-8`/`claude-opus-5`/`claude-opus-4-6-thinking`은 `claude`로, `gemini-3.1-pro-high`는 `gemini`로, `gpt-oss-120b-medium`은 `gpt`로, `omx:default`는 `omx`로 걸립니다.
|
|
303
|
+
실제로 이 세션에서 쓰이는 모델 ID는 전부 계층 1에 걸립니다 — `claude-opus-4-8`/`claude-opus-5-5`/`claude-opus-4-6-thinking`은 `claude`로, `gemini-3.1-pro-high`는 `gemini`로, `gpt-oss-120b-medium`은 `gpt`로, `omx:default`는 `omx`로 걸립니다.
|
|
304
304
|
|
|
305
305
|
**감수한 미탐(false negative)**: 버전도 한글 인접도 없이 영어 산문 안에 놓인 맨 모델 계열명 — 예: `Sonnet would argue` — 은 `sonnet-length prose` 와 정규식으로 구별할 수 없어 **통과합니다**. **감수한 오탐(false positive)**: `flash 메모리` 같은 한영 혼용 기술 용어는 계층 2-(b)에 걸려 라운드를 중단시킵니다. 오탐은 시끄럽고 복구 가능하지만 미탐은 조용히 익명성을 깨므로, 과차단 쪽을 택한 결과입니다.
|
|
306
306
|
|
|
@@ -59,7 +59,7 @@ unset _agora_env_name
|
|
|
59
59
|
# spec REQ-3 rotation roster: three slots, disjoint from the reviewer
|
|
60
60
|
# roster by model (reviewers.sh uses claude-opus-4-8 and gemini-3.1-pro-high).
|
|
61
61
|
JUDGE_ROTATION=(
|
|
62
|
-
'claude:claude-opus-5'
|
|
62
|
+
'claude:claude-opus-5-5'
|
|
63
63
|
'agy:claude-opus-4-6-thinking'
|
|
64
64
|
'agy:gpt-oss-120b-medium'
|
|
65
65
|
)
|
|
@@ -455,7 +455,12 @@ steps:
|
|
|
455
455
|
combined commit lands. DEADLINE: the combined commit MUST land — with the
|
|
456
456
|
`.husky/pre-commit` gate passing — before the release step begins; release step
|
|
457
457
|
1.a requires a clean working tree, so a deferred commit cannot cross into release.
|
|
458
|
-
|
|
458
|
+
LABEL TIMING: when this OPTION is used, the moment right after the combined commit
|
|
459
|
+
lands is the per-issue "success" point — run lifecycle item 6 (`gh issue edit <N>
|
|
460
|
+
--remove-label in-progress --add-label verify-ready`) there for every issue in the
|
|
461
|
+
commit, at that point rather than deferring it to ci-check, whose step 5 remains the
|
|
462
|
+
safety net (통합 커밋 직후에 이슈별 라벨 전환을 실행합니다, #1760 찐빠 #6).
|
|
463
|
+
6. On success: remove in-progress, add verify-ready (combined-commit OPTION: right after the combined commit lands, #1760 찐빠 #6)
|
|
459
464
|
7. On failure: remove in-progress, add needs-review, comment error summary
|
|
460
465
|
|
|
461
466
|
Rules:
|
|
@@ -488,11 +493,13 @@ steps:
|
|
|
488
493
|
criteria MUST include THREE deterministic checks, scoped to edited text files (md/yaml)
|
|
489
494
|
and restricted to added lines only (`git diff -U0 -- <edited md/yaml files> | grep
|
|
490
495
|
'^+'`): family check `grep -cE '(한다|된다|않는다|따른다|했다|있다|없다|넣는다|이다)[.。 "]'`
|
|
491
|
-
= 0, line-final auxiliary check `grep -E '다[.。"]?$' | grep -
|
|
496
|
+
= 0, line-final auxiliary check `grep -E '다[.。"]?$' | grep -vcE '니다[.。"]?$'` = 0
|
|
492
497
|
(the family list alone misses endings such as 따른다/했다/있다 and unpunctuated
|
|
493
498
|
line-final endings; the line-final check excludes 합쇼체 `-니다` endings so it does not
|
|
494
|
-
flag correct sentences —
|
|
495
|
-
|
|
499
|
+
flag correct sentences — the second grep MUST use `-E`: in BRE `?` is a literal
|
|
500
|
+
character, so the original `grep -vc` form flagged all 6 합쇼체 negatives (6/12 correct,
|
|
501
|
+
re-measured #1760); with `-vcE` the 6 반말/평서형 positive and 6 합쇼체 negative samples
|
|
502
|
+
give 12/12 correct) (#1711 찐빠 #3), AND line-final noun-ending check
|
|
496
503
|
`grep -E '(함|됨|필요)[.。"]?$'` = 0 (반말/명사 종결 endings such as 확인함·정정
|
|
497
504
|
필요·완료됨 fall entirely outside the 다-ending regexes above and were previously
|
|
498
505
|
undetectable — verified against 4 명사 종결 positive samples and 4 합쇼체 negative
|
|
@@ -586,11 +593,31 @@ steps:
|
|
|
586
593
|
턴 산술에 반영, R020 「maxTurns 절단 실증」 6항 확장, #1737 찐빠 #1).
|
|
587
594
|
- A single-file edit delegation (of any type, not only rule/skill/guide TEXT edits) whose
|
|
588
595
|
target file is ≥1,000 lines (measure `wc -l`) MUST either (i) split "본문 편집" (body edit) from "미러 복사·검증·
|
|
589
|
-
보고" (mirror copy, verification, and completion report) into separate delegations
|
|
596
|
+
보고" (mirror copy, verification, and completion report) into separate delegations (under (i) the body-edit delegation does no mirror copy; the second
|
|
597
|
+
delegation performs "미러 복사 → 검사·보고" in that order as its first step, per the
|
|
598
|
+
procedure-order bullet below), or
|
|
590
599
|
(ii) add a large-file fixed-cost term to the turn arithmetic above — a large-file edit
|
|
591
600
|
can exceed what the arithmetic assumes even when the item count stays small; read-only
|
|
592
601
|
review delegations are excluded (대형 파일 편집 위임 20턴 절단 재발 방지, R020
|
|
593
602
|
「maxTurns 절단 실증」, R009, #1749 찐빠 #1).
|
|
603
|
+
- Every text-edit delegation MUST add an inspection fixed cost to the turn arithmetic
|
|
604
|
+
above (합쇼체 checks and each exhaustive grep ≈ 1 turn each), whether or not the target
|
|
605
|
+
has mirrors. A text-edit delegation whose target has mirrors (templates copies, ko/en
|
|
606
|
+
pairs, or the 4-copy workflow set) MUST additionally fix the procedure order "본문 편집 →
|
|
607
|
+
즉시 미러 복사 → 검사·보고" in the delegation prompt, so a truncation can no longer leave
|
|
608
|
+
mirror drift behind; under option (i) of the ≥1,000-line bullet above, the body-edit
|
|
609
|
+
delegation does no mirror copy and the second delegation runs "미러 복사 → 검사·보고" in
|
|
610
|
+
that order as its first step, while under option (ii) (single delegation) the full order
|
|
611
|
+
applies (텍스트 편집 위임은 모두 턴 산술에 검사 고정비를 더하며, 미러가 있는 대상은
|
|
612
|
+
본문 편집 직후 미러를 복사하고 그다음에 검사와 보고를 진행합니다 — 턴 산술이 편집
|
|
613
|
+
항목만 세고 검사·보고 준비 비용을 반영하지 않던 문제와 미러 복사가 절차 맨 끝에 있어
|
|
614
|
+
절단 시 미러 드리프트가 남던 문제 방지, R020 「maxTurns 절단 실증」, #1757 찐빠 #2).
|
|
615
|
+
- A delegation that adds rows to a table MUST include as a completion item a per-cell
|
|
616
|
+
source table for each new row (every cell mapped 1:1 to a source sentence); a cell
|
|
617
|
+
without a source is written "—" and never copied from an adjacent row; prose-only
|
|
618
|
+
edits are excluded (표 행 추가 위임의 완료 조건에 새 행의 모든 셀을 출처 문장과 1:1로
|
|
619
|
+
대응시킨 표를 넣으며, 근거가 없는 셀은 "—"로 둡니다 — 인접 행을 복사해 새 행을 만드는 과정에서
|
|
620
|
+
근거 없는 셀과 바뀐 주어가 유입되던 문제 방지, R023, R010 「출처 인용과 인접 문구 점검도 같은 규율」, #1757 찐빠 #3).
|
|
594
621
|
- Parity delegation prompts (e.g. a ko mirror tracking an en source) MUST require THREE
|
|
595
622
|
directions — additions, edits, AND deletions — to match the source, never additions
|
|
596
623
|
only; completion criteria MUST include a `grep -F` confirming zero rows/sentences are
|
|
@@ -661,6 +688,14 @@ steps:
|
|
|
661
688
|
resulting guide/rule text MUST carry that same command alongside the number — delegations
|
|
662
689
|
that produce no count sentence are excluded (계수 구간 정의 부재로 인한 수치 오류 방지,
|
|
663
690
|
R023 「리서치 위임의 결론 수치는 표에서 재계산해 병기」, R020, #1749 찐빠 #2).
|
|
691
|
+
- A `claude-code-release` delegation's quotation verification (`grep -F`) MUST target a
|
|
692
|
+
file cut to that version's CHANGELOG section only, never the whole CHANGELOG (example
|
|
693
|
+
cut, `<X.Y.Z>` is a placeholder: `awk -v v="<X.Y.Z>" '/^## /{p=($2==v)} p'
|
|
694
|
+
CHANGELOG.md > <section-file>`; an empty <section-file> means the version is absent and
|
|
695
|
+
the delegation MUST stop and report) (인용 검증 대상은 해당 버전 절만 잘라낸 파일로
|
|
696
|
+
지정합니다 — 원문에 있는지와 이 버전의 원문인지를 같은 검사로 취급하면 다른 버전
|
|
697
|
+
문장이 섞여도 통과하므로, #1757 찐빠 #4).
|
|
698
|
+
For a bundled multi-version note (R017 「묶음 버전 노트 위임서 — 문장별 (NNN) 태그와 합쇼체 예시」), cut one section file per version and verify each quote against its own version's file.
|
|
664
699
|
- Any delegation correcting a fact (the issue states an existing statement in a target file
|
|
665
700
|
is wrong) — not only `claude-code-release` CC-notes — MUST include, as a completion
|
|
666
701
|
criterion, an exhaustive `grep` across the target file(s) for the claim's key terms, not
|
package/templates/manifest.json
CHANGED
|
@@ -455,7 +455,12 @@ steps:
|
|
|
455
455
|
combined commit lands. DEADLINE: the combined commit MUST land — with the
|
|
456
456
|
`.husky/pre-commit` gate passing — before the release step begins; release step
|
|
457
457
|
1.a requires a clean working tree, so a deferred commit cannot cross into release.
|
|
458
|
-
|
|
458
|
+
LABEL TIMING: when this OPTION is used, the moment right after the combined commit
|
|
459
|
+
lands is the per-issue "success" point — run lifecycle item 6 (`gh issue edit <N>
|
|
460
|
+
--remove-label in-progress --add-label verify-ready`) there for every issue in the
|
|
461
|
+
commit, at that point rather than deferring it to ci-check, whose step 5 remains the
|
|
462
|
+
safety net (통합 커밋 직후에 이슈별 라벨 전환을 실행합니다, #1760 찐빠 #6).
|
|
463
|
+
6. On success: remove in-progress, add verify-ready (combined-commit OPTION: right after the combined commit lands, #1760 찐빠 #6)
|
|
459
464
|
7. On failure: remove in-progress, add needs-review, comment error summary
|
|
460
465
|
|
|
461
466
|
Rules:
|
|
@@ -488,11 +493,13 @@ steps:
|
|
|
488
493
|
criteria MUST include THREE deterministic checks, scoped to edited text files (md/yaml)
|
|
489
494
|
and restricted to added lines only (`git diff -U0 -- <edited md/yaml files> | grep
|
|
490
495
|
'^+'`): family check `grep -cE '(한다|된다|않는다|따른다|했다|있다|없다|넣는다|이다)[.。 "]'`
|
|
491
|
-
= 0, line-final auxiliary check `grep -E '다[.。"]?$' | grep -
|
|
496
|
+
= 0, line-final auxiliary check `grep -E '다[.。"]?$' | grep -vcE '니다[.。"]?$'` = 0
|
|
492
497
|
(the family list alone misses endings such as 따른다/했다/있다 and unpunctuated
|
|
493
498
|
line-final endings; the line-final check excludes 합쇼체 `-니다` endings so it does not
|
|
494
|
-
flag correct sentences —
|
|
495
|
-
|
|
499
|
+
flag correct sentences — the second grep MUST use `-E`: in BRE `?` is a literal
|
|
500
|
+
character, so the original `grep -vc` form flagged all 6 합쇼체 negatives (6/12 correct,
|
|
501
|
+
re-measured #1760); with `-vcE` the 6 반말/평서형 positive and 6 합쇼체 negative samples
|
|
502
|
+
give 12/12 correct) (#1711 찐빠 #3), AND line-final noun-ending check
|
|
496
503
|
`grep -E '(함|됨|필요)[.。"]?$'` = 0 (반말/명사 종결 endings such as 확인함·정정
|
|
497
504
|
필요·완료됨 fall entirely outside the 다-ending regexes above and were previously
|
|
498
505
|
undetectable — verified against 4 명사 종결 positive samples and 4 합쇼체 negative
|
|
@@ -586,11 +593,31 @@ steps:
|
|
|
586
593
|
턴 산술에 반영, R020 「maxTurns 절단 실증」 6항 확장, #1737 찐빠 #1).
|
|
587
594
|
- A single-file edit delegation (of any type, not only rule/skill/guide TEXT edits) whose
|
|
588
595
|
target file is ≥1,000 lines (measure `wc -l`) MUST either (i) split "본문 편집" (body edit) from "미러 복사·검증·
|
|
589
|
-
보고" (mirror copy, verification, and completion report) into separate delegations
|
|
596
|
+
보고" (mirror copy, verification, and completion report) into separate delegations (under (i) the body-edit delegation does no mirror copy; the second
|
|
597
|
+
delegation performs "미러 복사 → 검사·보고" in that order as its first step, per the
|
|
598
|
+
procedure-order bullet below), or
|
|
590
599
|
(ii) add a large-file fixed-cost term to the turn arithmetic above — a large-file edit
|
|
591
600
|
can exceed what the arithmetic assumes even when the item count stays small; read-only
|
|
592
601
|
review delegations are excluded (대형 파일 편집 위임 20턴 절단 재발 방지, R020
|
|
593
602
|
「maxTurns 절단 실증」, R009, #1749 찐빠 #1).
|
|
603
|
+
- Every text-edit delegation MUST add an inspection fixed cost to the turn arithmetic
|
|
604
|
+
above (합쇼체 checks and each exhaustive grep ≈ 1 turn each), whether or not the target
|
|
605
|
+
has mirrors. A text-edit delegation whose target has mirrors (templates copies, ko/en
|
|
606
|
+
pairs, or the 4-copy workflow set) MUST additionally fix the procedure order "본문 편집 →
|
|
607
|
+
즉시 미러 복사 → 검사·보고" in the delegation prompt, so a truncation can no longer leave
|
|
608
|
+
mirror drift behind; under option (i) of the ≥1,000-line bullet above, the body-edit
|
|
609
|
+
delegation does no mirror copy and the second delegation runs "미러 복사 → 검사·보고" in
|
|
610
|
+
that order as its first step, while under option (ii) (single delegation) the full order
|
|
611
|
+
applies (텍스트 편집 위임은 모두 턴 산술에 검사 고정비를 더하며, 미러가 있는 대상은
|
|
612
|
+
본문 편집 직후 미러를 복사하고 그다음에 검사와 보고를 진행합니다 — 턴 산술이 편집
|
|
613
|
+
항목만 세고 검사·보고 준비 비용을 반영하지 않던 문제와 미러 복사가 절차 맨 끝에 있어
|
|
614
|
+
절단 시 미러 드리프트가 남던 문제 방지, R020 「maxTurns 절단 실증」, #1757 찐빠 #2).
|
|
615
|
+
- A delegation that adds rows to a table MUST include as a completion item a per-cell
|
|
616
|
+
source table for each new row (every cell mapped 1:1 to a source sentence); a cell
|
|
617
|
+
without a source is written "—" and never copied from an adjacent row; prose-only
|
|
618
|
+
edits are excluded (표 행 추가 위임의 완료 조건에 새 행의 모든 셀을 출처 문장과 1:1로
|
|
619
|
+
대응시킨 표를 넣으며, 근거가 없는 셀은 "—"로 둡니다 — 인접 행을 복사해 새 행을 만드는 과정에서
|
|
620
|
+
근거 없는 셀과 바뀐 주어가 유입되던 문제 방지, R023, R010 「출처 인용과 인접 문구 점검도 같은 규율」, #1757 찐빠 #3).
|
|
594
621
|
- Parity delegation prompts (e.g. a ko mirror tracking an en source) MUST require THREE
|
|
595
622
|
directions — additions, edits, AND deletions — to match the source, never additions
|
|
596
623
|
only; completion criteria MUST include a `grep -F` confirming zero rows/sentences are
|
|
@@ -661,6 +688,14 @@ steps:
|
|
|
661
688
|
resulting guide/rule text MUST carry that same command alongside the number — delegations
|
|
662
689
|
that produce no count sentence are excluded (계수 구간 정의 부재로 인한 수치 오류 방지,
|
|
663
690
|
R023 「리서치 위임의 결론 수치는 표에서 재계산해 병기」, R020, #1749 찐빠 #2).
|
|
691
|
+
- A `claude-code-release` delegation's quotation verification (`grep -F`) MUST target a
|
|
692
|
+
file cut to that version's CHANGELOG section only, never the whole CHANGELOG (example
|
|
693
|
+
cut, `<X.Y.Z>` is a placeholder: `awk -v v="<X.Y.Z>" '/^## /{p=($2==v)} p'
|
|
694
|
+
CHANGELOG.md > <section-file>`; an empty <section-file> means the version is absent and
|
|
695
|
+
the delegation MUST stop and report) (인용 검증 대상은 해당 버전 절만 잘라낸 파일로
|
|
696
|
+
지정합니다 — 원문에 있는지와 이 버전의 원문인지를 같은 검사로 취급하면 다른 버전
|
|
697
|
+
문장이 섞여도 통과하므로, #1757 찐빠 #4).
|
|
698
|
+
For a bundled multi-version note (R017 「묶음 버전 노트 위임서 — 문장별 (NNN) 태그와 합쇼체 예시」), cut one section file per version and verify each quote against its own version's file.
|
|
664
699
|
- Any delegation correcting a fact (the issue states an existing statement in a target file
|
|
665
700
|
is wrong) — not only `claude-code-release` CC-notes — MUST include, as a completion
|
|
666
701
|
criterion, an exhaustive `grep` across the target file(s) for the claim's key terms, not
|