コンテンツにスキップ

アーキテクチャ改善バックログ

本文書は PLAN.md から切り出したコードアーキテクチャ改善の作業バックログです(2026-04-24 調査メモを起点に継続管理)。
完了判定(DoD / Go/No-Go)は PLAN.md を正本とし、本文書はその補足として実装品質改善の詳細を管理します。
Storefront lane / provider の再設計バックログは docs/03-implementation/frontend/storefront-lane-and-provider-strategy.md を正本とします。

未完バックログ

優先度 領域 改善点 根拠 / 観測 方針
P1 Inventory plugin enableComplexQuantityControl が宣言だけで未接続 packages/plugins/src/standard-extensions/inventory/index.tsentities/quantity-control-rule.entity.ts に「Phase 2 予定」「未実装」と明記されており、true にしても判定ロジックへ接続されない。 仕様原本を確認しつつ、feature flag を expose し続けるなら no-op を明示するか、接続時期まで option/Entity の露出を再整理する。
P1 Storefront mock/runtime mock 実行モード判定が各所に分散 src/lib/cms/client.ts:15,105 では resolveStorefrontExecutionMode() を利用済み。src/lib/vendure-fetch.tssrc/worker-api/handlers/commerce.tssrc/routes/index.tsx は未移行で、公開 config と runtime mode の責務がまだ分かれている。 resolveStorefrontExecutionMode() への単一入口化を残り 3 ファイルにも適用し、live / api-mock / wp-mock を共通解釈にする。
P1 Storefront shop-api route handler が多責務 apps/storefront/src/worker-api/handlers/commerce.ts に request parsing、mock query 解決、Vendure proxy、cookie/auth side effect、error shaping が集中している。 pure helper を抽出して route 本体をオーケストレーション専用へ薄くする。
P1 Visibility policy policy 評価責務が複数 service に分散 packages/plugins/src/rule-engine/visibility/* で subject 判定、condition 解決、policy 選択が複数 service にまたがっている。 評価入口を 1 つに寄せ、persistence / normalization と evaluation を分離する。
P2 Dashboard campaigns builder UI と正規化ロジックが混線 packages/plugins/src/standard-extensions/admin-extensions/dashboard/campaigns/* で dirty 判定用正規化と payload 正規化が UI 近傍に分散している。 UI 非依存の normalizer を 1 つ設け、builder state 比較と保存 payload 生成を共通化する。

Observability backlog

docs/03-implementation/infrastructure/monitoring-operations.md の旧「現在の gap / deferred items」節から移設したもの。実需要が出るまでは現行運用で固定する。

優先度 領域 改善点 根拠 / 観測 方針
P2 React Dashboard observability customer/channel/business enrichment 未拡張 request_id / dashboard_request / dashboard_admin による Vendure admin API 相関と Replay は有効化済み。Storefront / Vendure と同等の customer/channel/business enrichment まで広げていない。 Dashboard 側 issue triage で blast radius を測りたい需要が出た時点で enrichment を実装する。
P3 Worker observability recurring task / monitor を SMILE 以外の job queue へ広げる 現状は SMILE の recurring task と worker heartbeat のみ Sentry monitor で運用。他 job queue は監視対象外。 業務影響のある job が出た段階で個別に Sentry monitor を追加する(一括展開はしない)。
P3 Workflow alert tuning threshold tuning / escalation policy の整備 scripts/ops/sentry-workflow-alerts.mjsobservability/sentry-workflow-alerts.json で workflow alert の repo 管理は開始済みだが、threshold / escalation policy は未調整。 ノイズ実績が溜まったタイミングで段階的に閾値と通知先を見直す。
P3 Uptime monitor expansion React Dashboard / staging / version / 追加 surface への展開判断 observability/external-monitor-endpoints.json を正本に、Sentry / Uptime Kuma で production readiness 2 + Vendure schema drift 1(+ Uptime Kuma 側 WordPress login 1)の初期セットで運用中。 運用ノイズと認証方式を見て、surface ごとに add/skip を判断する。