---
title: 協賛依頼状の正本化メモ（M-47 プレスリリース260910の校正）
layer: 知識層
tags: [M-47, 協賛依頼状, 申込書, ハーネス, 正本, C-14]
updated: 260917
---

# 協賛依頼状を「正本テンプレ1本」にした（260917）

## 0. 何をしたか（三行で）

1. 260910版プレスリリースを**1件ずつ校正して返す形はやめた**。同じ指摘が260905→260910で
   再発しており、校正表を送る運用ではループが閉じていないため（分析 §3-4）。
2. 代わりに **8/26の 1-2-1／1-2-2 を正本テンプレとして更新**し、いちばん欠けていた
   **協賛申込書（1-2-3）を新規に作った**。以後「協賛のお願いはこの3点」と宣言する。
3. **出せない文書はPDFにならない門**を作った（`_build_letter.py` ＋ `_letter_rules.json`）。
   260910版を検体に通すと**既知11種すべてを捕まえて止める**。さらに**別モデル（GPT-6 Astra）に
   批判的レビューをさせて8件の穴が見つかり、同日中に門を作り直した**（→ §4-2）。
   いまは**素通りを狙う書き方21種**も回帰テストとして毎回通している。

## 1. 成果物

| ファイル | 中身 | 枚数 |
|---|---|---|
| `1-2-1_ご協賛のお願い_オフィシャルパートナー_260917.html／.pdf` | 限定10社向け 依頼状 | A4縦2p |
| `1-2-2_ご協賛のお願い_協賛事業者_260917.html／.pdf` | 市内40社向け 依頼状 | A4縦2p |
| `1-2-3_協賛申込書_260917.html／.pdf` | **新規**。返送用の申込書 | A4縦1p |
| `_letter.css` | 3点が参照する**共通スタイルの正本**（8/26版から切り出し） | — |
| `../_build_letter.py`／`../_letter_rules.json` | 検査＋PDFビルドのハーネスと**ルールの正本** | — |
| `../_letter_selftest_fixture.html` | 260910版の本文（**門の自己テスト用の検体**・配布物ではない） | — |

## 2. 260910版から直したこと

### 致命（そのまま出ていたら取り返しがつかないもの）

| # | 260910版 | 260917版 |
|---|---|---|
| A | 本文に `**` が8個（Markdownの強調記号） | 無し。**門Aが `**` を見つけたらPDFを作らない** |
| B | 協賛金額の直下に社内メモ「（案：医師会、金融機関、インフラ企業等）」 | 削除。門Aが「案：」を検出する |
| C | 了解の記録がない社名で信用付け（「多治見市医師会様や株式会社バロー様をはじめとする…と連携して」） | **社名を一切使わない**。宛名も差し込み方式にし、門Aが社名を検出する（C-14が済むまで） |
| D | 根拠のない「医師会・社会福祉協議会等がバックアップする」 | 削除。**社協は合意記録に一度も登場しない**。無断記載は将来の行政接続（生活支援体制整備事業 第2層）を自分で潰す |
| E | 「次世代キャッシュポイント」「生活動線データ（新資産）」を協賛メリットに明記 | 削除。確定方針「データは外に出しません。外に出すのは成果（仕事と統計）だけです」と正面衝突するため |
| F | 「悪徳事業者を排除し」が3回 | **排除の言い方をやめ、肯定形に**（「住民の皆さまが安心して頼める受け皿を、地元の皆さまと共に整えてまいります」）。限定40社＝枠から漏れる同業者が必ず出るので、「選から漏れた＝悪徳と名指しされた」の対偶を作らない |
| G | 年11万円に「共同発起人」の地位 | 削除。会社法・一般社団法人法上の語で、将来設立する法人の議決権を約束したと読まれうる |
| H | 「オンライン診療・服薬指導等に深く関与いただけます」 | 削除。医師・薬剤師の業務であり、計画は資料上どこにも無い |
| I | 「100%信頼された状態でアプローチが可能です」 | 削除。根拠不能の断定 |
| J | 事業サポートが「有限会社ひなたぼっこさと」に逆戻り | **株式会社両藤舎内 むすびサポートセンター（担当：三宅）** に統一（9/4の修正どおり。※三宅さんの最終確認待ち＝M-39） |
| K | サービス名が第3の表記「まごころ（ちょこっと）サポート多治見」 | 「まごころちょこっとサポート」に統一 |
| L | 「公費ゼロ」 | 「毎年の運営費を公費に依存せず」へ。持続化補助金の採択と矛盾しない言い方にした |

### 書面として足りなかったもの（**260910版では全部欠落**）

