#74スコア 4.25/5教育

AI に面談予約を作らせてみた — ScheduleGrid が「予約グリッド」でも一発で見つかった(やってみた #74)

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

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

解説記事

AI に面談予約を作らせてみた — ScheduleGrid が「予約グリッド」でも一発で見つかった(やってみた #74)

やってみたシリーズ: 自作のデザインシステム @gunjo/ui群青)を、文脈ゼロの cold な AI に実 UI で作らせる連載。教育5枚目=教育の締め——三者面談予約(時間枠×日の予約グリッド × 空き/予約済/受付不可 × 予約率 × 未予約フォロー × 面談一覧)。

教育の5枚目で締め。保護者面談の時間枠を開き、家庭が予約する画面。そして #71 で広げた ScheduleGrid の framing が、3回連続で別マトリクスに刺さった——今回は「予約グリッド」。

結果 — 4.25/5

tsc/build 緑・console 0・375px横溢れ0・予約枠グリッド・予約/変更/キャンセル(重複防止+ライブ再計算)・予約率メーター・未予約リスト+一斉連絡・面談一覧。重要部品の手組みゼロ

今回の主役 — ScheduleGrid が「予約グリッド」でも一発で見つかった(3回連続)

cold AI が予約枠グリッド(時間枠×日)に何を使ったか:

ScheduleGrid is the standout. Its JSDoc and the docs frame it as a general "rows×columns matrix" — and explicitly name "availability and room/resource booking grids." It bent onto conference booking with zero fighting... It even ships [contain:paint] so mobile horizontal scroll is contained — exactly the phone requirement. I found it on the first pass through index.ts.

#71 で「時間割用」と狭く書いて見つからなかった ScheduleGrid を、「汎用2Dマトリクス(…予約グリッド含む)」に広げた。その効果が #72 出欠 → #73 課題提出 → #74 予約 と3回連続で実証された。framing を広げた1回の修正が、その後ずっと"発見される"配当を生み続けている。

他の越境も継続: Badge icon → 空き/予約済/受付不可 の色非依存ピル(JSDoc が「status grids / legends の recurring need」と明記=狙い通り)・Meter higher-is-better+target → 予約率(「10家庭/12家庭(83%)目標12家庭」)・Statistic → 未予約フォロー状態。

src 変更ゼロ(no-build)— 教育を締める

今回 src build なし。 観測点(TimeSlotPicker#263 の2回目・連続時間軸#142残り)は、cold AI が「セル自体が予約ピッカー(クリック→Sheet)」と判断したため出ず、ScheduleGrid+Sheet の合成で過不足なく組めた。kit が面談予約をまるごと既存部品で賄った=教育5枚を綺麗に締めた。

起票だけ(全1回目・軽微)

  • 🟡 ScheduleGrid にセル選択状態/cellClassName 無(開いてるセルをハイライトできない・#299)。
  • 🟡 Badge と Tag の API 不整合(Badge は icon あり size 無し・Tag は size あり icon 無し・#300)。
  • 🟡 Toast が文字列のみ(title/description・action ボタン・JSX 不可・#301)。
  • 🟢 誤検知1件: cold AI が「Textarea/Input に label 無し」と報告→実際は #245/#249 で実装済(型に label/description あり)。cold AI が見つけられず手組みした=部品はあるのに使われない現象が今度は Textarea で(軽微・既に動く)。

学び — 「広げた framing」は1回の修正が配当を生み続ける

#71 で ScheduleGrid の説明を広げた。その後 #72/#73/#74 と3回連続で、別々のマトリクス(出欠・課題提出・予約)に一発で見つかって採用された。 framing の拡張は「その場しのぎ」ではなく、以後の全利用者(人でも AI でも)に効き続ける資産。一方 #74 では Textarea で逆の現象(実装済なのに見つけられず手組み)も出た——「在る」と「見つかる」のギャップは、コンポーネントごとに framing を磨き続けないと再発する。教育5枚で、kit は教育ドメインをほぼ完全に賄うことを確認した。

教育シリーズ総括(#70〜#74)

#画面ハイライト
70時間割3→ScheduleGrid build(3回出たタイムグリッド)
71成績管理4ScheduleGrid 見つからず→framing 拡張
72出欠4.5拡張が効いて一発発見Badge icon build
73学習進捗LMS4.5直近 build が全再利用=複利ピーク+Grid 列 build
74面談予約4.25ScheduleGrid が予約グリッドにも(3回連続)・no-build

次回予告(やってみた #75)

  • 別業界へ pivot(公共/自治体・メディア/出版 など)。連続時間軸スケジューラ#142残り・系譜#281 の大型 primitive も観測継続。旅行は後で腰据えて作り込む枠。

試す

まだ alpha。広げた ScheduleGrid が3回連続で別マトリクスに刺さり、教育5枚を no-build で締めた回。


<!-- 公開前: 相互URL差込/スクショ確定/EN(dev.to)ミラー -->

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

この画面のソースが直接 import している部品です。

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

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