半実行可能アーティファクトとは、半実行可能スタック:エージェント型ソフトウェアエンジニアリングと拡大する SE の範囲 の定義によれば、ソフトウェア 集約型システムとそれを取り巻くワークフローの振る舞いを規定し、調整し、制約するのに役立つが、その実行が完全に決定論的な 機械実行だけではなく、人間、確率的モデル、またはその組み合わせによる解釈に依存する、ソフトウェアに関わるアーティファクト である。著者らは、「半」が実行不能を意味するわけではないことを強調している。こうしたアーティファクトは振る舞いを 駆動するのに役立つが、古典的なプログラムのように完全に規定された決定論的な意味で、それ自体が振る舞いを決定する わけではない。そのためその実行は近似的で、文脈に依存し、確率的であり、一部の段階で人間の判断を伴うこともある。コードは 実行可能性が高い側の極限、組織のルーティンは実行可能性が低い側の極限にあたり、プロンプト、自然言語の仕様、ワークフロー ルール、ポリシー層、意思決定手順はその間に位置する。一方、安定した表現形式をもたない純粋に非公式な規範は、この スペクトルの外にある。

用法

この用語は、エージェント型 AI はソフトウェアエンジニアリングが扱う対象を縮小させるのではなく拡大させる、という同論文の 議論の行き着く先の概念である。著者らの言葉によれば、プロンプト、ワークフロー、ポリシー、評価ハーネス、ルーティング ロジック、エスカレーションルール、意思決定手順は、古典的なコードでも単なるドキュメントでもない。それらは実行時に モデル、エージェント、人間によって読まれ、それに基づいて行動されるため、コードと同じくらい直接的にシステムの振る舞いを 形作る。同論文の例は、リリース準備のワークフローである。その結果はコード、テスト、ビルドだけでなく、リグレッションを 要約するプロンプト、証拠を集めるオーケストレーション、評価ハーネス、エスカレーションルール、承認のルーティンにも依存し、 さらにそれらがどれだけうまく噛み合っているかにも依存する。同論文は、プロンプト、リポジトリの指示、ツールの パーミッション、再利用可能なスキルが作業の進め方を部分的に符号化している Claude Code のような 開発者ツールを、同じパターンが実践に現れた例として挙げている。

こうしたアーティファクトがどこに位置するかを論じるために、同論文はそれらを Semi-Executable Stack(半実行可能スタック) の上に配置している。これは 6 つのリングからなる診断モデルであり、実行可能なアーティファクトから、指示的なアーティファクト、 オーケストレーションされた実行、制御システム、運用ロジックを経て、社会的・制度的な適合へと至り、外側のリングほど人間の 解釈に強く依存する。著者らが導く実践上の帰結は、半実行可能アーティファクトは使い捨てとして扱われると負債を蓄積する ということである — ある 1 件のケースを直すために変更されたプロンプトが下流の振る舞いを静かに変え、後になって誰もその 理由を再構成できなくなる。そのため、バージョン管理、評価スイート、意図から振る舞いへのトレーサビリティを、コードに 長く適用されてきたのと同じ規律でこれらにも広げる必要がある。

関連用語