- **お申し込みの方法**（5段の手順を新設）
- **お申し込み期限**（令和8年10月31日必着＝**仮置き。要確定**）
- **協賛期間**（ご入金日の属する月から12か月・自動更新の条件つき）
- **お振込先**（8/26版にはあったが260910版で消えていた）
- **領収書・適格請求書（インボイス）の扱い**
- **反社会的勢力に関する確約**（申込書に確約文と署名欄）
- **個人情報の取扱い**
- **発行日・文書番号**

## 3. まだ決まっていない3点（DRAFTのまま外に出せない）

| # | 何が決まっていないか | 誰が決めるか |
|---|---|---|
| 1 | **振込口座の番号**（いまは【１２３４５６７】のプレースホルダ） | 東濃信用金庫での開設手続き（C-2） |
| 2 | **お申し込み期限**（令和8年10月31日は仮置き） | 佐藤社長・三宅さん |
| 3 | **事業サポートの表記**（9/4の修正が反映されるか＝M-39） | 三宅さん（**別紙 B-1 で確認中**） |

3点が確定するまで、3ファイルとも紙面に **DRAFTの帯と斜めの透かし**が出る。
**この帯が出ている紙は社外へ出さない。**

## 4. ハーネス（数字ではなく「言葉」を止める門）

```bash
cd 06_個別成果物
python3 _build_letter.py --selftest                 # 門が効くか（260910版の検体を通す）
python3 _build_letter.py 260917/*.html              # 検査してPDF化
python3 _build_letter.py --check-only <file>        # 検査だけ
```

| 門 | 何を見るか |
|---|---|
| 門A | 禁止表現（`**`／悪徳・悪質／次世代キャッシュポイント・**データ販売の言い換え**／社会福祉協議会／共同発起人／100%／オンライン診療／口座のプレースホルダ／**了解の記録がない社名**／公費ゼロ／サービス名の表記ゆれ／社内メモ／旧・事業サポート表記）。**タグで割っても・半角カナでも・旧字体でも・空白で割っても拾う** |
| 門B | 必須要素が**形として**あるか（申込方法／期限は日付／協賛期間／振込先は金融機関＋支店＋名義／領収書・インボイス／反社は「該当・確約」まで／個人情報は「使用・提供」まで／電話番号／発行日）。**可視本文だけを見る** |
| 門C | 金額・社数・電話番号・事業主体・代表者・住所・事業サポート・**一覧に無い法人名**が基準どおりか |
| 門D | PDF化して上下余白と空白帯を実測 |

**致命・重大が1件でもあればPDFを作らない。** 例外が要るときは要素に `data-ok="理由"` を付ける。
検査から外れる代わりに、ビルドのたびに「※ 例外を使用: 理由」と表示される（黙って通らない）。
**例外を使っている紙は、DRAFTの表示が無いとそもそも通らない**（例外を残したまま送付用にできない）。

**ルールを足すのは `_letter_rules.json` の方**。スクリプトは書き換えない。
新しい指摘が出たら、まずここへ1行足す＝**同じ誤りが二度と通らなくなる**。

### 自己テスト（作っただけで安心しないための仕掛け）

`_build_letter.py --selftest` は、**実際に外へ出かかった260910版の本文**を検体として門に通し（＋攻撃テスト21種）、
既知11種（`**`・悪徳・次世代キャッシュポイント・社会福祉協議会・共同発起人・100%・
オンライン診療・バロー・サービス名の表記ゆれ・ひなたぼっこさと・社内メモ「案：」）が
**すべて捕まること**を確かめる。1つでも漏れたら失敗で終わる。

> 260915に収益シミュレーションの門2で「値が正本のどこかにあるか」しか見ておらず
> 同じ誤りを素通りさせる穴があった。**門を作ったら、実際の事故の現物で試す。**

## 4-2. 別モデルのレビューで門を作り直した（同日中に実施）

作った門を **GPT-6 Astra に read-only で批判的レビューさせた**（Maker-Checker。生成役＝Claude、検証役＝Astra）。
「素通りする書き方を実証してほしい」と頼んだところ、**8件の指摘**が返り、うち高が5件あった。
**最初の門は、実務で起こりうる書き方で簡単に破れていた。**

