Design Decisions — Pilot Page / Variant A

ROUND 001 ・ regenerated 2026-05-28 ・ canon-verify reinforced edition
Variant: A (B2B 提案書スタイル) ・ Tone: keigo + enterprise document affordance
Generated by: kashi-ui-mockupper

本書は pilot/A/index.html mockup の設計判断記録です。 とりわけ 2026-05-27 の fabrication 事故 (Justine が直接 catch、 月額 ¥240,000 / 90 日 / SOC 2 / 専任 CS / 完全削除証明書 等の canon 矛盾を creative 創作) の再発防止として、 canon-verified value のみを採用した経緯と、 enterprise 文書 affordance を維持するために採った代替表現を記述します。

Self-audit ・ Forbidden patterns grep (regenerate 後)
Canon 言及確認 (必須要素)

1. 主タスクと上位構造

決定: 「9 セクション + 表紙 + 目次 構成の Pilot Programme Brief」 という、 稟議書類添付想定の文書 affordance を採用
pilot ページのコア conversion は 「人事責任者から 30 日間の試用契約を取り付ける」 こと。 大手企業の人事責任者は単独では判断せず、 役員・法務・情シスへ共有 → 稟議で決裁という flow を踏む。 そのため、 ページそのものを 「上長・他部門に転送できる完結した文書」 として再構成。 DOC-ID、 版数、 目次、 セクション番号、 各 cell の出典明記 (canon source) を全て盛り込み、 印刷 / PDF 化しても通用するように設計。
canon: pilotPage (ja.json) / permanent-ui-principles §7 (progressive disclosure but doc-grade depth) / 役員稟議文化 (research 既知)
決定: cover 右上に DOC-ID + 版数 + 「月間受入枠 / 毎月 3 枠限定」 callout を配置
「毎月 3 枠限定」 は canon の核心 fact (pilotCtaSubline) であり、 申込判断における urgency driver でもある。 cover の最も目に入る場所 (右上、 evergreen ボーダー付き callout) に配置し、 readers が 「今申し込むか後で良いか」 の判断軸を即座に得られるようにした。
canon: pilotCtaSubline「毎月3枠限定。」 / pilotPage.expect.items.slots
決定: 「DOCUMENT / DOC-ID / 版数」 strip をページ最上部に固定
enterprise 文書 affordance のための装飾要素 (実質的には 「これは公文書である」 と認識させる視覚的 anchor)。 内容は creative ではなく機械的な metadata のみで、 fabrication risk なし。
design rationale: 提案書 / 仕様書 / 監査文書 で頻出する pattern (research/japan-market-design)

2. レイアウト判断

