Homeから、登録・場所・検索・管理・次の行動へ
写真、JAN・バーコード、商品URL、メーカー・型番、手入力を同じ確認画面へ収束し、場所・在庫・期限・保証・履歴へつなぎます。
家の情報をどこに保存し、どんなときに外部サービスへ送るのか。端末だけで使う場合と、家族共有や写真解析を使う場合に分けて説明します。
UCHIZUは端末内で完結する日常利用を中心に、共有・外部データ・AIを必要な操作からだけ接続します。ここでは画面やコードにある機能と、本番環境・実機で追加検証が必要な項目を同じ言葉で扱いません。
写真、JAN・バーコード、商品URL、メーカー・型番、手入力を同じ確認画面へ収束し、場所・在庫・期限・保証・履歴へつなぎます。
家族共有は、同じ世帯のモノや保存場所を、招待した家族と一緒に見たり編集したりする機能です。管理者(owner)・編集者(editor)・閲覧者(viewer)の役割で、できる操作を分けます。
買い物リストとの連携は、家族共有とは別の仕組みです。登録済みのモノに紐付いた買い物を完了すると、そのモノの在庫数を更新します。どのモノが更新されるかを、完了前に利用者へ示します。
確認状況:招待・役割・買い物との連携は実装されています。本番サービスを使った複数人・複数実機での確認は、別途必要です。
利用時に現在地を許可し、保存済みの東京都データから候補を表示します。候補を変えると終点と経路も更新します。経路は移動の参考であり、通行可否や開設状況の保証ではありません。
ゲスト利用を残したまま、共有、写真解析、商品情報、通知などを明示操作から接続します。未取得値や候補を、確定情報として保存・表示しません。
数が大きいこと自体を価値とは考えていません。登録した地域やモノによって答えが変わり、次の行動へ変換できるデータだけを選びます。
東京都内の区市町村等を地域選択の対象として管理
住所対応と各機能の対応範囲は分けて判定
街区、集合住宅、町会、公式地区などの条件差を保持
アプリのWeb bundleと公開Wikiを配信します。家庭データを保管するDatabaseではありません。
家・場所・モノの登録や検索は、ゲストのまま使えます。クラウドや外部サービスの設定は必須ではありません。
例えば、モノの名前と置き場所を登録して、あとから検索する。この基本の使い方は、端末内の保存を土台にしています。
家族と同じ情報を見るときは、ログインして世帯の共有機能を使います。読み書きできる範囲は、所属する世帯と役割で分けます。
ログインした人なら、誰でも他の家庭の情報を見られるという仕組みではありません。
写真解析や商品検索は、利用者がその機能を選んだときに使います。解析結果や取得した商品情報は、確認・修正してから登録します。
サービスを使えない場合も、手入力や公式の案内を確認する方法を残します。公式情報と、AIによる補助的な提案は区別します。
重要な境界:AIは品目や型番の候補を作れますが、分別区分、収集日、料金、施設状態を生成しません。公式データを安全に判定できない場合は、推測せず原典へ案内します。
LOCAL FIRST
AIを使わなければ写真と家庭データは端末内で完結します。Nativeの保存状態は暗号化し、ゲストとして主要機能を利用できます。
OPTIONAL CLOUD
クラウドを選んだ場合だけ世帯状態を同期します。owner、editor、viewerの権限をDatabaseとアプリの両方で判定します。
OFFICIAL ACTION
更新スクリプトで確認した自治体別データを読み、必要条件、結論、手順、注意、原典を一つの導線へ変換します。
「もしもの備え」は一つの巨大な防災画面ではありません。家庭が登録したモノ、世帯構成、公式データ由来の候補、現在地、通信が必要な情報を分離し、最初の画面から目的ごとに進めます。
LOCATION / SAVED MAP / ROUTE
利用者が許可した時だけ端末の現在地を取得します。許可前でも保存地図と避難所の全体表示は確認できます。
保存済みの避難所座標と現在地を照合し、近い候補を見つけやすい順に表示します。
一覧または地図の避難所を押すと、その施設を終点として保存地図上に経路を表示します。候補を変えれば終点と経路も更新します。
LOCATION現在地は候補の並び替えと経路表示に使用常時取得ではなく、避難ナビで許可した時に利用します。
OFFICIAL DATA東京都の避難所・避難場所データが候補の正本名称、種別、座標、出典、データ基準日を保持します。
OFFLINE保存済み範囲は通信がなくても確認保存地図、避難所データ、端末の現在地を使って候補と経路を表示します。
アプリ起動時には求めず、避難ナビで近い候補を確認する操作に合わせて許可を求めます。
赤い施設点と現在地を同じ保存地図上へ重ね、近い候補を一覧でも選べるようにします。
候補を押すと現在地からその施設までの経路を描きます。別の候補を選ぶと、終点と経路を新しい施設へ更新します。
施設名、種別、座標とともに、東京都の提供元、基準日、原典への入口を保持します。
技術上の境界: 表示する経路は移動の参考であり、災害による道路の寸断、通行止め、危険箇所、施設の開設・受入・安全性をリアルタイムに判定するものではありません。自治体の最新情報と現地状況を優先してください。
Nativeの業務データはAES-256-GCMで暗号化し、鍵を端末限定のSecureStoreへ分離します。
Databaseのmembershipを正本とし、RLSとアプリのmutation境界で権限外の操作を拒否します。
写真や書類は非公開Storageへ置き、必要な時だけ短時間の署名付きURLを発行します。
AI、商品検索、Google連携の秘密情報はEdge Function側へ置き、クライアントへ含めません。
送信は利用者が機能を選んだ時だけ。商品検索へ住所、場所階層、所有物一覧を送りません。
通常削除は30日間復元可能にし、完全削除とアカウント削除ではDatabaseとStorageを対象にします。
| 構成要素 | 主な役割 | 家庭データとの関係 | 現在の状態 |
|---|---|---|---|
| Expo / React Native | iOS・Android・WebのUIと端末機能 | 端末内repositoryを通じて操作 | 実装済み |
| Cloudflare Pages | Web bundleと公開Wikiの静的配信 | 家庭データのDatabaseではない | 公開中 |
| Supabase Auth | メール認証とsession | クラウド利用を選んだ場合 | 実装済み |
| PostgreSQL + RLS | 世帯状態、役割、同期revision | household単位で分離 | 遠隔自動検証済み |
| Private Storage | 写真、説明書、保証書、レシート | 非公開object pathと署名URL | 遠隔自動検証済み |
| Edge Functions | AI・商品API・OAuth等のserver境界 | secretと送信項目を端末から分離 | 実装済み・接続条件あり |
| 自治体別runtime asset | 分別、収集日、回収・リユース | 読み取り専用の公式情報 | 機能別coverage |
| OpenAI・商品Provider | 候補生成と商品検索 | 利用者の選択時だけ送信 | 任意・条件付き |
| Expo Push・Google Calendar | 通知と専用予定連携 | 明示的な有効化が必要 | 本番・物理端末未検証あり |