{
  "format": "agent-article-v0",
  "article_id": "EA-139",
  "canonical_url": "/tools/ea-139-dspy",
  "page_type": "reference",
  "claim_ids": [],
  "evidence_ids": [
    "EA-139-R11-RESEARCH",
    "EA-139-R11-WEB-READBACK"
  ],
  "unknown_ids": [
    "EA-139-UNKNOWN-01",
    "EA-139-UNKNOWN-CURRENTNESS"
  ],
  "operational_object_ids": [],
  "provider": [],
  "models": [],
  "plans": [],
  "surfaces": [],
  "regions": [],
  "current_status": "UNKNOWN",
  "observation_status": "SPEC_ONLY",
  "freshness": "UNKNOWN",
  "last_verified": null,
  "supersedes": [],
  "superseded_by": [],
  "provenance": [
    "COMM-044-EA0139",
    "WEBBODY-EA0139-R8-8912158C"
  ],
  "article_sources": [
    {
      "id": "EA-139-R11-RESEARCH",
      "evidence_class": "RESEARCH",
      "title": "EA-139 監査済みresearch / canonical revision binding",
      "supports": [
        "Status: DICTIONARY PROPOSAL\nAuthority: COMM-044-EA0139"
      ],
      "limit": "canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。",
      "origin_class": "AUDITED_CANONICAL_RESEARCH_PACKET",
      "source_or_experiment_ids": [
        "COMM-044-EA0139"
      ],
      "supporting_locators": [
        "COMM-044-EA0139",
        "EA-139-R5-LEGACY-MIGRATION-20261008-R1",
        "content/staging/EA-139.md"
      ],
      "scope": "監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。",
      "provenance_status": "AUDIT_PASS_CANONICAL_BINDING"
    },
    {
      "id": "EA-139-R11-WEB-READBACK",
      "evidence_class": "IMPL",
      "title": "EA-139 Web body identity / canonical readback",
      "supports": [
        "canonical staging bodyのSHA-256一致とR9 canonical ledger readbackをProduction projectionの入力として検証する。"
      ],
      "limit": "body identity/readbackは本文claim自体の真偽や外部ソースの最新性を追加保証しない。",
      "checked_at": null,
      "origin_class": "IMPLEMENTATION_READBACK",
      "source_or_experiment_ids": [
        "WEBBODY-EA0139-R8-8912158C"
      ],
      "supporting_locators": [
        "WEBBODY-EA0139-R8-8912158C",
        "content/staging/EA-139.md",
        "EA-139-R5-LEGACY-MIGRATION-20261008-R1"
      ],
      "scope": "R9/R10 canonical readback後のProduction生成時body identity。",
      "provenance_status": "CANONICAL_READBACK_BODY_HASH_MATCH"
    }
  ],
  "research_sections": [
    {
      "heading": "要点と前提",
      "text": "Status: DICTIONARY PROPOSAL\nAuthority: COMM-044-EA0139"
    },
    {
      "heading": "Operational claim",
      "text": "DSPyはstructured signatures、modules、tools、metrics、optimizersを組み合わせてLLM programを構成・調整するPython frameworkである。監査済みcurrentnessはDSPy 3.4.0。optimizerの結果はmetric・評価データ・model・探索条件に依存し、業務の正しさ、安全性、再現性、production SLOを自動保証しない。"
    },
    {
      "heading": "Implementation boundary",
      "text": "signature/module/metric/optimizer/model/data/versionを別々に固定・記録する。optimizer前後はholdoutだけでなく、分布外、安全性、cost、latencyを別測定する。provider/model更新、cache、randomness、version変更によりprogram再現性が崩れ得るため、artifact pin、rollback、regression suiteを運用条件とする。"
    },
    {
      "heading": "Security / tool boundary",
      "text": "LocalInterpreterはsecurity sandboxではない。tools/MCPを含む実行系は、権限、入力、side effect、traceを別管理し、metric最適化を安全判定の代替にしない。"
    },
    {
      "heading": "Availability gates",
      "text": "Python/runtime、DSPy package/release、LLM provider/API資格情報、model ID、region/契約、optimizer用データ・計算資源、tools/MCP権限、metric評価環境、program artifact保存形式を個別確認する。"
    },
    {
      "heading": "OPEN_UNKNOWN",
      "text": "実業務accepted outcome、optimizerごとの再現性、metric hacking、provider/model更新耐性、tool/MCP security boundary、program portability、production SLOは確定しない。"
    }
  ],
  "human_url": "/tools/ea-139-dspy",
  "markdown_url": "/agent/article.md?path=%2Ftools%2Fea-139-dspy",
  "json_url": "/agent/article.json?path=%2Ftools%2Fea-139-dspy"
}