ダッシュボード

イシューを、本番環境に届く前に捕まえる。 すべてのプルリクエストを、差分だけでなく稼働中の状態に照らしてレビューします。

ウェイトリストに登録

警告はマージの前に届きます。 メカニズム、証拠、修正案を、レビューするその場所に。

github.com/coreplane/orders-api/pull/482

Add trigram index for order search #482

Open rvidal wants to merge 1 commit into main from order-search-trgm
Conversation 1 Commits 1 Checks 2 Files changed 1
polylane bot commented 2 minutes ago ···
Caution

Merging this pull request may degrade production (high impact).

Merging this blocks every write to orders while the index builds. migrations/0114_order_search_trgm.sql:3 adds CREATE INDEX … USING gin (search_text gin_trgm_ops) without CONCURRENTLY, and a plain CREATE INDEX takes a full write lock on orders for the whole build. Checkout sustains ~38 writes/s on that table; each one queues behind the lock until the build finishes.

To make this safe: build the index with CREATE INDEX CONCURRENTLY outside the transactional migration.

orders-db · writes per second · last 48h projected lock window
02040
-48h -24h now
every one of these writes blocks while the index builds

Polylane analysed de91b47 for production impact.

Some checks were not successful 1 failing and 1 successful check
ci / test Successful in 2m 4s Details
Polylane production impact Non-concurrent index build locks writes on orders Details
Merging is blocked

ゲートするだけでなく、コードを改善します。 足りない計装は、そのブランチ上で追加されます。

Clouds prod-cloudflare Key queries

Key queries

31 active · 2 telemetry gaps

Generated from your telemetry and your connected code, judged on observed data: every candidate ran against a day of real data before it was kept.

Did any payment capture fail? code answered
logs: "payment capture failed for order {orderId}"
declared in apps/api/src/payments.ts
Is the checkout webhook retrying more than usual? telemetry answered
metric: webhook.delivery.retries · rate over 5m
baseline 0.4/min over the observed day
Is the nightly reconciliation completing? code answered
logs: "reconciliation complete" · count over 24h
quiet all day: healthy. Kept because the code provably emits it
Are D1 writes hitting rate limits? telemetry unanswerable
no series found for this question
kept as a telemetry gap
Re-confirmed on every discovery run: one thin run cannot wipe a good set.

そして、マージの後も見守り続けます。 すり抜けたものは、本番環境で捕まえます。

Issues Critical latency degradation in checkout-edge worker Overview

Critical latency degradation in checkout-edge worker

Incident critical Polylane ·Detected 3 hours ago ·Last seen 4 minutes ago ·2 occurrences
OverviewInvestigationMetricsTimelineProperties
checkout-edge Cloudflare Worker

Critical latency degradation detected in checkout-edge worker: 18x+ P99 latency spikes sustained for 12 minutes

Causal metrics All metrics
Request Duration
414 ms ▲ 43.1σ
Wall Time
416 ms ▲ 43.0σ
CPU Time
14 ms ▲ 2.6σ
Blast radius
Search your cloud resources...
Graph Table
edge-gateway Cloudflare Worker ··· checkout-edge Cloudflare Worker ··· hd-prod Hyperdrive ··· payments-db PlanetScale ··· cart-svc Cloudflare Worker ···
Analysis Copy

Deploy 9f3c2a1 shrank the Hyperdrive pool hd-prod from 50 connections to 5. Under checkout load, requests queue on connection checkout and P99 rises 18× against the 30-minute baseline. Restoring the pool size restores latency.

Tags
service · checkout-edgeprovider · cloudflaredeploy · 9f3c2a1signal · wall_time_p99

Polylaneの仕組み。 システムを学び、見守り、調査し、行動します。

  • まずシステムを学ぶ

    コンテキストグラフが、クラウド、リポジトリ、オブザーバビリティプロバイダーにわたるすべてのリソースと依存関係をマッピングします。エージェントは推測ではなく実際のトポロジーに基づいて推論します。

  • しきい値のない検出

    すべてのプロバイダーに組み込みのチェックがあり、さらに保存済みのクエリやダッシュボードからチェックが生成されます。統計的な判定とエージェントが一緒に決め、改善がイシューになることはありません。

  • 証拠を示す調査

    すべての主張は、その裏付けとなるクエリ、ログ行、変更記録にリンクします。証拠のない判定は「不確定」に戻ります。

  • 書き込みは獲得するもので、前提ではない

    アカウントは読み取り専用で接続されます。ロールバックは既定で無効で、レート制限され、記録に残ります。コードの変更は通常のレビューを通ります。

  • 毎週、鋭くなる

    メモリー、日次ノート、実データに対して再確認された監視クエリ。7月の調査は6月の調査から学びます。

今動いているものにつながります。 読み取り専用で接続して、始めてください。

よくある質問

AIプルリクエストレビューはどのように動きますか?

PolylaneはアプリとしてGitHubに接続し、各プルリクエストをデプロイ先の稼働中インフラに照らしてレビューします。コンテキストグラフ、現在のテレメトリー、最近の変更です。判定はコメントと「Polylane production impact」チェックとして届きます。

マージをブロックしますか?

望む場合だけです。ブランチ保護で「Polylane production impact」チェックを必須にすれば、危険なマージはブロックされます。任意のままにすれば、判定は助言にとどまります。

これはAIが生成したコードのためのものですか?

すべてのコードのためのものです。ただ、誰も変更を注意深く読まなかったときに最も効きます。AIが生成したコードの安全網は、手書きの誤りを捕まえるのと同じレビューです。

CIと何が違いますか?

CIはコードに対してテストを実行します。Polylaneは変更を本番環境に照らしてレビューします。変更が着地する設定、容量、依存関係、そしてそれらが今まさに発しているテレメトリーです。同じ一覧の中にチェックとして現れますが、答える問いが違います。

自動でマージやデプロイをすることはありますか?

ありません。変更がデフォルトブランチに届くのはレビューを通したときだけで、以前の正常なデプロイへのロールバックも、有効にするまで無効のままです。

その他のユースケース

エージェントの速度で出荷する。 毎回、本番環境に照らしてレビュー済みで。