はじめに
こんにちは。
GadgetStreemでは現在、ガジェット価格の上昇圧力を一つの数字で確認できる独自指数、
GPI(Gadget Pressure Index/ガジェット価格圧力指数)
を開発しています。
前回のVol.17では、
100% Coverageになっても、自動的にGPIの数字を一般公開しない
という Public Numeric Release Gate を紹介しました。
Vol.17の最後では、Vol.18を予定表どおり機械的に作るのではなく、GPI側で本当に大きな節目が起きたときに続きを書く、としました。
その節目は、その後すぐに訪れました。
GPI Internal Pilot v0.1が完成。
しかも、開発はそこで止まりまっていません。
Pilot完成後には、
- Freshness v2
- GPU履歴の継続蓄積
- Operational Hardening
- Owner Intelligence Dashboard v0.2
- X投稿にも使いやすいSnapshot UI
まで進んでいます。
そこで今回のVol.18では、単に「Pilotが完成しました」で終わらせず、現在のGPIがどこまで進んだのかをまとめます。
ただし最初に、Vol.17から変わっていない大前提を明記します。
Internal Pilot完成 = Production GPI完成ではありません。
Owner Dashboard完成 = Public Numeric Release開始でもありません。
GPIの数値を一般公開したわけではなく、GPUをProductionへ正式採用したわけでもありません。
今回の節目は、
「公開前のGPI」を、実データで継続的に使い、観察し、壊し、改善できるところまで来た
という意味です。
GPI Internal Pilot v0.1とは?
Internal Pilot v0.1は、GadgetStreem Intelligenceの中に作ったPrivate / Non-Productionの検証環境です。
Pilotの計算はProductionとは別のPrivate Namespaceで扱い、当初のアクセス境界もLoopback-onlyとして設計しました。
目的は、単にAPIが計算できるかを確認することではありません。
実際のデータを使って、
- 5つのComponent Score
- 固定ウェイト
- Weighted Contribution
- Composite
- Freshness
- Production / Experimentalの区別
- UI上での意味の伝わり方
までを、一つの製品形状として確認することです。
これによってGPIは、設計書やテストコードの中だけに存在する指数から、人間が実際に見て判断できるPrivate Productへ進みました。
Production 85%とExperimental GPU 15%を、Pilotの中だけで合わせる
GPIの固定ウェイトは、これまでと変えていません。
| Component | Weight |
|---|---|
| USD/JPY | 30% |
| DRAM | 25% |
| NAND | 20% |
| GPU | 15% |
| Freight | 10% |
Production側では、USD/JPY・DRAM・NAND・Freightの4ComponentがProduction側の対象です。
一方、GPUはまだProductionへ正式採用していません。
そこでInternal Pilotでは、GPU 15%について既存のExperimental Shadow Signalを使用します。
つまりPilot内部では、
Production-qualified 85%
+
Experimental GPU Shadow 15%
=
Private Pilot Composite
という形で、固定30/25/20/15/10を崩さずに5Componentを一度そろえます。
ここで非常に重要なのは、これをProduction Coverage 100%とは扱わないことです。
GPU ShadowはあくまでPilot検証用です。
GPU Production InclusionやProduction Activationとは別のGateです。
そのためPilot上で5Componentが見えていても、Production側の85%という状態はそのまま維持されます。
Pilotで数字は見える。でも記事には出さない
Internal Pilotでは、Private環境の中でCompositeや各Component Scoreを確認できます。
しかし、本記事ではそのNumeric Valueを掲載しません。
理由はVol.17と同じです。
計算できることと、Public Numeric Releaseしてよいことは別だからです。
現在もPublic Numeric Releaseは承認されていません。
Public側では、Vol.16で紹介したPublic Status Previewのように、準備状況だけを見せる設計を維持します。
整理すると、
| Surface | Numeric | Access | 役割 |
|---|---|---|---|
| Public Status Preview | WITHHELD | Public | Production準備状況を伝える |
| Internal Pilot v0.1 | 表示可能 | Private | 実データで計算・UXを検証する |
| Production GPI | WITHHELD | 未公開 | 正式Composite |
です。
Public側で数字を隠しながら、Private側では数字を実際に使って壊せる。
この分離が、Pilotを作った大きな意味です。
Pilot完成後、すぐにFreshness v2へ進んだ
Pilotを実際に使い始めると、次の課題が見えてきました。
「データが古い」とは、何をもって古いと言うのか?
例えば月次統計は、毎日更新されません。
観測日から30日以上経っていても、次の公式リリースがまだ出ていないなら、その値は依然として最新の公式値です。
そこでGPIではFreshnessの考え方をv2へ更新しました。
代表的な状態は、
CURRENTEXPECTED_LAGSTALEINVALID
です。
CURRENT
現在利用できる最新の公式リリースが取り込まれている状態。
EXPECTED_LAG
観測自体は一定期間前でも、次の公式リリースがまだ存在せず、保存している値が引き続き最新である状態。
STALE
新しい公式リリースが存在するのに、GSI側へまだ反映されていない状態など。
INVALID
ValidationやIntegrity、Eligibility上の問題がある状態。
つまり、
「何日前のデータか」だけではなく、Sourceごとの公式Publication Cadenceを見る
設計へ変わりました。
このFreshness v2も、Pilotを実際に動かしたからこそ必要性が明確になった改善です。
GPU履歴は23/36から24/36へ進んだ
Vol.17公開時点では、GPUについて、
23 / 36 transformed samples
という状態をご紹介しました。
その後、2026年7月分の完全な観測月がCurrent Authorityへ取り込まれ、Operational Hardeningの受入Snapshotでは、
GPU raw observations:25
GPU transformed samples:24 / 36
Latest complete month:2026-07
まで進んでいます。
ただし、ここでもルールは変えていません。
24 / 36
↓
まだHISTORY_ACCUMULATION
です。
そして将来36/36に到達しても、
36 / 36
≠
自動Production Activation
です。
QualificationとProduction Activationは別Gateのままです。
「新しい月がない」ことを異常扱いしないようにした
GPUの履歴運用を続ける中では、もう一つ実運用らしい問題も出ました。
Collectorや確認処理を再実行しても、Source側に新しいComplete Monthが存在しないことがあります。
これは異常ではありません。
新しい公式観測月がまだ出ていないだけです。
そこで現在は、
新しいComplete Monthがなければ、安全なNo-opとして扱う
方向へ運用を修正しています。
つまり、毎回何かを更新することを成功条件にしません。
更新すべき新情報がなければ、
「何もしないこと」が正しい実行結果
です。
指数を継続運用するうえでは、このような地味な挙動がかなり重要になります。
Operational Hardeningまで完了
Internal Pilotを作った後は、Pilotの見た目を整えるだけではなく、継続運用できるかの確認へ進みました。
2026年9月23日のOperational Hardening Closureでは、現在のGPI状態を次のように固定しています。
Production Coverage:85%
Required Coverage:100%
GPU:24 / 36
GPU Production Included:false
GPU Activation:false
Composite Numeric GPI:WITHHELD
Public Numeric Release:NOT_AUTHORIZED
Renormalization:false
そして次の運用モードを、
SEPTEMBER_LOW_LOAD_OPERATION_READY
としました。
これは、
GPIをPublic Releaseした
という意味ではありません。
現在の85% Production BoundaryとPublic Numeric Release禁止を維持したまま、9月の低負荷運用を継続できるところまでOperational Contractを固めた、という意味です。
このHardeningでは、
- Public Previewの通常観測
- GPUに新しい月がない場合のNo-op
- 新しい月を受け入れる場合のCurrent Authority Promotion
- Canonical → Projection → API → UIの確認
- Anti-stale / Fail-closed
- Public Boundary Rollback
- 障害時のDiagnostic Escalation
- GPU / Public Numeric / Full ReleaseのRe-entry Gate
までRunbookとして扱っています。
Pilotは「動いた」で終わらず、運用して壊れたときの処理まで含む段階へ進みました。
さらにOwner Intelligence Dashboard v0.2へ
Pilotの次に進んだ大きな変化が、
GPI Owner Intelligence Dashboard v0.2
です。
Internal Pilot v0.1は、Privateな製品検証のための基盤でした。
Owner Dashboard v0.2は、そのPilotを計算ソースとして再利用し、運営者が日常的にGPIを確認するためのOwner-only Intelligence Surfaceへ発展させたものです。
ここで重要なのは、Owner Dashboard専用に別のGPI計算式を作っていないことです。
Internal Pilot v0.1
↓
同じ計算を再利用
↓
Owner Intelligence Dashboard v0.2
です。
表示するObserved Pressureも、
- 固定30/25/20/15/10
- Production-qualifiedなFX / DRAM / NAND / Freight
- Experimental GPU Shadow
- Missing Weightの再配分なし
- Renormalizationなし
というInternal PilotのContractをそのまま使います。
Owner Dashboardの数字も「Production GPI」ではない
Owner Dashboardには、PrivateなOwner Review用としてObserved Pressureを表示できます。
しかし、その数字もProduction GPIではありません。
設計上、Owner Dashboard自身に、
OWNER INTELLIGENCENON-PRODUCTIONNOT FOR PUBLIC NUMERIC RELEASE
という境界を持たせています。
現在も、
Production Coverage:85%
Production Composite:WITHHELD
GPU Production Inclusion:false
GPU Activation:false
Public Numeric Release:NOT_AUTHORIZED
です。
つまり、PilotからOwner DashboardへUIが進化しても、Public / Production側のAuthorityは一切ショートカットしていません。
Owner-onlyなので認証も別にする
Owner DashboardはPublic Status Previewとは役割が違います。
Public Status Previewは、一般利用者へ公開してよいStatusだけを表示します。
一方Owner Dashboardは、PrivateなNumeric Intelligenceを扱います。
そのため、Owner Dashboard側は、
Basic AuthによるOwner-only Review
を前提に設計しています。
さらに、通常のPublic Status Previewを将来Public Modeへしても、Owner Dashboardの認証が連動して解除されないよう、独立して認証を強制する設計にしています。
また、Owner Dashboardから、
- DB Migration
- Insert / Update / Delete
- Collection
- Scoring Mutation
を起動することも禁止しています。
Owner Dashboardは、読むための画面です。
数字を見る画面が、裏側のProduction Dataを変更できないようにしています。
Xへ共有しやすいSnapshot UIも追加
Owner Dashboard v0.2の実装後には、さらにXなどへ開発状況を共有しやすくするためのSocial Snapshot Layoutも追加しました。
GPIでは今後、
- 指数開発の進捗
- Componentの状態
- Pressureの変化
- Pilot / Owner Reviewの画面
をGadgetStreemのXで紹介する場面が増える可能性があります。
そこで、単にDashboardをスクリーンショットするのではなく、必要な情報がまとまって見えるよう、Owner DashboardをSnapshot向けに最適化しています。
ただし、ここでもBoundaryは同じです。
X-readyな画面ができたことと、Public Numeric Releaseが許可されたことは別です。
Publicへ出してよい情報は、その都度Public Release Authorityに従います。
Vol.12のShadow Operationから何が変わった?
Vol.12では、Free-source Shadow Operationをご紹介しました。
当時の主目的は、
複数Sourceを一緒に流したとき、Pipeline・Methodology・Governanceが壊れないか
を確認することでした。
今回のInternal Pilot/Owner Dashboardは、そこからさらに一段進んでいます。
| 段階 | 主目的 |
|---|---|
| Shadow Operation | Pipeline / Methodology / Governance検証 |
| Internal Pilot v0.1 | Private Product / Numeric UX検証 |
| Owner Dashboard v0.2 | Ownerの日常的なIntelligence Review |
| Public Status Preview | 一般向けの準備状況表示 |
| Production Numeric GPI | まだWITHHELD |
つまり、GPIの開発は、
計算できる
↓
裏側で一緒に動く
↓
Private Productとして使える
↓
Ownerが継続レビューできる
↓
Public Releaseを判断する
という段階へ進んでいます。
Vol.17の「まだ公開しない」は今も有効
ここまで読むと、
Pilotもできた。Owner Dashboardもできた。それならもうGPIを公開していいのでは?
と思うかもしれません。
しかし、Vol.17で説明したGateは今も有効です。
現在のOperational Hardeningで受け入れているSnapshotは、
Production Coverage:85%
GPU:24 / 36
Composite Numeric GPI:WITHHELD
Public Numeric Release:NOT_AUTHORIZED
Full GPI Production Release:NO_GO
です。
Internal PilotやOwner Dashboardは、このGateを迂回するために作ったものではありません。
むしろ逆です。
Public Release前に、Private環境で十分に使って問題を見つけるために作っています。
Vol.0.1.1の「構想」から、Owner Intelligenceまで来た
GPIの最初の記事では、
ガジェット価格の上昇圧力を、一つの指数として見られないか
という構想から始まりました。
そこから、
- Repository / Docker / PostgreSQL / API
- USD/JPY Collector
- DRAM / NAND / FreightのSource調査
- GPU Source Strategy
- Revision管理
- Freshness
- Shadow Operation
- Component Scoring
- Composite Engine
- Historical Replay
- Weight Validation
- Public Status API
- Public Numeric Release Gate
- Internal Pilot v0.1
- Freshness v2
- Operational Hardening
- Owner Intelligence Dashboard v0.2
まで進みました。
当初は「5つの数字を重み付けして一つにする」という発想でした。
現在は、
どの数字を使ったのか、いつの数字なのか、更新されているのか、ProductionなのかExperimentalなのか、Publicへ出してよいのか
まで扱うシステムになっています。
GPIが単なる計算式ではなくなったことが、Vol.18時点の最も大きな変化かもしれません。
次に残っていること
GPIはかなり進みましたが、まだ最終地点ではありません。
GPU履歴
現在は24 / 36 transformed samplesです。
ただし36へ到達しても、自動Production Activationは行いません。
Qualification Reviewが必要です。
Owner Dashboard Runtime Qualification
Owner Dashboard v0.2はRepositoryへ実装済みですが、Owner-only認証、Read-only Data Connectivity、Secret Exposure防止など、Runtime Activationには別Qualificationがあります。
Public Numeric Release
PilotやOwner DashboardのNumeric表示は、Public Numeric Release Authorityではありません。
Production CompositeのPublic Releaseは、従来のGateを維持します。
Production Coverage 100%
GPUが正式にProductionへ入るまでは、85%を100%へRenormalizeしません。
継続運用
Freshness v2、GPU Monthly Promotion、Fail-closed、Rollbackを、低負荷運用の中で継続確認します。
まとめ
Vol.17では、
「計算できる」と「公開できる」は違う
というPublic Numeric Release Gateをご紹介しました。
その後GPIは、
GPI Internal Pilot v0.1
を完成させました。
さらに、そこで終わらず、
- Freshness v2
- GPU履歴 24 / 36
- No-new-month No-op
- September Low-load Operationへ向けたOperational Hardening
- Owner Intelligence Dashboard v0.2
- Owner-only認証境界
- X-ready Social Snapshot UI
まで進んでいます。
一方、現在も、
Production Coverage:85%
GPU Production Activation:false
Composite Numeric GPI:WITHHELD
Public Numeric Release:NOT_AUTHORIZED
Renormalization:false
です。
つまり現在のGPIは、
「Publicへ出せる指数」になったのではなく、「Publicへ出す前に、実データで日常的に使って検証できる指数」になった
という段階です。
Vol.18を書く予定を少し待った結果、Pilot完成だけではなく、そのPilotが実際の運用・Owner Intelligenceへ発展するところまでお伝えできるようになりました。
GPIはまだPublic Numeric Releaseしていません。
しかし裏側では、
「実際に使う → 問題を見つける → 止める → 直す → また使う」
という、本番前に必要なサイクルが回り始めています。
次の記事も、番号だけを先に決めるのではなく、GPI側で新しいAuthorityや大きな節目が生まれたときにお届けします。
※GPIは現在開発中の実験的な市場分析指標です。本記事で紹介するGPI Internal Pilot v0.1およびOwner Intelligence Dashboard v0.2は、Production CompositeのPublic Numeric Releaseを意味しません。Owner DashboardのObserved PressureはInternal PilotのPrivate計算を再利用したOwner Review用の値であり、Production GPIではありません。GPU Experimental ShadowもProduction GPU Scoreではありません。GPIは個別製品の将来価格、価格上昇確率、購入利益を保証するものではなく、投資判断を目的とした金融指標でもありません。


コメント