#149スコア 4/5運輸:タクシー

AI にタクシーの乗車履歴・領収書を作らせてみた — TicketStub が「正しく使われなかった」回(やってみた #149)

ルート: /taxi-history
デスクトップ表示
モバイル表示

375px のビューポートで撮影。縦長のページはフレーム内をスクロールします。

解説記事

AI にタクシーの乗車履歴・領収書を作らせてみた — TicketStub が「正しく使われなかった」回(やってみた #149)

⁠やってみたシリーズ⁠: 自作のデザインシステム @gunjo/ui群青)を、群青のことを一度も見たことのない AI に、実際の画面で組ませていく連載。⁠タクシーの利用者向けを深掘り⁠(配車#147・予約#148 に続く3枚目。事業者向け6 に対し利用者向けを厚く継続中)——⁠乗車履歴・領収書・経費精算⁠(履歴一覧・領収書発行・但し書き/宛名・経費まとめ)。

結果 — 4/5、アカウント系も土台に乗った

tsc 緑・375px mobile-first。予備知識ゼロの AI(群青を一度も触っていない設定):

⁠日本の利用者向けの履歴/領収書画面に向いている。⁠ PageHeader/LoyaltySummaryCard/StatGroup/FilterChips/ListCard/AmountBreakdown/EditableField/Sheet/BottomActionBar の骨格はほぼそのまま使える・JPY 既定。

履歴一覧(ListCard)・利用サマリ(LoyaltySummaryCard+StatGroup)・絞り込み(FilterChips)・領収書(AmountBreakdown+宛名 EditableField+Sheet)・経費まとめ(複数選択+BottomActionBar)が全て摩擦ゼロ。⁠BottomActionBar は #147→#148→#149 と3連続で自力発見⁠(今回は選択モードの「選択中N件」バー)。

観測の核 — TicketStub が「正しく使われなかった」=守備範囲の確定の成熟形

領収書に何を使うか。素朴には「TicketStub(券面)が領収書っぽい」と当てたくなる。だが予備知識ゼロの AI は使わなかった:

⁠TicketStub は領収書に合わない。docstring が自分でそう言っている=『読み取れるパス/クーポン/会員証の券面(バーコード/QR+コードラベル)・スキャン入力の消費者側の対』で、紙の領収書ではない。日本の税の領収書にバーコードは無い。ここで TicketStub を使うのは間違い。正しく使わなかった。⁠

⁠これは別業界での自力発見の逆=『業界越えさせない』の成熟。⁠ #128 で TicketStub を作ったとき docstring に「ScanInput の消費者側の対・搭乗券/クーポン/会員証」と用途を明記し、索引で「読み取る→ScanInput / 提示する→TicketStub」と守備範囲を割った。その⁠守備範囲の明記が、9回後の予備知識ゼロの AI に『ここでは使うな』を正しく伝えた⁠

コンポーネントの docstring は「どこで使うか」だけでなく「⁠どこで使わないか⁠」も書く——両方書いて初めて、予備知識ゼロでも誤用を防げる。#146 の HeatmapChart(ここでない/ここだ)に続く、⁠守備範囲の確定の両面⁠のもう一例。⁠固まったコンポーネントの真の完成は、正しく使われることと、誤って使われないこと、両方が起きたとき。⁠

拾った欠落 — 月別グループの一覧と、モバイル複数選択の誤誘導

  • 🟠 ⁠SectionList/GroupedList⁠:月別のグループ(見出し+行+小計)を手組み。「⁠ListCard は1行・月見出し+小計を出すグループ一覧のコンポーネントが無い・履歴/利用明細/取引履歴/明細 の背骨⁠」=#404(StatusBoard の groups[]/Itinerary の days[] はあるが、汎用のグループ行の一覧が無い)。
  • ⁠索引の是正⁠:予備知識ゼロの AI が「モバイルの複数選択+一括」で DataTable(デスクトップの表)に誤誘導された→ListCard+Checkbox+BottomActionBar に是正 PR#405(索引が事業者向け/ダッシュボード寄りで利用者向けの選択を黙って誤誘導していた)。
  • 🟡 ListCard の selected が見た目だけ(aria-pressed/selected 無し)=#404 併記。

⁠今回 src の新規コンポーネントなし⁠(4/5・アカウント土台の業界越え・TicketStub の守備範囲を確定・SectionList を課題に記録・索引を是正)。

📊 コンポーネント化スコアボード(作成済 ⁠15個⁠

…PageHeader / Itinerary / TicketStub / Stringline / StatusBoard / ExpiryBadge / BottomActionBar 進行中:SectionList・DateTimePicker/PlaceField・ApproachCard・StatusLevel 2/3・Leaderboard/CaseTable

📋 タクシーの利用者向け 進捗(深掘り継続)

  • 🚕 ⁠タクシー:事業者向け6 / 利用者向け3(配車/予約/履歴)⁠ ← まだ 事業者向け6 と非対称・継続
  • 残り 利用者向け候補:乗車後 評価/忘れ物・会員/サブスク/クーポン・法人配車

次回予告(やってみた #150・節目)

  • タクシーの利用者向けをさらに(評価/忘れ物 or 会員/クーポン 等)。※どこを掘るかは、次回までに決める。

試す

TicketStub が「正しく使われなかった」——固まったコンポーネントの真の完成は、正しく使われることと、誤って使われないこと、両方が起きたとき。docstring は「どこで使わないか」も書く。

この連載は、作者が AI(Claude と Codex)と協働で制作しています。実験・検証の設計、判断、公開前の事実確認は人間が行い、実作業と下書き執筆は AI が担っています。

使用した @gunjo/ui コンポーネント

この画面のソースが直接 import しているコンポーネントです。

cold AI が組み上げた実コード

ファイル名をクリックでソースを展開できます。

業界別「AI指示書パック」、先行登録を受付中です。