決定: max-width 1100px、 sections は white card + 1px border (var(--line) #D6D2C4) で区切る
「文書感」 を最優先。 cream 背景 (#FAFAF7) に白カード積層で 「ページが捲られているような」 視覚的 metaphor を作る。 dense layout だが、 各 section が border で明確に区切られていることで、 印刷 PDF 化した際にも page break が綺麗に決まる。
design_system_v1.md: --color-cream + ink scale を base palette として尊重
決定: section 番号は section-num pill (mono font + ベージュ背景) で左に分離、 title と並列
IBM Plex Mono の利用は 「ファイル名 / 識別子 / 仕様書 caption」 という mechanical な context に限定 (canon の type 役割定義に整合)。 SECTION 1 〜 SECTION 9 という機械的な ordering は、 文書 affordance を強化しつつ、 装飾的ではなくナビゲーション機能として働く。
design_system_v1.md: IBM Plex Mono = mechanical / metadata 用途
決定: 30 日間タイムラインを 5 column grid (DAY 0 / 7 / 14 / 21 / 30) で表現、 各 phase に独立した card
Kashi の canon timeline (salesHub.pilotTimeline.stops) を視覚化。 phase 名は canon そのままを使用 (「キックオフ / 初期設定・調整 / 中間レビュー / 評価条件の確認 / 最終レビュー」)。 days も canon の通り (salesHub.pilotTimeline.days = 「0日目 / 7日目 / 14日目 / 21日目 / 30日目」)。 各 phase の body は canon の文言を保ちつつ、 「Day 0 は Zoom Pro 環境の接続確認」 等の運用ディテールを controlled に補足。
canon: salesHub.pilotTimeline.stops + days / pilotPage.expect

3. 採用した design tokens

Token本 mockup での用途
--color-kashi-evergreen#1F3D33doc-strip 背景、 brand mark、 H1〜H3、 spec-table label、 submit button、 sticky CTA bar 背景、 phase card top stripe
--color-kashi-evergreen-deep#244A3Dbutton hover state (submit, nav-cta)
--color-emerald-700#047857phase-day label、 eligibility bullets、 必須項目 marker、 link、 slot callout border
--color-cream#F5F0E6sticky CTA button 背景 (dark bar 上のコントラスト確保)
--ink#2A3A1E本文・spec-table value
--ink-soft#4B5746section-lead、 info-card body、 secondary text
--ink-faint#7A8273doc-meta、 source-tag、 footer、 toc 番号
Fraunces500/italich1〜h4、 cover subtitle、 phase-title、 sticky CTA lead — serif による文書感
IBM Plex Mono400/500DOC-ID、 doc-meta、 section-num、 source code 引用、 spec-table header、 ckey label — mechanical context
IBM Plex Sans400/500/600本文 sans、 form labels、 ボタン text
Zen Kaku Gothic Newfallback日本語のフォールバック (Plex Sans の JA glyphs 補完)

evidence-grade tokens (--kashi-grade-*) は本ページでは 不採用。 pilot 申込ページの文脈では grade 表示の意味的必要性が無いため (evidence grade はメンバー・チーム個別レビュー画面の concept)。 Variant A の B2B 文書 tone は data grade UI ではなく仕様書 typography で表現。

4. Canon-verify 詳細表 (前回事故の再発防止)

本ページで言及している全 「期間 / 価格 / integration / 認証 / team composition / 成果 KPI / 納品物」 項目について、 canon source の有無と、 canon に無い場合の代替表現を明記。

項目本書での表現Canon source前回 fabrication との差分
対象規模 1 チーム単位 pilotPage.hero.titleLine1 前回 「300 名規模対応」 fabrication → 削除、 「1 チーム」 統一
実施期間 30 日間 pilotPage.hero.titleLine2 + pilotCtaSubline 前回 「90 日 PoC」 fabrication → 削除、 「30 日間」 統一
会議システム Zoom Pro プランのみ運用可 memory project_zoom_integration_pending 前回 「Google Meet / Teams 対応」 fabrication → 削除、 「他の会議システムは対応していない」 を明記
パイロット費用 パイロット期間中は無料 pilotPage.expect.items.pricing「特別条件」 前回 「¥240,000 / 月」 fabrication → 削除、 「無料」 のみ
本契約価格 個別にご相談 canon に公開価格無し 前回 「¥240,000 / 月」 fabrication → 削除、 「ご相談ください」 placeholder。 価格表記についての説明 panel を明示追加
認証取得 (SOC 2 等) 言及無し canon source 無し 前回 「SOC 2 Type II 準拠」 fabrication → 削除、 言及そのものを削除
認証連携 (SSO 等) 「貴社のご要件に応じて事前ミーティングで個別に協議」 canon source 無し 前回 「SSO (SAML / OIDC) 連携」 fabrication → 削除、 「個別協議」 placeholder
運用支援体制 「Kashi チームが直接サポート」 pilotPage.expect.items.slots「私たちが直接伴走します」 前回 「専任 CS 1 名 + ソリューションエンジニア 1 名」 fabrication → 削除、 controlled な総称表現に置換
納品物 「具体的な可視化形式・粒度は事前ミーティングで個別決定」 canon に確定 list 無し 前回 「個別 ROI シート / 観測レポート (月次) / セキュリティ白書 / 監査ログエクスポート」 fabrication → 全削除、 「個別決定」 placeholder と canon 整合の controlled 表現のみ
成果保証 「特定の数値成果をお約束するものではない」 と明示 FORBIDDEN_CLAIMS_REGISTRY + permanent-ui-principles §2 前回 「離職率 ○% 改善」 「ROI ¥xxx 万」 fabrication → 削除、 さらに 「非目的」 card で明示的 disavow に転換 (variant C で実証された pattern)
データ削除 「契約書に明記」 canon source 無し 前回 「完全削除証明書を発行」 fabrication → 削除、 「契約書に明記」 placeholder
撤退条件 「pilot 中・終了時いずれも違約金なし」 doctrine 整合 (Kashi は引き止めない設計思想) 不変、 doctrine と整合
事前ミーティング 30 分 pilotPage.hero.leadLine2 不変、 canon そのまま
初回応答 24 時間以内 (営業日) pilotPage.form.lead 不変、 canon そのまま
運用ルール / 本ページ regenerate 時、 「数値 / 固有名 / 確定的 commitment 表現」 を追加・変更する場合は、 必ず /tmp/site_canon_facts.txt の whitelist と本表を照合してから書くこと。 whitelist に無いものは fabricate 禁止、 「ご相談ください」 「pilot 担当者と協議」 「契約書に明記」 等の placeholder に強制置換。

5. 削った要素 (前回 fabrication 案からの差分)

本 regenerate 版で 削除した要素 と、 削除理由

6. 追加した要素 (canon 整合・前回事故の再発防止のため)

7. 既知のトレードオフ / 未解決

トレードオフ 1: 「価格が公開されない」 ことが、 B2B enterprise readers にとって 「不誠実」 と映る可能性
解決策として 「価格表記に関するご案内」 panel を明示追加したが、 一部の readers (特に経理部門) は依然違和感を持つ可能性あり。 もし pilot の本契約価格が canon 化される時期が来たら、 spec-table の該当 row を実数に置換することで一発解消可能。 現時点では canon にないため fabricate しない discipline 優先。
トレードオフ 2: 「Zoom Pro のみ」 が、 Google Workspace / Microsoft 365 メインの企業を最初の段階で除外する
これは canon 制約による不可避な現実。 mockup 上で 「Meet / Teams 対応」 と書くことは fabrication なので不可。 中長期的に integration が増えた段階で section 5 「CONFERENCING」 row を更新することで対応。
トレードオフ 3: 「専任 CS」 等の dedicated role を約束しない ことで、 「導入後の伴走体制」 が薄く感じられる可能性
「Kashi チームが直接サポート」 という総称表現で、 期待値を controlled に保ちつつ、 「ご相談時に調整」 で柔軟性を担保。 実態に応じた約束のみ可能、 という Kashi の段階的成熟スタンスを正直に表現。
未解決 1: contact ページとの関係性
本ページの form は 「パイロット導入相談」 専用。 一般のお問い合わせ (取材、 投資家、 採用、 メディア等) は別 contact ページで受ける想定だが、 本ページからの誘導が footer のみで弱い。 contact ページの mockup と整合させる際に再検討対象。
未解決 2: 本ページの実装 (React / Next.js) 時のフォーム submit 先
現状 mockup は onsubmit preventDefault + alert のみ。 実装時は /api/pilot-requests (canon、 kashi/src/app/pilot/page.tsx 既存ルート) に POST し、 Vercel function logs に durable log → founder triage という flow を継承。

8. 実装フェーズへの引き継ぎ

該当する Kashi コード
影響を受ける canon copy
必要な新規コンポーネント
r19 既存課題のうち本案で同時解決されるもの
未解決 (実装時に別途検討)

9. Justine confirm 判断点

本 mockup を共同創業者・メンター・友人にシェアする前に、 Justine 自身が再確認すべき項目:

  1. 「毎月 3 枠限定」 の言及位置 — cover の slot-callout、 spec-table、 form actions、 sticky CTA sub の 4 箇所で言及。 過剰でないか / 不足してないか。
  2. 「本契約以降の費用 = 個別にご相談」 の説明 panel — readers が 「不誠実」 と感じる可能性を打ち消せているか。 共同創業者の感性確認推奨。
  3. 「Zoom Pro プランのみ運用可」 の明示 — 「Google Workspace 中心の企業からも問い合わせは欲しい」 という戦略的判断との trade-off。 ここを 「フェーズ目標」 等で曖昧にしたいなら、 mockup 上で文言調整が必要。
  4. 「本パイロットの非目的」 card — B2B 文書として明示的に 「お約束しないこと」 を書くのは異例。 readers が 「自信なさげに見える」 か 「正直で安心」 と取るかで評価が分かれる。 ここが今回最大の judgement call。
  5. 「Kashi チームが直接サポート」 の表現の弱さ — 「専任 CS」 と書けない代わりの controlled 表現。 「現状の Kashi の体制を正直に表す」 vs 「導入後の伴走感を演出」 の trade-off で、 前者を選んでいる。

本 DESIGN_DECISIONS.html は kashi-ui-mockupper agent によって 2026-05-28 に regenerate されたものです。 前バージョン (2026-05-27 fabrication 含む) の経緯は git ledger および workspace/process/LESSONS.md 参照。