2026-09-12 デモ版の質問を通常Initiationに採用する
依頼者の「質問内容もデモ版へ切り替えて再編集する」という選択に従い、初回の4項目接続方針の質問部分を更新する。PR #102に収録されたGameの導入・5場面・探索演出と質問内容を通常アプリへ接続する。
| 保存先・ID | 内容 | 保存形式 |
|---|---|---|
members.display_name | 呼び名 | 任意、最大40文字。完走条件外 |
v2-interests | HENKAKUで気になること | 定義済み選択肢の複数選択 |
v2-curiosity | いま気になっていること | 2000文字以内の自由入力 |
v2-experience | 誰かと何かを動かした経験 | 2000文字以内の自由入力 |
v2-readiness | 活動する準備 | 定義済み選択肢の単一選択 |
v2-contribution | この場所へ持っていきたいもの | 定義済み選択肢の単一選択 |
現在の本文と選択肢は lib/initiation/journey.ts が定義し、通常保存・完走判定・表示とデモの選択肢で共有する。デモ状態やlocalStorageへの依存は持ち込まない。
5問はすべて任意。空欄のNEXTと「まだ言葉にしない」は { "status": "skipped" }、回答は { "status": "answered", "value": ... } として既存のanswerテキスト列へJSONで保存する。入力の型、選択肢、文字数、余分なフィールドをサーバーで検証する。member IDはセッションから解決する。
サーバー上の5件がすべて妥当な回答またはスキップなら現行質問の完走とする。単にIDが揃う、ブラウザ側のstageが最後になる、NFTを持つなどの条件は使わない。全問を明示的にスキップして進むことも、この質問版の正当な完走である。
旧4項目は別IDのまま保持し、自動変換・削除しない。旧版で完走済みの人は申請資格を維持する。現行の質問画面では旧回答を別の問いへの回答として表示せず、現在の質問を編集する。新しいsaveStepは旧IDを受け付けないため、新規ユーザーが旧条件への書き込みで完走することはできない。
完走後の「回答を見直す」と /initiation?edit=1 は呼び名から再編集する。現行IDへの上書きなので履歴バージョンを増やす機能ではない。スキップで既存回答を消せる。保存失敗では次へ進まず、入力を保持する。
既存のprogressテーブル、memberとstep IDの一意制約を使うため追加migrationは不要。旧コードへ戻すと現行5問の完走を認識できないため、ロールバック時は回答を消さず、復帰後に同じ記録を使う。デモ専用ビルドへの切り戻しは実処理を停止する。
Discord名、Field閲覧記録、Check-inの一言などはこの決定に含めない。Issue #52・#91等を完了扱いにしない。