judgment record pointer requirement dropped - Liplus-Project/liplus-language GitHub Wiki
理由づけを Li+ source 本文から抜いた跡に、その理由づけを保持する wiki 判断記録を名指しするポインタ(Judgment record: <slug>)を残す義務を課すべきか。
課さない。 2026-09-02 の Master 判断(「Judgment record: ポインタはいらない機能だね」)を起点に #1852 で起票、PR #1859 で撤廃。rules/model/liplus-coding-rule.md Body States Behavior から Pointer is required. の段落を削除し、既存ポインタを本文面 4 ファイル + docs/1.-Model.md mirror から一括除去した(6 構文形、計 −5,033 B)。
理由づけを wiki 判断記録へ移設すること自体は不変。 変わったのは、抜いた跡に痕跡を残す義務だけである。跡は空のまま閉じ、docs/Decision-Structure.md の索引行は従来どおり増える(跡は空、索引は追記、という非対称)。
-
supersedes
source-body-behavior-only-reasoning-relocates— あちらの中核(行き先の軸で二つのテストが競合しない)は生きている。無効化されたのは改訂安定性をポインタが担うという条項と、その裏返しとして置かれた成立条件「ポインタ無しの抜き取りは Negative list が禁じる削除そのもの」、および検出サイン第 1 項「跡にポインタが無い → 許可範囲外」である。改訂安定性を担うのはdocs/Decision-Structure.mdの索引とskills/evolution-judgment-learningの retrieval 経路であり、ポインタはその重複だった(下記 Constraints で実測)。 -
relates to
agentic-search-distilled-body-measured-equivalent— 同じ #1848 段2ハーネスで測った隣接事例。あちらは蒸留の等価性、こちらはポインタの効き。あちらの本文にポインタが 1 本も無かったことが brake 1 で 3/3 の finding として立ち、その所見が本判断の起点になった。 -
relates to
parallel-agent-eval-body-carries-behavior-only— ポインタが最も密集していた本文(50 箇所超)。本判断の除去対象の 9 割がここ。 -
depends on
brake1-evaluator-floor-lowered-to-one— 本 PR の brake 1 は N=1 で走った。
ポインタ要件は本文を痩せさせる代わりにポインタ行と wiki 項目を増やし、統治の総量を減らさなかった。
嵩の実測(PR #1846 の diff、ポインタ文字列そのもののバイト数):
| 箇所 | バイト | |
|---|---|---|
| ポインタ追加 | 50 | 3,308 B |
| ポインタ削除 | 10 | 682 B |
| 差引 | +40 | +2,626 B |
同 PR の net は −4,749 B。ポインタが無ければ −7,375 B だったので、削減分の 35.6% をポインタが食い戻していた。
さらに削減を高くつかせる非対称がある。足す側は書き手一人で完結するのに対し、削る側はポインタと wiki 項目の追加作業を伴う。rules/model/subtractive-structural-beauty.md が既定を subtraction に寄せろと言っている、その当の既定に対して逆向きの摩擦だった。
前提1 — ポインタ行は振る舞いを変えるか。 #1848 段2ハーネス(ライブ木を複製した一時ディレクトリ 2 面、hook 除去、MCP 無効、腕 = claude -p / opus、各腕 3 本)。対照差分は skills/evolution-parallel-agent-eval/SKILL.md のポインタ機構のみ(52 箇所、−4,203 B / −10.6%)。
| probe | A腕(ポインタ有) | B腕(無) |
|---|---|---|
| 評価者に渡す材料 | PR URL / commit SHA / CI run URL | 一致 |
| 却下理由の記録先 | commit body | 一致 |
| per-draft 軸の本数 | 2本(逐語一致) | 一致 |
| 評価者下限の根拠の在り処 | 3/3 が slug を名指し | 0/3 |
| commit body 記録の根拠の在り処 | 3/3 が slug を名指し | 0/3 |
手続きに対する conduct は 6/6 完全一致。ポインタが変えるのは、本文だけから判断記録を名指しできるか否かの一点のみ。 B 腕は 3/3 が docs/Decision-Structure.md の索引と skills/evolution-judgment-learning の経路を正しく挙げ、slug は「記述なし」と申告して推測を拒んだ。経路は残り、slug だけが失われる。
前提3 — 索引だけで代替できるか。 構造面では skills/evolution-judgment-learning が既に「Decision Structure entries ... are RAG-indexed and reach the retrieval path by design」と宣言しており、ポインタはこの保証済み経路の重複。実測では wiki 全体への話題クエリ 4 本が 4/4 で正解エントリを rank 1(rerank マージン 35倍 / 13倍 / 5.8倍 / 1.1倍)。
測っていない範囲: クエリ 4 本は答えを知っている側が書いたもので盲検ではない。マージン 1.1 倍の 1 件(brake-evaluator-baseline-integrity 0.468 対 brake2-scoped-to-content-not-evidence 0.426)は rank 1 が正しいものの差が薄い。結論は「この 4 本で引けた」までであり、「常に引ける」ではない。
前提2 — 既存ポインタの扱い。 本文面の全数は 4 ファイル + mirror 1、うち 93% が一本に集中。自然減衰を選ぶ理由が無い規模であり、一括除去で閉じた。
採用: 要件を撤廃し、既存ポインタを一括除去する。改訂安定性は索引 + retrieval 経路が担う。
却下した案:
- 要件を残す — 前提1 の実測が conduct 不変を示した以上、要件が守っているのは改訂安定性ではなく「名指しの近道」一つであり、その近道は索引経路が 4/4 で代替した。嵩の 35.6% を食い戻す対価に見合わない。
- 要件は残して既存ポインタだけ整理する — 要件が立っている限り次の抜き取りがまた足す。摩擦の向きが変わらない。
- 自然減衰に任せる — 母数が 4 ファイルであり、放置する理由が無い。
ポインタ規約には正規形が無く、6 つの構文形が併存していた — 文形 / 括弧形 / 括弧末尾節形 / 混在括弧形 / コロン無し散文形 / 語挿入形。必須と規定された規約が、書くたびに違う形になっていた。
この分岐は調査側にも噛んだ。当初の母数調査は `judgment records?: `` を要求する grep で走り、形 5 と形 6 を取りこぼして「3 ファイル / 54 箇所」と報告した(正しくは 4 ファイル / 56)。両方とも、書いた本人の点検ではなく外側が拾っている — 形 5 は A/B の腕が「手元で名指しされている slug は 1 本だけ」と申告したことで露見し(こちらの leakage grep は 0 件と報告していた)、形 6 は実装サブエージェントが検出した。パターンが返す 0 は不在ではなく、そのパターンの射程である。
- 理由づけを抜いた跡にポインタを足そうとしている → 要件は撤廃済み。足す根拠は規則側に無い
- 「ポインタが無いと判断記録に辿り着けない」と言われた → 索引 +
skills/evolution-judgment-learningの経路が残っている。実測は 4/4 rank 1。ただし盲検ではない点は上記のとおり - ある規則の理由を探して索引から引けなかった → これが本判断の再評価トリガーである。前提3 の測定射程の外に出た事例として記録すること
- Negative list(既知の誤読を防ぐ説明的論拠の保護)を根拠にポインタ復活が主張された → 保護対象は改訂安定性であり、その担い手が変わっただけである