genetics-mcp 2.16.7 → 2.17.1
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/bin/aarch64-apple-darwin/gcell +0 -0
- package/bin/manifest.json +2 -2
- package/bin/x86_64-apple-darwin/gcell +0 -0
- package/genetics.mjs +120 -2
- package/package.json +1 -1
- package/skills/gazette-report/SKILL.md +14 -3
- package/skills/gazette-report/scripts/boundary.py +31 -2
- package/skills/gazette-report/scripts/tone.mjs +18 -2
- package/skills/gazette-report/scripts/tone.test.mjs +13 -0
- package/skills/genetics-report/SKILL.md +127 -38
- package/skills/genetics-report/assets/example/cases-briefing.json +5 -5
- package/skills/genetics-report/assets/example/report-briefing.json +583 -199
- package/skills/genetics-report/assets/example/report.json +14 -14
- package/skills/genetics-report/assets/figure.mjs +288 -0
- package/skills/genetics-report/assets/mockshot.mjs +44 -0
- package/skills/genetics-report/assets/shot.mjs +66 -0
- package/skills/genetics-report/references/content-pipeline.md +14 -5
- package/skills/genetics-report/references/lim-portal-format.md +207 -47
- package/skills/genetics-report/references/process.md +26 -9
- package/skills/genetics-report/references/readability.md +76 -0
- package/skills/genetics-report/references/reader-review.workflow.js +44 -0
- package/skills/genetics-report/references/visual-first.md +127 -0
- package/skills/gazette-report/scripts/package-lock.json +0 -24
- package/skills/genetics-report/assets/example//354/230/210/354/213/234-/353/263/264/352/263/240/354/204/234.html +0 -2258
|
@@ -11,7 +11,7 @@ description: |
|
|
|
11
11
|
- "검수 요청 문서 만들어줘" / "장애 사후 보고서 / 릴리스 노트를 고객용으로"
|
|
12
12
|
- "기술보고서/인수인계/온보딩 문서/포스트모템 만들어줘" (→ PART 구성으로 푼다)
|
|
13
13
|
- "조사한 걸 정리해서 할지 말지 정하게 해줘" / "R&D 브리핑 / 기술 도입 검토서 / 결정 요청서" (→ 결정한다 모드)
|
|
14
|
-
내용 설계(독자 정의 → 등급 → 고객 언어 치환 →
|
|
14
|
+
내용 설계(독자 정의 → 등급 → 고객 언어 치환 → 자리별 문체 전환)가 본체이고, 전달은 둘 중 하나입니다:
|
|
15
15
|
Lim MCP 발행(서버 렌더, 링크 공유) 또는 단일 HTML(같은 관보 서식·폰트 임베드).
|
|
16
16
|
서식은 **한국 정부간행물(관보) 문서 문법**입니다 — 표지·발행 이력·차례·활용법·요약·PART 간지·
|
|
17
17
|
두 단 본문(여백 주석)·부록·판권지로 서고, 인쇄하면 실제 A4 페이지가 나옵니다.
|
|
@@ -58,7 +58,8 @@ version: "4.0.0"
|
|
|
58
58
|
> 부록 · 판권지로 서고, 인쇄하면 실제 A4 페이지가 나온다.
|
|
59
59
|
>
|
|
60
60
|
> **가구만 채우면 반려된다.** 셋이 본체다 —
|
|
61
|
-
> ① `sections[].marg`(여백 주석 Why/Key Point/Advice) ② `parts`(PART 층위) ③
|
|
61
|
+
> ① `sections[].marg`(여백 주석 Why/Key Point/Advice) ② `parts`(PART 층위) ③ **자리별 톤**
|
|
62
|
+
> (기록 자리는 개조식, 요청 자리는 하십시오체 — 5·5a).
|
|
62
63
|
> 없어도 발행은 되지만 렌더러가 ⚠ 로 세므로 `dry_run` 경고를 반드시 읽는다.
|
|
63
64
|
>
|
|
64
65
|
> **비트맵은 두 자리에 실린다** — `logo`(표지 고객사 마크)와 `figure`(절 본문 도판).
|
|
@@ -70,14 +71,14 @@ version: "4.0.0"
|
|
|
70
71
|
> 자세한 것은 `references/lim-portal-format.md`. 조판 규칙 원전은 `gazette-report` 스킬.
|
|
71
72
|
|
|
72
73
|
**Lim 발행 규칙** (어겨도 서버가 거부하지만, 알고 시작할 것):
|
|
73
|
-
- **톤은
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
74
|
+
- **톤은 자리가 정한다 — 문서 전체가 아니다.** 기록 자리(우리·사물이 주어)는 개조식
|
|
75
|
+
`~함 / ~했음 / ~임`. **상대에게 말 거는 자리는 하십시오체**
|
|
76
|
+
`~하여 주시기 바랍니다 / ~부탁드립니다 / ~하겠습니다`. 자세한 것은 아래 5·5a.
|
|
77
|
+
경어체 `습니다|십시오|합니다|입니다|됩니다|주세요` 0건은 **기록 자리에만** 거는 기준이다.
|
|
78
|
+
- ⚠ **톤 게이트는 경고이지 거절이 아니다.** `lib/report_tone.php` 가 `dry_run` 경고로 셀 뿐
|
|
79
|
+
발행을 막지 않는다 — 실측(2026-09-11): 경어체 경고를 안은 `update_report` 2회 모두 발행 성공.
|
|
80
|
+
**요청 자리에서 나는 경어체 경고는 의도된 것이므로 고치지 않는다**(`references/visual-first.md` §8).
|
|
81
|
+
이 경고를 하드 규칙으로 오인해 종결을 비튼 것이 2026-09-02부터 **네 번 반복된 반려의 원인**이다.
|
|
81
82
|
- `tenant` 는 키가 가리키는 고객사와 일치해야 한다(오발행 방지 가드). 값은 소속처 slug 우선·이름 폴백 — 아래 :228 의 `slug` 는 **보고서** slug 라 다른 것이다.
|
|
82
83
|
- `sections[].kind` 는 `summary|status|cases|asks|note` 다섯 가지뿐 — 그 밖의 값은 절이 통째로 사라지므로 서버가 거절한다.
|
|
83
84
|
- `cases[].grade` 는 `grades` 에 정의된 이름이어야 한다.
|
|
@@ -98,16 +99,21 @@ version: "4.0.0"
|
|
|
98
99
|
|
|
99
100
|
## 세 가지 독자 — 뼈대는 하나다
|
|
100
101
|
|
|
101
|
-
서식은 하나뿐이므로 **뼈대를 바꾸지 않는다.** 바뀌는 것은 PART 를 무엇으로
|
|
102
|
+
서식은 하나뿐이므로 **뼈대를 바꾸지 않는다.** 바뀌는 것은 PART 를 무엇으로 가르느냐,
|
|
103
|
+
그리고 **그 독자에게 말을 걸 때 어떤 종결로 맺느냐**다(5a) — 독자가 사람이면 요청 자리는
|
|
104
|
+
하십시오체다. 문체를 독자와 무관한 상수로 두었다가 말투 반려를 네 번 받았다.
|
|
102
105
|
|
|
103
106
|
| 독자의 일 | PART 를 무엇으로 가르나 | 절의 kind |
|
|
104
107
|
|---|---|---|
|
|
105
108
|
| 판정한다 (검수·회신·결재) | 요청 / 경과 / 잔여 | `asks` → `summary` → `status` → `cases` → `note` |
|
|
106
109
|
| **배운다** (유지보수·인수·온보딩·사후분석) | 원리 / 붕괴와 처방 / 적용과 남은 것 | 같은 다섯 kind 를 그 순서로 쓴다 |
|
|
107
|
-
| **결정한다** (도입 여부·옵션 선택·예산·일정) | 결정 / 근거 / 이행 | `asks` → `summary` → `
|
|
110
|
+
| **결정한다** (도입 여부·옵션 선택·예산·일정) | 결정 / 근거 / 이행 | `asks` → `summary` → `note`(선택지 전치 행렬) → `cases` → `note`(FCG 의견 표 한 장) → `note`(바꾸는 길의 위험) → `note`(회신 뒤 일정) |
|
|
111
|
+
|
|
112
|
+
결정한다 모드에 「하지 않기로 한 것」 절은 **따로 두지 않는다** — 선택지 표의 「정할 자리」·「다시 볼 때」 행이
|
|
113
|
+
그 몫을 한다(반드시 지키는 것 10). FCG 의견은 절 하나, 표 한 장이 전부다 — 다른 절·열·제목에 배지 않는다.
|
|
108
114
|
|
|
109
115
|
**결정 문서와 R&D 블로그 글은 다른 물건이다.** 블로그 글은 「이런 걸 해 봤고 이런 걸 배웠다」로 끝나고 독자가
|
|
110
|
-
할 일이 없다. 브리핑은 **결정 요청(무엇을 언제까지)·복수의 선택지(
|
|
116
|
+
할 일이 없다. 브리핑은 **결정 요청(무엇을 언제까지)·복수의 선택지(그대로 두는 길 포함)·근거 등급·성숙도·기한**이
|
|
111
117
|
추가된다 — 이 다섯이 없으면 문서가 아무리 두꺼워도 블로그 글이다. 정부 R&D 최종보고서·군 결정문(BLUF)·
|
|
112
118
|
영국 정부 Submissions 가 공통으로 요구하는 것이 이 다섯이다(`references/lim-portal-format.md` §12.7b).
|
|
113
119
|
|
|
@@ -135,14 +141,16 @@ Lim 보고서, Lim 에 올려줘, 고객 보고서, 수정 내역, 검수 요청
|
|
|
135
141
|
|
|
136
142
|
1. **이 문서를 누가 읽는가** — 고객사 검수 담당? 결정권자? 실무 매장 인원?
|
|
137
143
|
2. **읽고 나서 무엇을 해야 하는가** — 확인만? 판단해서 회신? 결재?
|
|
138
|
-
3. **읽고 나서 무엇을 결정하는가** — 선택지는 무엇이고,
|
|
144
|
+
3. **읽고 나서 무엇을 결정하는가** — 선택지는 무엇이고, 선택지마다 무엇이 달라지는가, **언제까지** 정해야 하는가.
|
|
145
|
+
**FCG 의견을 낼지는 따로 묻는다** — 내면 한 절 한 자리.
|
|
139
146
|
(「결정한다」 모드에서는 필수. 답이 「특별히 결정할 것은 없다」면 그 문서는 브리핑이 아니라 보고다.)
|
|
140
147
|
|
|
141
148
|
독자가 정해지면 나머지가 전부 따라 정해진다. 같은 사실이 이렇게 갈린다.
|
|
142
149
|
|
|
143
|
-
**두 가지를 동시에 바꾼다** — 내부 용어를 고객 용어로, 그리고 문체를
|
|
150
|
+
**두 가지를 동시에 바꾼다** — 내부 용어를 고객 용어로, 그리고 문체를 그 자리에 맞게.
|
|
151
|
+
아래는 **기록 자리**(우리가 한 일)의 대응표다. 상대에게 말 거는 자리는 5a 를 따른다.
|
|
144
152
|
|
|
145
|
-
| 내부 기록 | 고객 문서(개조식) |
|
|
153
|
+
| 내부 기록 | 고객 문서(기록 자리 · 개조식) |
|
|
146
154
|
|---|---|
|
|
147
155
|
| "저장 경로 6곳을 수정" | "저장이 일어나는 모든 경로를 수정**함**" |
|
|
148
156
|
| "2026-08-09 운영 배포 완료" | "2026년 8월 9일 운영 환경에 반영**됨**" |
|
|
@@ -159,6 +167,29 @@ Lim 보고서, Lim 에 올려줘, 고객 보고서, 수정 내역, 검수 요청
|
|
|
159
167
|
|
|
160
168
|
---
|
|
161
169
|
|
|
170
|
+
## 0.5단계 — 시각 우선: 글보다 먼저 정한다 [MUST] (2026-09-08)
|
|
171
|
+
|
|
172
|
+
> 반려 원문 셋(앳플리 체중 조절 권장량 4차, 같은 날): 「글만 적어서는 이해가 어려움 — 그림 자료」 →
|
|
173
|
+
> 「신입은 읽다가 자겠다」 → 「색상 다변화, 핵심은 굵게, 배지·그래프 보강」. 셋 다 원고를 쓴
|
|
174
|
+
> 에이전트가 「글이면 충분하다」고 판단한 자리였다. **판단을 에이전트에게 남겨 두지 않는다** —
|
|
175
|
+
> 렌더러가 센다(`lim-portal-format.md` §10-1 — 로컬 `render.py`, 운영 dry_run 은 렌더러 배포 뒤 · 같은 문서 §11-6 머리). 여기는 그 앞의 집필 공식이다.
|
|
176
|
+
|
|
177
|
+
원고를 쓰기 전에, 절마다 이 순서로 정한다. 글은 마지막이다.
|
|
178
|
+
|
|
179
|
+
| 순서 | 정할 것 | 기준 |
|
|
180
|
+
|---|---|---|
|
|
181
|
+
| 1 | **한 장 이야기** | 문제 → 원인 → 해법 → 지금 상태 → 정할 것. 요약면 다섯 칸이 이 순서이고, 다루는 일의 **사건 경과** 표 한 장을 1절에 둔다(이 문서의 판 이력은 `history` — 3b) |
|
|
182
|
+
| 2 | **예시 한 명** | 실존 이용자 하나의 실제 숫자로 문서 전체를 관통시킨다(같은 사람이 그림·표·건에 반복) |
|
|
183
|
+
| 3 | **용어 잠금 표** | 같은 낱말이 두 값을 가리키면 그 자리에서 문서가 죽는다. 뜻이 갈리는 낱말은 표 한 장으로 값·정의·보이는 자리를 박는다 |
|
|
184
|
+
| 4 | **절마다 시각 장치 먼저** | 개념은 그림(HTML 개념도 → `assets/figure.mjs`), 실제 화면은 번호 표식을 얹은 캡처(`assets/shot.mjs`), 견주기는 표, 「A 면 B」는 흐름도, 분포는 막대 차트. 글은 그 옆 3줄. 도판은 `references/readability.md` 의 규칙표(R1~R10)를 `figure.mjs` 로 통과시킨다 — 글자 17/15px·행간 1.4·뜻 색 3·그림 안 문장 0·무손실. **글 층도 같은 문서의 R11** — 한 문장 60자(한 줄은 45자)·표 칸 20자(5열 이상 12자)·캡션 60자·괄호 문장당 1·숫자 나열은 표 행. 로컬 `render.py` 가 ⚠ 로 센다 — 운영 dry_run 은 렌더러 배포 뒤부터(운영 반영 전 — `lim-portal-format.md` §11-6 머리). 9/10 「도판은 좋아졌는데 가독성은 아직」 반려 |
|
|
185
|
+
| 5 | **판단 요청** | 요청은 **고객이 고를 물음**이다 — 제목은 물음, 본문 첫 문장은 기한과 두 길의 이름. 결과는 한눈표 **한 곳에만**, 열은 「항 · 지금 · 그대로 두면 · 바꾸면」으로 **대칭**. 6항 이상이면 관문 흐름도(정하면 어느 길로)를 곁에 둔다. 권고 열·시한 칩·한 길의 결과만 있는 열은 쓰지 않고 `priority:"must"` 도 쓰지 않는다. **화면 변화**(팝업·안내·칸의 유무)가 따르면 글과 표만으로 묻지 않고 **고객 디자인 시스템 규격의 도안**을 붙여 결재를 청한다 — `references/visual-first.md` 「화면 도안」 절. 집행자: 기한은 `gazette.py` ⚠(`doc_type` 에 「브리핑」), 권고 낱말은 `gazette.py` ⚠ W1(카피 게이트 표), 도안 유무는 없음 — 사람의 눈(`references/process.md` 7단계 표) |
|
|
186
|
+
| 5a | **원본 확인** | 주장·그림마다 **원본 이름 · 쪽(행) · 찾을 낱말**과 「건 §n.n」을 적는다. 「흐리다」「못 연다」고 쓰기 전에 **잰다** — PDF 는 `pdfimages -list` 전체, 웹은 실제로 열어 찾는다. 고객이 운영에서 **실제로 누를 수 있는 링크**만 근거로 친다 — 지금은 건 `source_url` 뿐이고, 렌더러 배포 뒤에는 글자 안의 맨 주소·`[글자](주소)`(도판 출처 줄 `source_text` 포함)도 링크가 된다(운영 반영 전 — `lim-portal-format.md` §11-6 머리). 집행자: `references/reader-review.workflow.js` 「원본 대조」 관점(7행) · 도판 출처 줄은 `gazette.py` ⚠ W2 — 그 밖은 없음, 사람의 눈 |
|
|
187
|
+
| 6 | **표기** | 절·PART 의 `tone`, 차트 행 `tone`, 건의 `source_url`, 요약면 `notice.state`. 색은 뜻으로(`lim-portal-format.md` §11-6). ⛔ 인라인 표기(`**굵게**`·`==강조==`·`{{ok|칩}}`·`[글자](주소)`·**맨 주소** 링크)는 **운영 반영 전 — `lim-portal-format.md` §11-6 머리** — 운영에 오르기 전에 쓰면 열람 화면에 원문이 글자로 찍힌다 |
|
|
188
|
+
| 7 | **독자 검토** | 발행 전 `references/reader-review.workflow.js` 로 네 관점(처음 읽는 사람·결정권자·정보 디자이너·원본 대조) 검토를 돌리고 상위 발견을 반영한다 |
|
|
189
|
+
| 8 | **실물 확인** | 발행 뒤 열람 주소를 열어 그림·표·칩이 섰는지 캡처로 본다. dry_run 경고 0 이 목표 |
|
|
190
|
+
|
|
191
|
+
상세와 도판 예산(장당 80KB · 합계 400KB), 그림 만드는 법, 반려 사례는 `references/visual-first.md`.
|
|
192
|
+
|
|
162
193
|
## 워크플로우
|
|
163
194
|
|
|
164
195
|
### 1. 자료 모으기 → `cases.json`
|
|
@@ -225,9 +256,9 @@ Lim 보고서, Lim 에 올려줘, 고객 보고서, 수정 내역, 검수 요청
|
|
|
225
256
|
|
|
226
257
|
「결정한다」 모드의 요약 4칸은 다르다 — 결정권자가 첫 화면에서 yes/no 를 고를 수 있어야 한다.
|
|
227
258
|
|
|
228
|
-
1. 무엇을 **언제까지** 결정해야 하는가
|
|
259
|
+
1. 무엇을 **언제까지** 결정해야 하는가 — 「무엇을 언제까지」 그 한 줄은 요약면 현황 줄(`notice`)의 몫이다
|
|
229
260
|
2. 검토한 선택지와 각각의 편익·비용·불확실성
|
|
230
|
-
3.
|
|
261
|
+
3. **확인한 사실과 근거 등급**(권고 없음 — FCG 의견은 별도 절 한 자리)
|
|
231
262
|
4. 결정 뒤 이어지는 것(누가·무엇을·언제)
|
|
232
263
|
|
|
233
264
|
그리고 **절마다 여백 주석 세 줄**을 쓴다. 이것이 안 채워지면 두 단 본문이 한 단으로
|
|
@@ -327,7 +358,8 @@ render·css·폰트를 함께 얹는다. 직접 부르면 옛 서식 시트가
|
|
|
327
358
|
| `assets/render.py` | `report.json` → 단일 HTML. **서버 등록부에서 서식을 읽어** 레포 `private/builder/build.py` 를 부른다 — 여기 사본을 두지 마라 |
|
|
328
359
|
| `assets/subset_font.py` | 폰트 서브셋 생성 (보통 실행 불필요) |
|
|
329
360
|
| `assets/example/report.json` · `cases.json` | 관보 필드를 전부 채운 본보기. 새 문서는 여기서 베낀다 |
|
|
330
|
-
| `assets/
|
|
361
|
+
| `assets/figure.mjs` · `shot.mjs` · `mockshot.mjs` | 도판 도구 — 개념도를 굽고 가독성 관문을 잰다(`figure.mjs`) · 웹 화면을 번호 표식과 함께 찍는다(`shot.mjs`) · 고객 앱 화면 도안을 2배 밀도로 찍는다(`mockshot.mjs`, `references/visual-first.md` 「화면 도안」) |
|
|
362
|
+
| `assets/example/report-briefing.json` · `cases-briefing.json` | 「결정한다(R&D 브리핑)」 모드 본보기 — 물음 제목 · 두 길 대칭 한눈표 · 선택지 전치 행렬 · FCG 의견 표 한 장 · 바꾸는 길의 위험 · 고른 길별 일정 · `cta` 기본 `[]` |
|
|
331
363
|
| 폰트 | **레포** `private/builder/fonts/pretendard-gazette.woff2` — 가변 1면 |
|
|
332
364
|
|
|
333
365
|
**스킬에는 렌더러도 스타일시트도 검사기도 없다.** 셋 다 레포와 `gazette-report` 스킬에 있고,
|
|
@@ -349,25 +381,67 @@ render·css·폰트를 함께 얹는다. 직접 부르면 옛 서식 시트가
|
|
|
349
381
|
활용법(`guide`)에 한 줄 둘 수 있다. 절 `lede`·본문 문단·표 주석·건·요청에는 두지 않는다.
|
|
350
382
|
실측(2026-09-01): 3차 회차 문서에서 절 셋·문단 둘·건 하나·요청 하나, **일곱 자리**에 샜다.
|
|
351
383
|
위 3번 규칙이 이미 있었으나 예시가 배포·티켓·테스트뿐이라 이 형태가 빠져나갔다.
|
|
384
|
+
**회차 낱말만이 아니다 — 진행 상태 어휘와 구조도 금한다.** 「정해짐 · 회신 대기 · 남은 물음 · 정해진 것 · N판」,
|
|
385
|
+
상태 열(「상태: 정해짐/회신 대기」), 개수로 상태를 세는 표 제목(「정해진 것 셋과 남은 것 하나」),
|
|
386
|
+
「~ 그대로(변화 없음)」. 독자는 앞 회차·회신·판을 모른다. 정해진 것은 **사실**로 요지(배경)에 적고,
|
|
387
|
+
결정 요청 절에는 **지금 열린 것만** 둔다. 회차의 자리는 `history` 하나. 원고는 직전 판의 차분이 아니라
|
|
388
|
+
**독자의 0 상태에서 다시 쓴다** — 판마다 「처음 읽는 사람이 이 절에서 무엇을 알아야 하나」를 다시 묻는다.
|
|
389
|
+
집행자: `gazette.py` `text_scan()` 과정 어휘 ⚠(2026-09-11 추가, `tests/builder.test.py` 시험 3건) ·
|
|
390
|
+
`references/readability.md` R11h. 상태 열·「그대로(변화 없음)」는 기계가 못 본다 — 사람의 눈.
|
|
391
|
+
까닭 — 실사례(2026-09-11, 고객사 결정 브리핑): 사용자 결정을 판마다 차분으로 반영하다 1절이
|
|
392
|
+
「정해진 것 셋과 남은 것 하나」 상태판이 됐음. 「뒷 내용을 나는 알고 너는 알아도, 독자는 모름. 이해관계자 입장 고려 안 해?」
|
|
352
393
|
4. **확인 못 한 범위를 반드시 적는다.** 감추면 다음 보고서까지 못 믿게 된다.
|
|
353
|
-
5.
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
394
|
+
5. **개조식은 「우리가 한 일」에만 쓴다.** `~함 / ~했음 / ~임`.
|
|
395
|
+
그 자리는 우리·사물이 주어인 **기록 자리**다 — `cases` 의 증상·원인·조치·확인 방법,
|
|
396
|
+
`summary`, 절 도입문·여백 주석, `status` 대조표, 부록, 판권지의 사실 서술.
|
|
397
|
+
**여기서만** `습니다|십시오|합니다|입니다|됩니다|주세요` 가 0건이어야 한다.
|
|
398
|
+
5a. **상대에게 말 거는 자리는 하십시오체로 맺는다.** 종결까지 존댓말이어야 한다.
|
|
399
|
+
그 자리는 요청 절(`cta`·`open_items`)·PART I 간지·판권지의 회신 안내다.
|
|
359
400
|
|
|
360
401
|
| 상대가 할 일 | 쓰지 않는다 | 쓴다 |
|
|
361
402
|
|---|---|---|
|
|
362
|
-
| 제목 | ~해 주셔야 함 · ~ 확인 필요 | **~ 요청** (명사형이 공문 표준) |
|
|
363
|
-
| 회신 청함 | 회신
|
|
364
|
-
| 확인 청함 | 설치해 확인하면
|
|
365
|
-
| 값을 정해 달라 함 | 네 글자로 지정 — 반영함 | 네 글자로 정해
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
⚠
|
|
369
|
-
|
|
403
|
+
| 제목 | ~해 주셔야 함 · ~ 확인 필요 · 서술문 제목 · ~하시겠습니까? | 검수·보고 문서의 확인 요청은 **~ 요청** + 기한 괄호(명사형이 공문 표준). 결정 문서의 판단 항목은 **물음**(「…할 것인가」)이고 기한은 본문 첫 문장(0.5단계 5행) |
|
|
404
|
+
| 회신 청함 | 회신 필요 · 회신 주시면 됨 · 회신 부탁드**림** | 회신 **부탁드립니다** · 회신 주시면 그대로 **반영하겠습니다** |
|
|
405
|
+
| 확인 청함 | ~인지 확인 · 설치해 확인하면 됨 · 의견을 부탁드**림** | 확인해 **주시기 바랍니다** · 의견 **부탁드립니다** |
|
|
406
|
+
| 값을 정해 달라 함 | 네 글자로 지정 — 반영함 | 네 글자로 정해 주시면 **반영하겠습니다** |
|
|
407
|
+
| 우리가 아쉬운 요청 | 동의해 주시면 됨 · 동의 여부를 요청드**림** | 동의 여부를 **회신해 주시기 바랍니다** |
|
|
408
|
+
|
|
409
|
+
⚠ **명사형 종결(`-ㅁ/-음`)은 존댓말이 아니다.** 한국어 상대높임법은 **종결어미**가 담당하는데
|
|
410
|
+
(하십시오체·해요체·하오체·하게체·해체·해라체), 명사형 종결은 그 등급 체계 **밖**이라
|
|
411
|
+
청자 높임이 0 이다. 중립이 아니라 **기록체**이고, 사람에게 직접 말하는 자리에 쓰면
|
|
412
|
+
하대로 읽힌다. 그래서 겸양 어간 `-드리-` 가 든 「부탁드림」도 존대가 아니다.
|
|
413
|
+
|
|
414
|
+
⚠ **이 규칙은 네 번 반려당하고서야 고쳐졌다.** 앞의 세 처방이 모두 종결을 못 건드린 채
|
|
415
|
+
어휘만 갈았기 때문이다. 같은 실수를 반복하지 않도록 경위를 남긴다.
|
|
416
|
+
|
|
417
|
+
| 회차 | 나간 글자 | 고객 반응 | 당시 처방 |
|
|
418
|
+
|---|---|---|---|
|
|
419
|
+
| 2026-09-02 #32 | ~해 주셔야 함 · 회신 필요 | 이거 너무 싸가지없는 거 아니야? | `-시-` 되살리기 |
|
|
420
|
+
| 2026-09-03 #112 | 동의해 주시면 됨 | 이런 말투 존나 싸가지 없지 않아? | 「부탁드림」으로 교체 |
|
|
421
|
+
| 2026-09-03 #112 | 보고 칸의 요청문 | 보고와 요청의 차이를 잘 모르는거야? | 요청문은 요청 절에만 |
|
|
422
|
+
| 2026-09-11 #176 | 부탁드**림** · 진행하겠**음** | 존나 마음에 안듦 · 관보가 원래 이런말투임? | **종결을 하십시오체로** |
|
|
423
|
+
|
|
424
|
+
네 번째 반려가 겨눈 것은 **2·3차 처방 그 자체**였다. 종결을 못 바꾼 이유는
|
|
425
|
+
「톤 게이트가 `습니다` 를 세므로 이쪽은 바꿀 수 없다」는 전제였는데 **그 전제가 틀렸다** —
|
|
426
|
+
게이트는 경고이지 거절이 아니다(위 「Lim 발행 규칙」).
|
|
427
|
+
|
|
428
|
+
⚠ **관형 명사구는 고치지 마라** — 「회신이 필요한 것은 4가지임」의 주어는 「것」이라
|
|
429
|
+
이름이지 명령이 아니다. 「자격이 필요함」처럼 주어가 사물인 「필요」도 그대로 둔다.
|
|
370
430
|
여기까지 높이면 표지 통계·색인 라벨이 말을 거는 문장이 되어 오히려 어색해진다.
|
|
431
|
+
정본은 genetics 결정문 `decisions/고객-문서-요청-자리는-하십시오체로-맺는다-명사형-종결은-하대로-읽힌다.md`(hnl) —
|
|
432
|
+
이 스킬은 패키지로 덮어써지므로 여기 적은 것은 사본이다.
|
|
433
|
+
앞 결정문 `…상대가-주어인-문장은-요청드림-부탁드림으로-맺는다.md` 는 **뒤집혔다**.
|
|
434
|
+
|
|
435
|
+
⚠ **보고 칸에 요청문을 두지 마라 — 세 번째 반려**(2026-09-03 저녁, 같은 보고서).
|
|
436
|
+
건의 `how_to_check`·`fix`·`remaining`, 절 `paragraphs`, `summary` 는 **보고 자리**다.
|
|
437
|
+
거기에 「…을 수용하실 수 있는지 의견을 부탁드림」「…를 보시면 확인됨」을 넣자
|
|
438
|
+
**「보고와 요청의 차이를 잘 모르는거야?」**로 반려됐다. 보고 칸은 사실과 계획만 —
|
|
439
|
+
「검수 기준. A가 됨. B가 뜸.」「셈법은 01절 ③ 회신에 따라 확정함」. 요청은 `asks` 절의
|
|
440
|
+
`open_items`·`cta` 와 PART I 간지에만 둔다. 계사 「~임」으로 끝나는 판정문
|
|
441
|
+
(「순서는 다른 항목 뒤임」)도 무성의하게 읽힌다 — 우리 행위 동사로 적는다
|
|
442
|
+
(「다른 항목을 마친 뒤 착수함」). 정본: genetics `decisions/고객-문서-보고-칸에는-요청문을-두지-않는다-요청은-요청-절에만.md`(hnl).
|
|
443
|
+
이 규칙은 **여전히 유효하다** — 5a 와 짝이다. 5a 가 요청 자리를 하십시오체로 올리는 만큼,
|
|
444
|
+
요청문이 보고 칸으로 새면 관보가 통째로 편지가 된다. **자리를 먼저 가르고, 그 다음 문체다.**
|
|
371
445
|
5b. **한글은 마침표에서 줄을 바꾼다.** 문장을 이어 붙인 한글 문단은 개조식으로 고쳐도
|
|
372
446
|
여전히 기계가 쓴 글로 읽힌다. **줄만 바꾸면 부족하다** — 실측(문장 296개)에서 26%가
|
|
373
447
|
글줄 폭을 넘어 접혔고 좁은 단은 54%였다. 접히면 둘째 줄과 다음 문장을 구별할 수 없다.
|
|
@@ -411,12 +485,23 @@ render·css·폰트를 함께 얹는다. 직접 부르면 옛 서식 시트가
|
|
|
411
485
|
거절은 그 효과가 대부분 사라진다 — `references/lim-portal-format.md` §12.7b).
|
|
412
486
|
- **주어는 조건**이다. 「[조건]이면 [기준] 때문에 [결과]」. 사람·조직·국가를 제외/미지원의 주어로 세우지 않는다.
|
|
413
487
|
- 부정 하나에 **원인·기준·재검토 시점·선택지** 넷을 붙인다. 넷 중 하나라도 없으면 그 부정은 아직 못 쓴다.
|
|
414
|
-
- 같은 부정을 여러 절에서 되풀이하지 않는다.
|
|
488
|
+
- 같은 부정을 여러 절에서 되풀이하지 않는다. 한 자리에 한 번, 다른 절은 그 자리를 가리킨다 —
|
|
489
|
+
결정권이 고객에게 있는 문서에서 그 자리는 「하지 않기로 한 것」 절이 아니라 선택지 표의 「정할 자리」·「다시 볼 때」 행이다.
|
|
415
490
|
- 나쁜 소식 앞에 **상대가 이미 잘 둔 것 한 문장**. 위로가 아니라 기준점이다 — 그 다음 문장의 기준이 된다.
|
|
416
|
-
- 「해야 합니다」를 쓰지 않는다.
|
|
491
|
+
- 「해야 합니다」를 쓰지 않는다. **결정권이 고객에게 있는 문서에서는 「하지 않기로 함」「권고함」「기각」도 쓰지 않는다** —
|
|
492
|
+
선택은 상대에게 둔다. FCG 의견은 별도 절 한 자리에만(세 가지 독자 표·4단계).
|
|
493
|
+
실사례(2026-09-11, 고객사 결정 브리핑): 「보고서에 답정너 형식 좀 없애」.
|
|
417
494
|
- 구체적인 값(지역명·회사명·제품명)은 스킬이 아니라 **그 문서의 `forbid`** 로 막는다(9번).
|
|
418
495
|
기계가 잡는 것은 「조건·이유 없이 부정으로 끝난 문장」까지다(`tone.mjs` 단독 부정 종결). **주어가 사람·조직·
|
|
419
496
|
국가인지는 기계가 못 본다** — 사람의 눈 검수 표에 그 행이 있다(`references/process.md` 7단계).
|
|
497
|
+
권고 낱말(제목·표 열·절 이름·여백 주석·요약면)은 `gazette.py` ⚠ W1 이 센다(카피 게이트 표).
|
|
498
|
+
11. **원본을 「흐리다」「못 연다」고 쓰기 전에 잰다.** PDF 는 `pdfimages -list` 전체, 웹은 실제로 열어 찾는다 —
|
|
499
|
+
짐작으로 판정하지 않고, 못 열었으면 「미확인」이라 적는다. **인용은 원문 문구 그대로**, 위치는 절·쪽(행)까지.
|
|
500
|
+
고객이 눌러 열 수 없는 참조는 근거가 아니다(0.5단계 5a행).
|
|
501
|
+
집행자: `references/reader-review.workflow.js` 「원본 대조」 관점(발행 전 독자 검토) · 도판 출처 줄의 원본 위치 누락은
|
|
502
|
+
`gazette.py` ⚠ W2 — 그 밖은 없음, 사람의 눈.
|
|
503
|
+
실사례(2026-09-11, 고객사 결정 브리핑): 확인 없이 「원본이 흐림」이 실렸고 재보니 원본은 충분히 컸다 —
|
|
504
|
+
「고객은 직접 원본을 보고 싶은데 볼 수 없잖아」.
|
|
420
505
|
|
|
421
506
|
## 흔한 실패 모드
|
|
422
507
|
|
|
@@ -447,17 +532,21 @@ doc-pptx 의 슬롭 3종 중 **대시 대비 헤드라인**("복붙에서 위임
|
|
|
447
532
|
|---|---|---|
|
|
448
533
|
| 대시 `—` 밀도 | `tone.mjs` S2(0.5/천자) | 로컬 렌더 산출물 |
|
|
449
534
|
| 「A에서 B로」 전환 공식 | **없음** — 사람의 눈 검수(`process.md` 7단계 표) | — |
|
|
450
|
-
| 경어체 잔존 · 한 문장 한 줄 | `tone.mjs` S1 | 로컬 렌더 산출물 |
|
|
535
|
+
| 경어체 잔존(기록 자리) · 한 문장 한 줄 | `tone.mjs` S1 — 판단 항목 본문(`p.ask__body`)과 「」 인용은 세지 않는다(5a · 11) | 로컬 렌더 산출물 |
|
|
451
536
|
| 학생 보고서투 · 완충어 · 근거 없는 총평 · 단독 부정 종결 | `tone.mjs` S1/S2(2026-08-27 추가) | 로컬 렌더 산출물 |
|
|
452
537
|
| 금칙 값(고객사·지역·제품명·티켓) | `build.py` `forbid` | **로컬 렌더만** — 포털 발행은 안 돈다(`report_publish.php:76`) |
|
|
453
|
-
|
|
|
538
|
+
| 판단 항목에 기한 없음 · `asks` 절 없음 · 선택지 표에 근거 등급 열이나 행 없음(브리핑) | `gazette.py` `brief_checks()` ⚠ | **두 경로 다**(dry_run·로컬) — 「판단 항목」 문구와 행 인정은 렌더러 배포 뒤 |
|
|
454
539
|
| 본문 절의 회차 서술(「이번 회차…」) | `gazette.py` `round_talk_scan()` ⚠ | **두 경로 다**(dry_run·로컬) |
|
|
540
|
+
| 본문의 진행 상태 어휘(정해짐·회신 대기·N판) · 개수로 상태를 세는 표 제목(3b) | `gazette.py` `text_scan()` 과정 어휘 ⚠(2026-09-11) | 로컬 렌더 · 운영 dry_run 은 렌더러 배포 뒤(운영 반영 전 — `lim-portal-format.md` §11-6 머리) |
|
|
541
|
+
| 권고 낱말(제목·표 열·절 이름·여백 주석·요약면) — 결정권이 고객에게 있는 문서(10번) | `gazette.py` ⚠ **W1** | 로컬 렌더 · 운영 dry_run 은 렌더러 배포 뒤 |
|
|
542
|
+
| 고객·제3자 자료에서 낸 도판(`user-provided`)의 출처 줄에 원본 위치(쪽·행·주소·건 §) 누락(11번) | `gazette.py` ⚠ **W2** | 로컬 렌더 · 운영 dry_run 은 렌더러 배포 뒤 |
|
|
543
|
+
| 확인 포기 문구(「흐리다」「못 연다」)를 원본을 재지 않고 쓴 것(11번) | **없음** — 사람의 눈(`process.md` 7단계 표 · 독자 검토 「원본 대조」 관점) | — |
|
|
455
544
|
| 부정 서술의 주어가 사람·조직·국가 | **없음** — 사람의 눈 검수 | — |
|
|
456
545
|
|
|
457
546
|
다만 **조사·체언 종결 조각문** 규칙은 보고서 문맥에서 완화한다. 목차 항목과 건 제목은
|
|
458
547
|
"…던 문제", "…내역 정리"처럼 명사구로 끝나는 것이 한국어 보고서의 관례다. 슬라이드 헤드라인과
|
|
459
548
|
달리 목록으로 훑는 항목이라 완전문으로 바꾸면 오히려 읽기 어렵다.
|
|
460
|
-
대신 **요약의 각 리드
|
|
549
|
+
대신 **요약의 각 리드 문장은 완전문**, 확인 요청의 제목은 「~ 요청」, 결정 문서 판단 항목의 제목은 **물음**으로 쓴다 — 여기가 판단이 일어나는 자리다.
|
|
461
550
|
|
|
462
551
|
## 폰트
|
|
463
552
|
|
|
@@ -11,21 +11,21 @@
|
|
|
11
11
|
},
|
|
12
12
|
{
|
|
13
13
|
"group": "evidence",
|
|
14
|
-
"title": "도입·운영
|
|
14
|
+
"title": "도입·운영 비용은 얼마나 드는가",
|
|
15
15
|
"grade": "실데이터 대조",
|
|
16
|
-
"symptom": "방식 A 를 붙이면 달마다 얼마가 더 들고,
|
|
16
|
+
"symptom": "방식 A 를 붙이면 달마다 얼마가 더 들고, 사용량이 늘면 어떻게 되는가?",
|
|
17
17
|
"cause": "석 달치 실제 사용량으로 비용을 셈함. 현행 대비 월 운영비가 약 1.4배. 사용량이 두 배로 늘면 격차가 1.6배까지 벌어짐.",
|
|
18
|
-
"fix": "지금
|
|
18
|
+
"fix": "지금 사용량에서의 격차는 1.4배임. 격차가 커지는 급증 구간은 계약의 사용량 상한 조항으로 줄일 수 있음.",
|
|
19
19
|
"how_to_check": "부록 4의 산식에 최신 월 사용량을 넣으면 같은 배수가 나옴.",
|
|
20
20
|
"remaining": "내년 사용량 전망치는 추정임. 분기마다 실측으로 갱신 필요."
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
"group": "evidence",
|
|
24
|
-
"title": "방식 B
|
|
24
|
+
"title": "방식 B 는 우리 자료 규모에서 같은 이득을 내는가",
|
|
25
25
|
"grade": "문헌·타사 사례",
|
|
26
26
|
"symptom": "더 싼 방식 B 로도 같은 이득을 얻을 수 있지 않은가?",
|
|
27
27
|
"cause": "타사 공개 사례 6건을 대조함. 방식 B 는 자료가 백만 건을 넘는 곳에서 정확도가 급락한 사례가 4건.",
|
|
28
|
-
"fix": "우리 자료
|
|
28
|
+
"fix": "우리 자료 규모는 그 문턱을 이미 넘었음. 규모가 절반 아래로 줄면 사례의 조건과 달라짐.",
|
|
29
29
|
"how_to_check": "부록 4에 사례 6건의 출처와 규모·정확도 수치를 적어 둠. 같은 표로 대조 가능함.",
|
|
30
30
|
"remaining": "타사 사례라 우리 자료 특성과의 차이는 남음. 직접 실험은 하지 않음(근거 등급이 한 단 낮은 이유임)."
|
|
31
31
|
}
|