diff options
| author | tanaka takashi <isazaka@gmail.com> | 2026-08-09 21:08:20 +0900 |
|---|---|---|
| committer | tanaka takashi <isazaka@gmail.com> | 2026-08-09 21:08:20 +0900 |
| commit | b07b41cd435991cd254957af79055080c85b346e (patch) | |
| tree | 27720d3ce14e4d0b84670a55ac26a2f877ce3a20 /plans/ImplementationPlan.md | |
| parent | 2fefd29e86c3b926d0cf4a362251d3f119688612 (diff) | |
feat: AI Agent Sandbox MCP Server v1を実装
Specifications、Design、ImplementationPlanの優先順位を整理し、単一Task実行モデル、typed option優先、設定可能なresource上限、local Ollamaを必須とするRelease Gateを文書化。
.NET 10/C# 14の5 production project、3 test project、E2E Clientを構築。typed YAML、en/ja locale、fixed/user prompt、stdioおよびloopback限定Streamable HTTP、agent_run/agent_status、Session、Ollama text/tool/Vision、TaskGraphとtoken accountingを実装。
Windows sandboxとしてfixed AppContainer、canonical/reparse検査、能力別ACL、path+SHA-256 executable approval、child-process restriction、Job Object、task journal、atomic file transaction、crash recoveryを実装。WFPのIPv4/IPv6 default denyとexact allow、dynamic session、temporary loopback exemption、管理者/BFE診断を追加。
Security/Recovery test、MCP/Ollama integration test、stdio/HTTP Operational E2E、Release Bundle生成・checksum・manifest・fresh extraction検査を追加。Requirement TraceabilityとPhase 0〜11の進捗、初回セットアップ可能なREADMEを整備。
Debug/Release/publish/objをrepository rootのbuild/へ集約し、旧project-local bin/objへの依存を除去。artifacts/とbuild/をGit管理外に設定し、clean checkoutでもsolution buildからE2E Clientまで生成可能にした。
Diffstat (limited to 'plans/ImplementationPlan.md')
| -rw-r--r-- | plans/ImplementationPlan.md | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/plans/ImplementationPlan.md b/plans/ImplementationPlan.md index c31f178..2507f5a 100644 --- a/plans/ImplementationPlan.md +++ b/plans/ImplementationPlan.md @@ -137,6 +137,8 @@ Security境界を後回しにした状態で、実際の任意Process実行をå… - warning方針 - Git ignore - 最小README +- `ollama --version` の実測baseline証跡 +- v1単一実行キュー(複数queued、planning/running/Task Resource適用は全体で最大1件) ## 5.3 非対象 - MCP実処理 - Ollama通信 @@ -265,7 +267,7 @@ MCP surfaceが仕様どおり2 Toolのみで固定されていること。 - [ ] Session継続でconversationが保持される - [ ] process再起動後Sessionが消失する - [ ] temperature overrideが当該Taskだけに作用 -- [ ] typed optionと`extra_options`競合を拒否 +- [ ] typed optionと`extra_options`競合時にtyped optionが優先される - [ ] prompt/eval tokenを取得 - [ ] transient errorだけ最大3回retry - [ ] permanent errorを無駄にretryしない @@ -549,6 +551,16 @@ ST-01〜20全PASS。skip 0。Security関連TODO 0。 Codexの自己申告ではなく、仕様書のAcceptance IDと実成果を1対1で監査する。 ## 16.2 Acceptance Test AT-01〜AT-20をすべて再実行する。 + +## 16.2.1 Release Bundle +- `dotnet publish -c Release -r win-x64 --self-contained true` を実行する。 +- `agent-mcp.exe`、runtime/dependency、`agent.yaml`、en/ja locale、User Prompt、`skills/`、READMEを含むversion付きZIP、manifest、SHA-256を生成する。 +- ソースツリー外の空directoryへ展開し、Bundle内の資源だけで `agent-mcp check`、stdio initialize、loopback HTTP起動を実行する。 + +## 16.2.2 Operational E2E Test +- E2E-01: Release Bundle、local Ollama、実測approval、stdio MCP Clientでfixtureのread/edit/process/build/test、日本語応答、Audit追跡、cleanupまで完走する。 +- E2E-02: 同等の作業をloopback Streamable HTTPで完走し、Legacy SSE、GET SSE、non-loopback bindが存在しないことを確認する。 +- Cloud model試験は任意互換試験とし、Release Gateへ含めない。 ## 16.3 Requirement Traceability監査 最低限次のマトリクスを完成させる。 | Requirement | Implementation | Test | Result | Evidence | @@ -599,6 +611,9 @@ AT-01〜AT-20をすべて再実行する。 8. Security関連未完了0 9. 仕様・設計逸脱0、または承認済み文書更新済み 10. Recovery後のclean state確認 +11. publish済みwin-x64 self-contained Release Bundleが単独で起動可能 +12. E2E-01 / E2E-02がlocal OllamaでPASS +13. READMEだけでfresh directoryから初回セットアップ可能 --- # 17. フェーズ横断テスト分類 | 種別 | 目的 | 実行タイミング | @@ -755,3 +770,7 @@ Codex作業後、人間はこの表を更新する。 - 全Security TestがPASSする。 - skipped test、Security TODO、未承認dependencyが0である。 - Codexの主張ではなく、再実行可能な証跡によって上記を確認できる。 +- Release build、Unit、Integration、ST-01〜20、AT-01〜20、Operational E2EがすべてPASSする。 +- Release Bundle単独でstdio/Streamable HTTPを実利用できる。 +- orphan process、ACL、WFP filter、temporary resource、journalの残留が0である。 +- READMEだけで初回セットアップからTask実行、Audit確認、安全な終了まで再現できる。 |
