コンテンツへスキップ

検証

エージェントの作業中に新たなリグレッションを検出。

ファイルを保存するたび、あるいはエージェントがタスクを完了するたびに、Panolayer はその変更を、コードベースの実際の構成に照らしてチェックします。変更された関数、それを呼び出すコード、そしてそれぞれが期待していることを確認します。何がなぜ壊れたのかが数秒でわかり、エージェントはあなたの承認なしに作業をブランチにマージできません。

Panolayer をダウンロードドキュメントを読む

macOS 向けパブリックベータ。無料で始められ、クレジットカードは不要です。

エージェントが getUser() を、例外を送出する代わりに null を返すように変更します。

コンパイルは通り、getUser のテストも合格したままです。しかし、チェックなしで user.name を読んでいる 6 か所は、ステージングに至るまで問題に気づきません。

Verification Engine の仕組み

検証は、あなたのコードについて決して間違えようのない唯一のもの、つまりコードそのものから始まります。

ソースから解析されたアーキテクチャ上で実行されるため、各関数、それを呼び出すもの、それが依存するものを把握しています。Panolayer は、新たなリグレッションと、もともと存在していたものを区別します。永続メモリーにより、あなたが加えた修正はすべてプロジェクトに残るため、使えば使うほど検証の精度が上がります。

  1. コードを解析

  2. 期待する内容を特定

  3. すべての変更をチェック

    新しいリグレッションは既存のものと分離して管理

01

コードからコンテキストを構築

エージェントに見えるのは、渡されたファイルだけです。Panolayer は、ファイル、モジュール、関数、クラス、インポート、完全なコールグラフを含め、コンパイラと同じようにリポジトリを解析します。getUser() が 6 か所から呼び出されていること、そしてそれぞれの正確な場所を把握しています。モデルが推測したからではなく、シンボルを解決したからです。これは「アーキテクチャ」で参照するものと同じアーキテクチャです。

アーキテクチャの仕組み
関数とそれを呼び出すコードを表示する、Panolayer のアーキテクチャビュー。

02

コードが何を期待しているかを割り出す

Panolayer の永続メモリーにより、ルールは実行をまたいで保存されます。独自のルールを追加したり、誤っているルールを修正したりできます。

Panolayer のグローバルルール。有効なルールと、agent の指示をインポートしたりルールを追加するためのコントロールを表示。

03

何が壊れたのかを正確に把握

失敗を開くと、関数、ルール、代わりに何が起きたか、場所、影響を受ける呼び出し元が、その裏付けとなるエビデンスとともに表示されます。

設定されている場合、検証ではテスト、ビルド、型チェックの実行、ブラウザでのフロントエンドの変更の読み込み、スクリーンショットと参照画像との比較も行えます。

Panolayer で失敗した画像アップロード検証ルール。評価の詳細とソース行の参照を表示。

04

ベースラインと比較

すべての結果は変更前のコードベースと比較されます。そのため、もともと存在していた失敗には「既存」のラベルが付いたままとなり、今回の変更で壊れたものだけを追いかければよくなります。

05

コードを修正するか、ルールを修正する

コードが間違っている場合は、自分で修正するか、失敗と影響を受ける呼び出し元をコンテキストとして Panolayer Agent に修正を依頼します。ルールが間違っている場合は、ルールを修正します。どちらの場合も、結果は再び検証されます。

エージェントは、あなたの承認なしに自分の作業をブランチにマージすることはできません。マーケットプレイスのエージェントは、メインツリーへの経路がないコンテナ内で実行されます。Mac 上の CLI エージェントは指示によって保留されます。チェックが失敗していても、あなたはいつでもコミットし、エージェントの作業をマージできます。

「構築」について詳しく

よくある質問

ルールとは何ですか?

コードの一部がどう動作すべきかについての期待値です。たとえば「user を返すか例外を送出する。null は決して返さない」といったものです。Panolayer はほとんどのルールをコードから導き出し、独自のルールを追加することもできます。ルールは保持され、変更のたびに実行されます。

独自のルールを書けますか?

はい。Panolayer がコードから導き出したルールに加えて、独自のルールを追加できます。

ルールが間違っている場合はどうなりますか?

修正してください。修正は維持され、そのリポジトリの今後の検証に反映されます。

検証はどのくらい速いですか?

結果は数秒で返ってくるため、タスクから離れることなく、チェック、修正、再チェックを繰り返せます。

検証はいつ実行されますか?

ブランチ上でファイルを保存したとき、そしてエージェントがタスクの完了を報告したときです。

コードはモデルに送信されますか?

リポジトリと、Panolayer が作成するそのインデックスは、同期または共有しない限りあなたの Mac 上にとどまります。モデルを使用する機能は、関連するコードの抜粋とプロンプトを、設定したプロバイダーにそのプロバイダーの規約に基づいて送信します。

詳しくはセキュリティページへ
マージはブロックされますか?

保留されるのはエージェントであり、あなたではありません。エージェントは、あなたの承認なしに自分の作業をブランチにマージすることはできません。あなたはいつでもコミットしてマージできます。

エージェントが出荷するものを信頼できるように。

Panolayer をダウンロードドキュメントを読む

macOS 向けパブリックベータ。無料で始められ、クレジットカードは不要です。

次へ: 変更