| # | 指摘 | どう直したか |
|---|---|---|
| 1 | タグで割ると語が消える（`悪<span>徳</span>事業者`）。半角カナ `ﾊﾞﾛｰ`、全角 `１００%`、旧字体 `社會福祉協議會`、空白で割る「社会 福祉 協議会」、ルビ、`&#x30D0;` でも素通り | **本文の取り出しを正規表現からHTMLパーサへ全面的に置き換えた**。文字だけを連結してタグで切らない／NFKC正規化／旧字体を新字体へ寄せる／**空白を落とした「詰めた本文」でも検査する**の4段 |
| 1b | 「住民の行動履歴を企業へ販売し収益化します」＝**語を変えたデータ販売**が通る | 言い回しを拾うルールを追加（`行動履歴|購買履歴|生活データ…` × `販売|収益|資産`） |
| 1c | 一覧に無い会社名（架空の社名）は止まらない | **法人格つきの社名を全部拾い、許容リストに無ければ重大**にした。載せてよい社名はリストへ足す＝C-14の記録そのものになる |
| 2 | 必須要素が**語の有無**だけ。「申込方法は未定。期限は未定。東濃信用金庫の前で集合。」で全項目が成立する | 必須要素を**形**の検査へ。期限は `令和8年10月31日 必着` の日付、振込先は金融機関＋**支店＋口座名義カナ**、反社・個人情報は「該当／使用」まで要求 |
| 3 | `年額2<span>300</span>円` が末尾の300円として通る。全角 `９９９，９９９円`、`０５７２－２２－９９９９`、`0572(22)9999` も通る | 正規化後に**数字の並びごと**取る（先頭の数字を境界で押さえる）。電話は全角ハイフン・括弧書きも同じ形に直して照合。**万円・億円の表記は突き合わせられないので重大として報告** |
| 4 | `<title>` や `display:none` に必須語を隠すと満たしたことになる | **必須要素は可視本文だけ**で見る。禁止語は隠れている部分も見る（隠して仕込めない） |
| 5 | `data-ok=""`（理由なし）が通る。`x-data-ok` や `title='data-ok=...'` まで例外扱いになる。**DRAFTの表示だけ外してプレースホルダの口座番号を残せる** | 属性名の完全一致だけを見る／理由が空なら致命／**例外を使っている紙にDRAFTの表示が無ければ致命**。※この判定は「紙の上に見えているか」で行う（理由文に DRAFT と書いてあっても通さない） |
| 6 | 同名タグの入れ子で `data-ok` の範囲が壊れる | パーサのスタックで開始・終了を対応させ、入れ子ごと外す |
| 7 | 自己テストが「指摘として検出した語」と「周辺文にたまたま出た語」を区別しない＝**検出が壊れても成功する** | 指摘の見出し部分の `「語」` で照合するようにした |
| 8 | 「重大」は検出してもPDFを作ってしまう | **重大も停止条件に加えた**。社内メモや旧表記が混ざったままPDFになるのを防ぐのがこの門の用途なので |

### 攻撃テスト（`--selftest` に同梱・21種）

指摘された書き方を**そのまま回帰テストにした**。必須要素だけを満たした土台に攻撃文を1つずつ混ぜ、
**全部で指摘が出ること**を毎回確かめる。

```bash
python3 _build_letter.py --selftest      # 検体1本（260910版）＋ 素通りを狙う書き方21種
python3 _build_letter.py --attacktest    # 21種だけを回す
```

### 直していない限界（承知のうえで残す）

- **画像の中の文字は読まない**（base64のSVG・写真に焼き込まれた文言）。機械では拾えないので、
  **納品画像は公開前に目視1回**（CLAUDE.mdの運用と同じ）
- CSSの `content:` で流し込んだ文字も読まない。**自分たちがそう書かない**ことで担保する
- 言い換えは無限にあるので、禁止語の列挙で全部は止まらない。**止まらなかった言い回しが出たら
  `_letter_rules.json` に1行足す**＝門が育つ設計にしてある

---

## 5. 三宅さんへの伝え方（別紙Dで「別便で直した案を送ります」と予告済み）

- **校正表は送らない。**「直した案」を3点そろえて送り、**正本はこの3点とさせてください**と宣言する
- 社名を外したことは「了解をいただいてから載せます」という**守りの説明**にする（相手を責めない）
- 社協の件は判断を待たずに削ったことを明示する（行政接続を守るため）
- 決まっていない3点（口座番号・期限・事業サポート表記）を**1通で聞く**

文面＝`LINE共有文面_260917.md`

## 6. 残件

- **C-14（社名使用の了解取り）が未着手**。バロー・医師会・東濃信金・大島名誉総長の実名を
  対外物で使うには、**書面での了解が先**。門Aはそれまで社名を弾き続ける
- FAX番号が分からないため、返送経路を**郵送・お電話の2つ**にした。FAX番号が判明したら
  1-2-1／1-2-2／1-2-3 の3点に追記する
- 8/26の修正表38項目（`06_個別成果物/260826/1-2_プロジェクト案内_修正表_260826.md`）は
  **三宅さんに届いていない**。今回の3点で置き換わるので、修正表そのものは送らない
