decisions/ — Architecture Decision Records

v1.0.0 · folio Layer 0 の ADR cluster

§1. Purpose

decisions/ は constitution P-7 の 3 content domain のうち「decision = WHY」を担う frozen ADR cluster。 更新提案は専用領域 (旧 changes/) を持たず、 ADR + delta marker + version control review で表現する。

decisions/ は constitution P-7 (Content domain exclusivity) における「decision = why」 領域を担う (ADR-0021 で 3-domain 化、 changes/ 廃止)。 更新提案は専用領域 (旧 changes/) を持たず、 ADR (why) + delta marker (trace) + version control review で表現する (P-7 / §6)。 実装 (HOW) とその verification は design-intent 空間の外 (P-13)。

§2. ADR Status Lifecycle

ADR の status は proposed (draft・承認待ち) → accepted (適用済) を基本に、 accepted な ADR が後続 ADR に置換されると superseded (supersedes 属性で明示 trace)・deprecated (置換され陳腐化) になる 4 値。 各 ADR の現 status は §3 table の status 列が持つ。

flowchart TB
  accTitle: ADR status lifecycle
  accDescr: ADR の status は proposed (draft・user 承認待ち) から始まり、 user 承認で accepted (適用済) になる。 accepted な ADR が後続 ADR に置換されると superseded (新 ADR が supersedes 属性で明示 trace) になり、 置換された古い ADR は deprecated (陳腐化) として扱う。 本 cluster の各 ADR の現 status は §3 table の status 列に対応する。
  P["proposed
draft・承認待ち"]:::st AC["accepted
承認済・適用済"]:::st SU["superseded
後続 ADR が明示置換"]:::st DE["deprecated
置換され陳腐化"]:::st P -->|user 承認| AC AC -->|後続 ADR が supersedes| SU SU -->|古い ADR は| DE classDef st fill:#2a4d6e,stroke:#1b3550,color:#ffffff
図 1: ADR status の遷移。 proposed → (user 承認) → accepted、 accepted は後続 ADR に supersedes されて superseded → 古い ADR は deprecated。
status意味
proposeddraft 段階、 user 承認待ち
accepteduser 承認済、 適用済
deprecated古い ADR、 後続 ADR で superseded された
superseded明示的に新 ADR で置換された (supersedes 属性で trace)

§3. Current ADRs

folio はこれまで 34 本の ADR (ADR-0001〜0042、 一部欠番) を記録してきた。 下表が ID・title・status・date の一覧。 番号割当と起票経緯の per-ADR 記録 (retrospective 追認 / forward decision / 予約・見送りの区別) は機械層に保持し、 toggle で全文へ展開できる。

IDtitlestatusrevisiondate
ADR-0001 architecture-rules.html を rules.html + folio-self-spec.html に分離 accepted v3 2026-05-22
ADR-0002 folio repo を scratch 中心の試作層に整理 accepted 2026-05-22
ADR-0003 folio plugin minimal architecture (1 skill + 4 hook + 6 script + 1 CLI) accepted 2026-05-23
ADR-0004 JSON-LD lint mechanism (試作 Option B Light: jq 構造 check) accepted 2026-05-25
ADR-0006 caller marker hook (hybrid: env var OR marker file) accepted 2026-05-25
ADR-0007 context injection (SessionStart + PreCompact、 Beads-inspired) accepted 2026-05-25
ADR-0013 sandbox verification framework (scratch/verification/) accepted 2026-05-23
ADR-0015 sandbox verification vs experiment-verified (twill 方式) の境界 accepted 2026-05-23
ADR-0017 verification の unit (sandbox) vs integration (e2e) 境界 accepted 2026-05-25
ADR-0018 CLI golden-diff verification harness (kind:cli-golden) accepted 2026-05-25
ADR-0019 path boundary hook (Option Pragmatic: content-marker 検出) accepted 2026-05-25
ADR-0020 folio validate 試作 scope (内部 link-integrity + jsonld structural) accepted 2026-05-25
ADR-0021 constitution X4 amendment (脱-instance + 3-domain + P-13 新設) accepted 2026-05-25
ADR-0022 X4-0 canonical layout 確定 (3-domain self-host + verification sibling + Diátaxis/steering 除去 + fix) accepted 2026-05-25
ADR-0023 X4-C scratch→architecture 物理 migration (canonical layout 実体化 + scratch 撤去) accepted 2026-05-26
ADR-0024 folio init scope (consumer Layer 1 canonical scaffold + folio.config.yaml 生成) accepted 2026-05-26
ADR-0025 folio fix + validate broken-reverse gate (双方向 link materialize, REQ-REL-002/004) accepted 2026-05-26
ADR-0026 test-placement model 是正 (verification/ → tests/ rename + consumer test 配置 非規定) accepted 2026-05-26
ADR-0027 X4-D folio-architect 7-Phase SKILL 昇格 + Phase F review agents 3 個 (ears/vocabulary/ssot、 explorer/architect は X5+) accepted 2026-05-26
ADR-0028 X5-γ 二層 enforcement モデル + prose-gate 機械化 (validate に REQ-CI-013/014/015、 011/012 は agent-only、 minimal CI) accepted 2026-05-26
ADR-0029 X5-γ Phase F agent セット確定 (temporal build / structure cut / explorer・architect・stakeholder defer) + §7.2 完成形 anchor 改訂 accepted 2026-05-26
ADR-0030 folio v1.0 stability criteria + version formalization (draft→1.0.0、 frozen-ADR provenance 保全、 strict-SemVer 移行) accepted 2026-05-26
ADR-0031 mattpocock authoring-pattern 吸収 (grill 流 elicitation + adoption-aware folio-architect 統合 + glossary enrich + ADR-worthiness + lazy materialize、 protocol-only / v1.x) accepted 2026-05-27
ADR-0032 v1.0 goal 精緻化 (1.0.0 を defer + authoring-quality criterion H 追加 + ADR-0031 を 0.x 実装に resequence、 ADR-0030/0031 partial-revise) accepted 2026-05-27
ADR-0033 dual-audience HTML hub (machine SSoT + human 派生 view を 1 DOM に co-author、 ADR-0028 enforcement で consistency 担保) accepted 2026-05-29
ADR-0034 object/term cross-reference system (in-band xref + hover tooltip + 生成 AI-graph を hybrid、 維持は folio fix materialize + validate completeness、 DB-as-SSoT 却下) accepted 2026-05-30
ADR-0035 walkable architecture nav-derive (graph から index/cluster-nav を生成、 golden 型 commit-in-place、 generated-view を interpretive-gap で授権) proposed 2026-06-01
ADR-0036 folio-vocabulary glossary derive + partition (folio-closed 語彙を canonical author→ship→consumer derive、 hover+click 両描画、 completeness は best-effort で ADR-0034 §2.8 を extend) proposed 2026-06-01
ADR-0037 render-safety 二層化 (static floor 全配布 + deterministic browser ceiling = playwright で flowchart 幾何 overlap を CI 検出する folio dogfood、 ADR-0028 の「ceiling」語を LLM-advisory と deterministic-blocking に二分し ADR-0020 validate scope を拡張) accepted 2026-06-04
ADR-0038 constitution P-14 (Human Readability) 新設 amendment — 人間可読性を機械可読性と同格の検証対象とする構造要求型原則 (各ページ種別に主読者層の定義を要求、 具体割当は rules 委任) accepted 2026-06-11
ADR-0039 human-first presentation template layer (landing template + 全ページ chrome 注入 + 層別既定表示 + audience toggle + readability 二層 gate、 ADR-0038 P-14 を実装する機構群) accepted 2026-06-11
ADR-0040 human-layer presentation compression (人間層 = time-box 付きプレゼン 10〜20 分 / 機械層 = 無制限の原稿。 informative prose の audience 降格 + 章要旨/章図 + 既定表示の人間プレゼン化 + 圧縮道具 2 系統 + 一次資料層の区分。 ADR-0039 §2.4 既定表示を改訂) accepted 2026-06-12
ADR-0041 human-layer visual design system (人間層を「要件定義書の汎用ビジュアル design system」と再定義。 deck 帯 × 高密度の視覚言語 + 環境追従テーマ + 機械 SSoT からの別ファイル生成 + 2-gate 検証 (persona walk + fidelity)。 ADR-0040 の圧縮 = 隠蔽を「視覚再提示」へ改訂、 ADR-0033 Option A' derive を起動) accepted 2026-06-15
ADR-0042 hybrid generation + dense-table readability strategy (人間プレゼン生成をハイブリッド化 = 構造は機械 SSoT から決定的組立・捏造原理不可 / opus は prose スロットのみ充填、 密表は A/B 戦略で非エンジニア可読化 = 監査グリッドは畳む + 平易要約 / 要件本体は plain 行で噛み砕く。 ADR-0041 §2.2/§2.4 を partial-revise、 §2.6 γ scope 不変) accepted 2026-06-15

番号体系メモ — ADR 番号の割当と起票経緯の per-ADR 記録 (時系列):

retrospective 起票 (実装・e2e 検証後の追認)
ADR-0004 (JSON-LD lint) / ADR-0006 (caller marker) / ADR-0019 (path boundary) は 2026-05-25 に retrospective 起票済 (試作実装 + e2e 検証後、 §3 table 参照)。 ADR-0018 (CLI golden-diff harness) は 2026-05-25 に Track 1 実装後 retrospective 起票済 (§3 table)。 ADR-0017 (verification の unit/integration 境界) も 2026-05-25 に Track 1/2 後 retrospective 起票済 (§3 table)。
欠番・予約・見送り・起票待ち
残る ADR-0005 / 0008〜0012 は plugin-architecture-research §8 および plugin-sandbox-verification-research §9 の起票候補として予約 (user 承認後起票)。 ADR-0014 (EARS REQ → scenario 導出) は verification.html §3 で実質規範化されたため別 ADR 起票は見送り。 残る ADR-0016 (exit code 中心 assertion、 Gap 1 解消後) は SHOULD ランクで起票待ち。
ADR-0007 — context injection
ADR-0007 (context injection、 SessionStart + PreCompact) は 2026-05-25 に Track 2 着手の forward decision として user 承認・起票済 (§3 table)。
ADR-0020 — folio validate 試作 scope
ADR-0020 (folio validate 試作 scope = 内部 link-integrity + jsonld structural) は 2026-05-25 に Track 3 forward decision として user 承認・起票済 (§3 table)。
ADR-0021 — constitution X4 amendment
ADR-0021 (constitution X4 amendment = 脱-instance + 3-domain + P-13 新設) は 2026-05-25 に X4 先行タスクとして user 承認・起票済 (§3 table、 SemVer 0.5.0-draft)。
ADR-0022 — X4-0 canonical layout 確定
ADR-0022 (X4-0 canonical layout 確定 = architecture/spec/ flat self-host + verification sibling + Diátaxis/steering 除去 + fix 命名) は 2026-05-25 に ADR-0021 後の X4-0 layout 確定として user 承認 (AskUq F1/F3/F4)・起票済 (§3 table)。
ADR-0023 — X4-C scratch→architecture 物理 migration
ADR-0023 (X4-C scratch→architecture 物理 migration = canonical layout 実体化 + scratch 撤去) は 2026-05-26 に ADR-0022 後の物理移動の実行決定として user 承認 (AskUq Q1/Q2/Q3)・起票済 (§3 table、 実行は SPAWN + feature-dev)。
ADR-0024 — folio init scope
ADR-0024 (folio init scope = consumer Layer 1 canonical scaffold + folio.config.yaml 生成) は 2026-05-26 に X4-A forward decision として user 承認 (AskUq 標準 seed + ADR 起票)・起票済 (§3 table、 検証 = REQ-VER-014、 実装は SPAWN)。
ADR-0025 — folio fix + broken-reverse gate
ADR-0025 (folio fix + validate broken-reverse gate = 双方向 link materialize、 REQ-REL-002/004) は 2026-05-26 に X4-B forward decision として user 承認 (AskUq fix+gate 両方 + ADR 起票)・起票済 (§3 table、 検証 = REQ-VER-015、 validate を ADR-0020 の 2→3 gate に拡張、 実装は SPAWN)。
ADR-0026 — test-placement model 是正
ADR-0026 (test-placement model 是正 = verification/ → tests/ rename + consumer test 配置 非規定) は 2026-05-26 に X4-F 是正フェーズとして user 承認 (AskUq frozen-ADR href-only + init scaffold なし + PARENT 一括)・起票済 (§3 table、 ADR-0022 の verification sibling 配置 + ADR-0024 init scaffold を P-13(b) 整合へ revise、 「verification」 概念/contract は dir 名と独立存続)。
ADR-0027 — X4-D folio-architect SKILL + review agents
ADR-0027 (X4-D folio-architect 7-Phase SKILL 昇格 + Phase F review agents 3 個) は 2026-05-26 に X4-D forward decision として user 承認 (AskUq agent 起点 = 2-3 review agent を X4 で + specialist = ears/vocabulary/ssot)・起票済 (§3 table、 §7.6 growth path を「X4 = 7-Phase SKILL + 2-3 review agent」に amend、 spec-explorer/architect + structure/temporal/stakeholder review は X5+、 検証 = REQ-VER-016 structural + e2e)。
ADR-0028 / ADR-0029 — X5-γ 二層 enforcement + Phase F agent セット
ADR-0028 (X5-γ 二層 enforcement モデル + prose-gate 機械化) と ADR-0029 (X5-γ Phase F agent セット確定 + §7.2 完成形 anchor 改訂) は 2026-05-26 に X5 方向性 AskUq (γ = 選択的完成、 目標「長期的に安定する folio plugin」) を承けた forward decision として user 承認 (このまま進行可)・起票済 (§3 table)。 ADR-0028 = REQ-CI-013/014/015 を folio validate に機械化 (deterministic floor) + 011/012 は Phase F agent ceiling + minimal CI (Inspect AI は DEFER)。 ADR-0029 = temporal review agent 追加 / structure agent は validate 被覆ゆえ cut / spec-explorer・architect・stakeholder review は post-1.0 defer (ADR-0027 の §7.2 完成形 8 agents 「未来 anchor 保持」 stance を v1.0 確定セットへ revise、 実 amend は WS2)。
ADR-0030 — v1.0 stability criteria
ADR-0030 (folio v1.0 stability criteria + version formalization) は 2026-05-26 に X5-γ core (ADR-0028/0029 + WS1/2/4) 完遂後の version 確定タスクとして起票 (2026-05-27 user 承認 = accepted、 §2.2 bump は criterion D / WS3 後 = WS5)。 v1.0 昇格を 7 criteria (constitution 凍結 / self-host validate clean / 二層 enforcement 完備 / verification GREEN / CI gating / CLI surface 凍結 / consumer contract 安定) に gate 化し、 version bump scope を living spec 7 本 + plugin.json + bin/folio に限定 (frozen ADR の authoring-time provenance + constitution P-10 immutability を保全、 「28 spec 一括 bump」 を棄却)、 1.0.0 以降の strict-SemVer (constitution §5) breaking 定義を明文化。 残 gate = criterion D の orchestration walk (WS3)。
ADR-0031 — mattpocock authoring-pattern 吸収
ADR-0031 (mattpocock authoring-pattern 吸収) は 2026-05-27 に whisper 実 adoption レビュー + mattpocock-skills 調査 (doobidoo 3eb9160f / 5a8f6e53、 repo mattpocock-skills MIT) を承けた forward decision として /grill-me 対話 (1 問ずつ + 推奨回答) で 8+1 論点を解決・設計確定し起票 (status proposed、 user 承認待ち)。 grill 流 elicitation / adoption-aware folio-architect 統合 (folio-init 分離撤回) / vocabulary.yaml glossary enrich / ADR-worthiness を rules §10.3 / code-cross-reference を Phase B technique に — protocol-only 吸収で機械検証核は不変、 実装は v1.x (ADR-0030 WS5 後)、 ADR-0024 init seed + ADR-0027 architect scope を partial revise (frozen 本文不変)。
ADR-0032 — v1.0 goal 精緻化・defer
ADR-0032 (v1.0 goal 精緻化) は 2026-05-27 に WS5 (1.0.0 bump) 直前の再検討で起票・user 承認 — criterion D (orchestration 動作) が authoring 品質を保証せず (whisper 空 constitution failure) と再認識し、 1.0.0 を「実用に耐える (grill 吸収後)」 の user 判断に gate する決定。 1.0.0 を defer (0.x 継続)、 authoring-quality を criterion H として追加、 ADR-0031 を 0.x 実装に resequence (post-1.0 → pre-1.0)。 ADR-0030 §2.6 timing + ADR-0031 §2.1/§2.8 を partial-revise (criteria A〜G・bump scope・SemVer 定義・設計内容は不変、 本文 frozen、 reverse-link + prose で trace)。 0.x ゆえ rules §10.3 を MUST 化する選択肢も回復。
ADR-0033 — dual-audience HTML hub
ADR-0033 (dual-audience HTML hub) は 2026-05-29 に 1.0.0 pre-flight の HTML quality 改善から派生した forward decision として、 grill (7 問) + research (80 sources、 critic PASS 8.3/10、 doobidoo 92de547a) で設計確定後 user 承認 (AskUq 要約承認 + 2 段階 spawn)・起票済 (§3 table)。 machine 精密 normative = canonical SSoT / human essence + graphical = 派生 view を data-audience (closed 2 値) + <details> fold で 1 HTML に co-author する human↔AI hub を決定。 金脈 = DITA @audience / literate programming が double-SSoT を「単一ソース + 機械的導出 (view は派生・維持しない)」 で構造保証するのに対し、 folio の 1-DOM co-author は novelty ゆえ ADR-0028 二層 enforcement (validate floor REQ-DA-STRUCT-* + 新 Phase F spec-review-fidelity ceiling) が導出の代役。 Option B (co-author+enforce、 no-build) を採用し Option A' (derive-into-DOM、 build-time、 P-13 緊張) を roadmap に。 ADR-0020 validate scope + ADR-0029 Phase F セットを拡張 (frozen 本文不変、 reverse-link + prose で trace)、 rules に data-audience taxonomy + JS governance + dual-audience conditional-normative + 視覚 guidance、 実装は 2 段階 SPAWN (規範+enforcement → 適用層)。
ADR-0034 — object/term cross-reference system
ADR-0034 (object/term cross-reference system) は 2026-05-30 に ADR-0033 (dual-audience) SHIP 後 user が「v1.0.0 前に追加すべき機能」として提案した forward decision として、 grill (13 問) + /deep-research (106 agent、 24 source、 23/25 claim 確認) で設計確定後 user 承認・起票済 (§3 table)。 architecture 全体の defined-object (P-N/REQ/ADR/rule) に in-band untyped xref + no-JS hover tooltip を張り、 folio fix で裸 token を materialize し folio validate 4 gate (uniqueness/resolve/completeness/tooltip-consistency) で穴を機械保証、 AI-graph は inventory.json/prime projection、 glossary は vocabulary.yaml SSoT の best-effort tier。 金脈 = 維持性が dual-audience と同型 (導出=穴なし vs 手動=穴)、 /deep-research が hybrid (in-band SSoT + 生成 projection) を 4 goal (長期安定/再現性/human 見やすい/AI 使いやすい@大規模) 全 1 位と判定し DB-as-SSoT を却下 (git-diff 可能な canonical file を gitignored export に降格させ最高 migration risk、 かつ flat JSON-LD で RDF 級 traversal が届くため不要)。 ADR-0020 validate scope + ADR-0025 fix materialize + ADR-0031 vocabulary glossary を拡張 (frozen 本文不変、 reverse-link + prose で trace)、 constitution 不変、 実装は多段 SPAWN。 本 feature が ADR-0030/ADR-0032 の 1.0.0 timing を gate。
ADR-0035 / ADR-0036 — walkable nav-derive + glossary derive
ADR-0035 (walkable architecture nav-derive) と ADR-0036 (folio-vocabulary glossary derive + partition) は 2026-06-01 に #120 walk 生成物の cluster 横断ナビ欠如を user が提起した「architecture nav + folio-用語 glossary」論点から派生した forward decision として、 grill (6 問) + 4軸 design workflow + 敵対的 critique (blocker 3 解消) で設計確定後 user 承認・起票 (status proposed、 default 採用)。 ADR-0035 = top-level index + cluster 横断 nav を folio build が graph (head metadata + @id path-prefix + objectGraph の JOIN) から生成し golden 型 commit-in-place、 P-7/P-13 の空間排除は HOW+verification を名指すゆえ generated-view を憲法改訂なしに ADR で授権 (interpretive-gap)、 ADR-0023 の gitignore-projection を新 artifact class に限り反転、 ADR-0024 init + ADR-0025 materialize + ADR-0020 validate を拡張。 ADR-0036 = folio が folio-framework 語の canonical 定義を上流で author→ship・consumer は derive、 hover+click 両描画、 closed/open 分割を明文化、 completeness は best-effort 保存 (REQ-GLOSS-001 据置 + 新 REQ-GLOSS-002 追加で ADR-0034 §2.8 を extend、 supersede しない)、 ADR-0035 に depends。 両 ADR とも constitution 不変、 criterion(c)「実用に耐える」判断への INPUT (#127、 pre-1.0.0 full)。
ADR-0037 — render-safety 二層化
ADR-0037 (render-safety 二層化) は 2026-06-04 に criterion-c で user が発見した folio-self-spec 図5 の subgraph 多行タイトル overlap への対応 (epic folio-l2g、 Slice A〜C SHIP) 後の retrospective decision として user 承認 (A 選択)・起票 (status accepted)。 floor (static bash lint、 全 consumer 配布、 REQ-VER-021) + ceiling (playwright で flowchart 幾何 overlap を実 render 検出、 CI-only folio dogfood、 決定的ゆえ blocking) の二層を確定し、 ADR-0028 の「ceiling = 非決定的ゆえ CI 非搭載」を LLM ceiling に限定 (決定的 render ceiling を排除しない、 CI 採用基準=決定性) ・ADR-0020 validate scope を render-safety ceiling に拡張 (frozen 本文不変、 reverse-link + prose で trace)。 独立 4-lens ceiling review が fail-open (render 不足の false-clean) / constitution frozen deadlock / font 未 pin / overclaim を捕捉し ship 前に反映、 専用 REQ-VER-022 trace + detector generality は follow-up (folio-w5z)。
ADR-0038 / ADR-0039 — P-14 amendment + presentation template layer
ADR-0038 (constitution P-14 amendment) と ADR-0039 (presentation template layer) は 2026-06-10〜11 に criterion-c 徹底討論 (根因 = 機械 gate のある価値のみ磨かれる非対称、 独立 5-lens 監査で実証) + presentation-design-patterns research + ADR grill (G1〜G7) を承けた forward decision として起票し、 同日 user 承認で accepted 化 (同 commit 系で constitution へ P-14 append + count-fix + mermaid initialize 整合 + version 0.6.0-draft bump を実施)。 ADR-0038 が原則 (P-10 手続き) を、 ADR-0039 が機構を担う 2 本構成 (G1)。
ADR-0040 — human-layer presentation compression
2026-06-12 の user criterion-c walk 判定 (toggle 不在ページ + 人間向け表示でも字が多すぎ図が少なすぎる) を起点に、 grill 全 6 論点 (主軸 = 人間層圧縮 / 住所 = 1-DOM 深化 / 道具 = 2 系統 / 図の語彙 / gate + time-box 10〜20 分 / scope + 1.0.0 前提化) を user と解消した forward decision。 同日 user 承認で accepted 起票。 ADR-0039 の型 (template/chrome/toggle) の上に「中身の圧縮」を重ねる関係で、 §2.4 既定表示のみ改訂。 実装は epic folio-8jy。
ADR-0041 — human-layer visual design system
2026-06-15 の user grill (1.0.0 後に ADR-0040 の圧縮済 corpus を実機再評価し「読みづらい・専門用語多すぎ・全然グラフィカルでない」と判定) を起点に、 視覚サンプル反復 (会議室予約 → EC 決済) + EC checkout proof (persona = 合格 / fidelity = AI 捏造の RTM 行を検出) で設計確定した forward decision。 status accepted (2026-06-15 user 承認 — grill 設計確定 + ADR 本文 review クリア)。 人間層を「要件定義書の汎用ビジュアル design system + 機械 SSoT からの生成 + 2-gate 検証」と再定義し、 ADR-0040 §2.1/§2.2 (圧縮 = 隠蔽) を「視覚再提示」へ改訂・ADR-0039 §2.4 を design system 部品で具体化・ADR-0033 §2.3 が残した derive 原理を別ファイル形態で起動 (Option A' の into-DOM 版は roadmap 据置。 frozen 本文不変、 reverse-link + prose で trace)。 floor を「長さ」から visual-first/用語被覆/renders-unbroken へ刷新、 適用範囲 = γ (SRS 核を ISO/IEC/IEEE 29148 で完全性錨留め + folio の ADR/research/原則は拡張パック)。 実装は後方互換 MINOR (1.1.0)、 epic folio-c5g。
ADR-0042 — hybrid generation + dense-table readability strategy
2026-06-15 の epic folio-c5g / S4 (generator folio-ruc) 着手前 grill を起点に、 ADR-0041 の生成方式 (§2.4) と視覚言語 (§2.2) を refine した forward decision。 status accepted (2026-06-15 user 承認)。 (1) 生成をハイブリッド化 — 構造 (要件表/RTM/NFR 表) は構造化された機械 SSoT から決定的組立 (トレースから各セル導出 = 捏造原理的に不可能)、 opus は prose スロット (章リード/根拠/専門語併記/サマリ) のみ充填。 fidelity gate は prose に縮小。 EC proof で LLM 生成が元に無い RTM 行を捏造した 1 観測 (構造生成の原理的捏造リスク) が根拠。 (2) 密表の非エンジニア可読化を A/B 戦略で assembler に織り込み — rtm-grid register は既定折りたたみ + 空不可の平易要約 (B)、 要件本体/NFR は各行 plain-language スロット + 専門語自動併記で畳まない (A)、 元々平易な表は据置。 新スロットの非空は floor (gate G no-TBD = taxonomy §7.2 が S5 へ申し送った未実装 arm ゆえ S5 で建てる) が測り、 可読性/忠実性は ceiling に留めて二層 (taxonomy §5.1 「floor 単独 GREEN 不可」) を保つ。 ADR-0041 §2.2/§2.4 を partial-revise (§2.6 γ scope・§2.1 design system・§2.5 2-gate は不変、 frozen 本文不変、 ADR-0041 は accepted 据置、 ADR-0032 と同型の reverse-link + prose trace)、 taxonomy (S2) §3/§5 を実装前提とする。 実装は S4 folio-ruc 以降、 後方互換 MINOR (1.1.0)。

§4. Naming Convention

ADR file 名は ADR-NNNN-<slug>.html (4 桁連番 + kebab-case slug)。 命名規約の SSoT は rules.html §3

ADR file 名は ADR-NNNN-<slug>.html 形式 (4 桁連番 + kebab-case slug)。 rules.html §3 File Naming Convention を参照。

§5. ADR Creation Procedure

起票すべきか (worthiness) は rules §10.3 の 3 条件 (hard-to-reverse / surprising-without-context / real-trade-off) で判断し、 起票が決まったら constitution §6 Amendment Procedure の手順に従う。 標準手順は下の 5 ステップ。

いつ起票するか (worthiness)rules §10.3 (ADR Worthiness) に従う — decision が hard-to-reverse かつ surprising-without-context かつ real-trade-off の 3 条件すべてを満たす時のみ ADR にする (ADR-0031 §2.5)。 本 §5 は起票が決まった後の手順を規定する (P-7: worthiness 基準は rules に SSoT、 ここでは重複しない)。

起票が決まったら constitution §6 Amendment Procedure に従う (ADR-0021 で changes/ + archive/ 廃止):

  1. 変更提案を proposal として起案 (review 用、 version control branch 上。 専用 changes/ dir は持たない)。
  2. user 承認を取得 (P-10、 constitution 改訂の場合)。
  3. ADR を Accepted status で本 cluster に作成。
  4. design-intent 文書を編集し、 SemVer bump + delta marker を inline 追加。
  5. version control の review (PR / diff) で trace を確定 (archive/ への移動は行わない — git 履歴が archive を兼ねる)。

例外: folio 初の ADR (ADR-0001) は bootstrap 段階で起票されたため proposal step を skip した折衷を採用。 後続 ADR は本手順を遵守する MUST。