J-Quants Local-first PWA v7d-beta5f

1.12GBレスキューSQLiteをCloudflare側OPFSへストリーミングImportし、公式SQLite-WASMで直接開く実機PoC。

v7d-beta5f 起動確認

JavaScript起動: PASS(ボタンが反応すれば正常)
日付エンジン確認中…

SAH Pool 緊急診断

固定Storage identity: origin=https://jquants-pwa-test.pages.dev / pool=jq-sahpool / directory=.jq-sahpool-v7c-r5
DataLakeを書き換えず、まずPoolの論理ファイル一覧を確認します。次に候補名をread-onlyで1つずつ開きます。
未実行

未実行

未実行

J-Quants DataLake 更新

普段はこちらだけ使います。J-Quants V2 APIキーはセッション中だけ利用し保存しません。 日次更新と過去データ穴埋めは、既存DataLakeへ日付単位で直接Commitします。
未実行

未実行

未実行

未実行

高速バックフィル v7d-beta5f

書込みを1行ごとの db.exec から prepared statement 再利用へ変更しました。 祝日ではなく「実際に株価データがある欠損営業日」を自動で探し、API取得+SQLite書込みを1日分実測してから大量穴埋めを開始します。
未実行

未実行
開発者診断 / 旧PoCテスト
旧sql.jsのようにDB全体をRAMへ読み込みません。レスキューSQLiteはストリームでOPFSへコピーし、 SQLite-WASMはWorkerからOPFS上のDBを直接開きます。
Import先はCloudflare Pages側OPFSの jq_market_v7c.sqlite です。 GitHub Pages側の元DBや、Filesに保存したレスキューSQLiteは変更しません。

自動連続バックフィル v7d-beta5f

穴を再検出しながら連続処理。日付単位Commitなので安全停止・再開できます。Safariは前面表示のままにしてください。

未実行

DataLake ローカルスナップショット

全DBをRAM展開せず、SAH Pool内に完全SQLiteスナップショットを作成・検証します。

未実行
未実行

※同一ブラウザ領域内の復旧用。FilesのレスキューSQLiteは外部バックアップとして維持してください。

1. v7c前提チェック

Cloudflare配信条件とOPFS容量見積りを確認します。
未実行

2. レスキューSQLiteをストリーミングImport(Direct Open前に必須)

Filesから1.12GBのレスキューSQLiteを選択。4MB前後のチャンク単位でOPFSへコピーし、全体をRAMには載せません。
未実行

3. SQLite-WASM同一オリジン配信チェック

Cloudflare Pages Function経由で index.mjs / sqlite3.wasm を pages.dev 同一オリジンから取得できるか確認します。
未実行

4. SQLite-WASM初期化テスト(opfs-sahpool)

DBをまだ開かず、SQLite 3.53の新しい opfs-sahpool VFSだけを有効化して初期化します。opfs-sahpoolは意図的に無効化します。
未実行

5. SAH Pool基本動作テスト(小型DB)

巨大DBの前に、小型SQLiteを作成→INSERT→Worker終了→別Workerで再Open→SELECTし、永続化を確認します。
未実行

6. 公式SQLite-WASMで直接Open(opfs-sahpool)

Worker内で公式 @sqlite.org/sqlite-wasm を起動し、SQLite 3.53の opfs-sahpool VFSへ1.12GB DBをストリーミングImportし、read-onlyで直接開きます。
未実行

7. 整合性チェック(任意・重め)

PRAGMA quick_checkを実行します。1GB超DBを走査するため時間がかかる可能性があります。
未実行

7. v7d-beta5f総合判定

未判定

v7d-beta5f 実運用同期エンジン前段テスト

既存1.12GB DataLakeの実スキーマを検査し、日付単位Transaction → Commit → Checkpoint → Worker再起動後Resumeを同じSQLiteへ直接書き込みます。DB全体RAM展開・db.export()は使いません。
未実行

未実行

未実行

v7d-beta5f J-Quants 実データ同期

J-Quantsの日足をブラウザから取得し、既存1.12GB DataLakeへ日付単位で直接Commitします。 認証情報はこの画面のメモリ内だけで使用し、SQLite・localStorage・GitHubには保存しません。
未実行

未実行

未実行

v7d-beta5f 自動Catch-up Sync

DataLakeの最終取得日と専用Checkpointを自動判定し、その翌日から指定日まで順番に同期します。 土日はAPI呼出しを省略。祝日などAPIが0件の日も「確認済み」としてCheckpointを進めます。 iPhoneでは前景実行のため、このカードの同期中はSafariを閉じないでください。
未実行

未実行

未実行

10. 更新履歴 / Build情報

正式な更新履歴は CHANGELOG.md / release_history.json / このUIの3層で管理します。
Version: v7d-beta5f Build date: 2026-08-30 Schema version: market-poc7c Migration version: history-4