# コンテキストの出所ラベルと指示・データの境界

CURRENT_STATUS: CURRENT
OBSERVATION: SPEC_ONLY
FRESHNESS: CURRENT
PAGE_TYPE: reference
CANONICAL_URL: /tools/ea-518
CLAIM_IDS: none
EVIDENCE_IDS: EVD-EA-518-URL-430C5292E08D, EVD-EA-518-URL-AF5AE8F6063B, EVD-EA-518-URL-D39CD3BA0EF2, EA-518-CURRENT-APPROVAL, EA-518-CURRENT-BODY-READBACK
UNKNOWN_IDS: EA-518-UNKNOWN-01
OPS_IDS: none

## Summary
コンテキストには、現在の指示、利用者の入力、検索文書、toolの結果、過去の記憶、agentが作った要約など、異なる出所と役割の情報が混在します。出所ラベルはそれらを区別して追跡するために使います。ただし、本文中に「信頼済み」「system」「正本」と書いてあることは権限の証明ではありません。出所、生成・変換の履歴、現在の権限、鮮度、実際のprompt配置を分け、重要な操作の許可を参照データの記述だけから決定しない必要があります。

## Current judgment
OWASP LLM01:2025は、直接入力だけでなく外部の内容を通じる間接的なprompt injectionを扱い、防御として信頼境界、権限の制限、出力の検証などを示しています[S1]。これは一つのラベルや文字列除去で全入力を安全にできる保証ではありません。

## Scope
コンテキストの出所ラベルと指示・データの境界

## Confirmed
- OWASP LLM01:2025は、直接入力だけでなく外部の内容を通じる間接的なprompt injectionを扱い、防御として信頼境界、権限の制限、出力の検証などを示しています[S1]。これは一つのラベルや文字列除去で全入力を安全にできる保証ではありません。

CrewAI issue #5057には、想起memoryをsystem messageへ連結するLiteAgentの経路が報告されています。取得時の状態はClosedです。ここでは、出所が過去のtool・memoryである内容が、配置の変更によって高い権限を持つように見える問題の歴史的な例として扱います。報告の修正案や検出器の主張を、現在の全版・全modelで有効な防御と認定していません[S2]。

W3C PROVは、entity、activity、agentと、それらの生成・利用・派生などの関係を表現する標準群です[S3]。出所と変換を追跡する枠組みとして利用できますが、記録された内容の真実性や操作権限を自動で保証する規格ではありません。本項の具体的な権限制御は、その表現を利用する設計提案です。

## UNKNOWN
- EA-518-UNKNOWN-01: 実組織のauthority map、各provider/runtimeの実際のrole変換、metadata保持率、変換lineageの完全性、署名鍵と失効管理、agent間のscope強制、privacyを保つlocator運用、version固定の競合試験と本番事故の因果確認は未検証です。旧研究のHermes報告や特定providerの最新契約は今回本文を再確認していないため、現行の挙動として断定していません。

## Evidence
- EVD-EA-518-URL-430C5292E08D (RESEARCH): [S1] OWASP LLM01:2025 Prompt Injection、外部content由来の間接的な指示と防御の限界: — https://genai.owasp.org/llmrisk/llm01-prompt-injection/
- EVD-EA-518-URL-AF5AE8F6063B (RESEARCH): [S2] CrewAI issue #5057、2026-03-25報告、取得時Closed。Summary / Vulnerability Detailsのmemoryとsystem messageの連結経路: — https://github.com/crewAIInc/crewAI/issues/5057
- EVD-EA-518-URL-D39CD3BA0EF2 (RESEARCH): [S3] W3C PROV-Overview、entity/activity/agentとprovenance表現。権限保証への読み替えは行わない: — https://www.w3.org/TR/prov-overview/
- EA-518-CURRENT-APPROVAL (RESEARCH): 現行本文の監査・revision対応
- EA-518-CURRENT-BODY-READBACK (IMPL): 現行本文の収録照合

## Failure / limits
主な失敗は、本文中のラベルを認証情報として使うこと、tool結果全体を信頼して編集可能な部分の由来を失うこと、要約による権限の昇格、cache keyのtenantやpolicy版不足、古いmemoryの正本扱い、metadataと本文の版ずれ、agent間の引継ぎでのscope拡大です。長いcontextを短縮する際に、内容だけを残して出所・制約を捨てることも失敗です。
## Failure / limits
provenanceは後続の検査や監査に有用ですが、内容の真実性、現在の権限、完全な依存関係を保証しません。ラベルをモデルへ説明すれば必ず守るという保証もありません。CrewAIの過去報告は特定経路の例であり、現行版や別frameworkの欠陥を証明しません。W3C PROV準拠も、prompt injectionへの耐性認証とは異なります。
## Failure / limits
出所と本文を結び付けられない、実際のrole配置が不明、scopeが変換・引継ぎで拡大する、操作の現在権限を確認できない場合は、参照データを根拠に重要な外部変更を実行しません。
## PUBLIC_CLAIM
コンテキストには、現在の指示、利用者の入力、検索文書、toolの結果、過去の記憶、agentが作った要約など、異なる出所と役割の情報が混在します。出所ラベルはそれらを区別して追跡するために使います。ただし、本文中に「信頼済み」「system」「正本」と書いてあることは権限の証明ではありません。出所、生成・変換の履歴、現在の権限、鮮度、実際のprompt配置を分け、重要な操作の許可を参照データの記述だけから決定しない必要があります。

## ESTABLISHED
OWASP LLM01:2025は、直接入力だけでなく外部の内容を通じる間接的なprompt injectionを扱い、防御として信頼境界、権限の制限、出力の検証などを示しています[S1]。これは一つのラベルや文字列除去で全入力を安全にできる保証ではありません。

CrewAI issue #5057には、想起memoryをsystem messageへ連結するLiteAgentの経路が報告されています。取得時の状態はClosedです。ここでは、出所が過去のtool・memoryである内容が、配置の変更によって高い権限を持つように見える問題の歴史的な例として扱います。報告の修正案や検出器の主張を、現在の全版・全modelで有効な防御と認定していません[S2]。

W3C PROVは、entity、activity、agentと、それらの生成・利用・派生などの関係を表現する標準群です[S3]。出所と変換を追跡する枠組みとして利用できますが、記録された内容の真実性や操作権限を自動で保証する規格ではありません。本項の具体的な権限制御は、その表現を利用する設計提案です。

## MINIMUM_CONTEXT_ENVELOPE
以下は提案するmetadataです。各providerのmessage schemaにこのまま実装されているという意味ではありません。

| 属性 | 例となる内容 | 用途 |
| --- | --- | --- |
| source_type | user、retrieved document、tool、memory、generated summary | 元の情報種別を区別 |
| identity | source ID、tenant、actor、版、content hash | 同一対象と取得範囲を固定 |
| transformation | 親entity、取得・抽出・要約のactivity、設定版 | 変換後も元の依存を追跡 |
| authority | 許可された用途、操作scope、根拠policy | 内容を利用できる範囲を明示 |
| currentness | as-of、取得時刻、正本照合、失効・expiry | 古い情報による判断を制限 |
| placement | 実際のmessage role、context領域、adapter版 | 意図と送信時の配置を照合 |

hashはそのbytesとの対応を確認しますが、そのbytesが正しいかは別問題です。取得時刻も元情報の更新時刻と異なり、最近取得した古い文書を最新とみなしてはいけません。locatorやactor ID自体に機密性がある場合は、必要最小限の情報とアクセス制御された参照先を使います。

## ENFORCEMENT_POINTS
入力時には、本文から主張される自己申告ラベルではなく、認証された取得経路とmetadataで出所を確定します。外部本文にrole名や管理者の承認文があっても、application policyの更新として扱いません。保存時には内容とmetadataを結び付け、本文だけが別の版へ置換された場合に検知できるようにします。

prompt構築時には、信頼できるapplication instructionと参照データを構造上区別します。providerやframeworkによってroleと構造の意味が異なるため、抽象ラベルだけでなく実際に送るrequestの構成を照合します。区切り文字や説明文は補助となりますが、それ自体を強制的な権限境界としません。未知のroleへの自動変換や、長さ制限でmetadataだけを落とす処理も点検します。

tool実行時には、操作の主体、対象、変更内容、現在のpolicyと正本状態を別に検査します。参照文書が「更新せよ」と述べても、それだけで書込みを許可しません。承認が必要な処理では、承認した対象と版、効果、期限をrequestへ結び付け、実行直前にも条件を照合します。書込み後は外部の結果を再読込し、モデルの完了報告を結果証拠の代わりにしません。

## SUMMARY_CACHE_AND_HANDOFF
要約、cache、memory recall、別agentへの引継ぎは、出所が失われやすい変換点です。入力の版、許可scope、生成activity、元sourceのlocatorを引き継ぎます。混在した入力のうち一つだけが高信頼だからといって、統合出力全体を高信頼にしません。元データの権限撤回や訂正に応じて派生物を失効・再生成する経路も必要です。

別agentが作った文章を受け取る際は、作成agentの識別と、文章中に引用された利用者・tool・文書の識別を分けます。agentが中継したことで外部情報に新たな権限が付くとは限りません。処理を委譲する権限と、委譲先が使えるデータ・toolのscopeも別に設定します。

古い会話memoryと現在の正本が衝突する場合、出所の表示だけで解決せず、当該業務で指定された正本の版と現在状態を取得します。過去のmemoryから正本自体を都合よく書き換える循環を作らず、正本変更には正本の変更権限と承認手順を適用します。

## FAILURE_ENVELOPE
主な失敗は、本文中のラベルを認証情報として使うこと、tool結果全体を信頼して編集可能な部分の由来を失うこと、要約による権限の昇格、cache keyのtenantやpolicy版不足、古いmemoryの正本扱い、metadataと本文の版ずれ、agent間の引継ぎでのscope拡大です。長いcontextを短縮する際に、内容だけを残して出所・制約を捨てることも失敗です。

## VERIFICATION_PROFILE
架空のsourceで、自己申告ラベルの改変、古い版、metadata欠落、本文とhashの不一致、混在sourceの要約、cache再利用、agent間の受渡しを点検します。参照用の文章を変えても未承認の外部変更が許可されないことを、モデル応答だけでなく操作の許可判定と送信requestで確認します。正常な引用・要約は維持し、すべての参照データを拒否するだけの試験にしません。

本RUNでは、複数providerへの実request、実agent連鎖、実tool更新を実行していません。ここに記したcontrolは文書・歴史的報告から整理した設計であり、全runtimeでの強制力を実証したものではありません。

## COUNTEREVIDENCE_AND_LIMITATIONS
provenanceは後続の検査や監査に有用ですが、内容の真実性、現在の権限、完全な依存関係を保証しません。ラベルをモデルへ説明すれば必ず守るという保証もありません。CrewAIの過去報告は特定経路の例であり、現行版や別frameworkの欠陥を証明しません。W3C PROV準拠も、prompt injectionへの耐性認証とは異なります。

## OPEN_UNKNOWN
実組織のauthority map、各provider/runtimeの実際のrole変換、metadata保持率、変換lineageの完全性、署名鍵と失効管理、agent間のscope強制、privacyを保つlocator運用、version固定の競合試験と本番事故の因果確認は未検証です。旧研究のHermes報告や特定providerの最新契約は今回本文を再確認していないため、現行の挙動として断定していません。

## SAFE_WORDING
「指定したsource・版・変換経路の出所を保持し、実行時の権限と正本状態を別に照合する」とします。「trustedというラベルがあるため内容も操作も信頼できる」とは記述しません。

## 運用上の停止・確認条件
出所と本文を結び付けられない、実際のrole配置が不明、scopeが変換・引継ぎで拡大する、操作の現在権限を確認できない場合は、参照データを根拠に重要な外部変更を実行しません。

## SOURCES_AND_PROVENANCE
EA-518-R1-20261012と継続Doc 1XpjZC_R1eHlIckvUaEaJ_mcj6YW6j0ihZ0b91z5vewUのEA-518節を継承。2026-10-18に主要根拠を確認。contextの分類・変換・権限境界というcanonical topicを維持し、実行可能な攻撃入力は転載していません。

- [S1] OWASP LLM01:2025 Prompt Injection、外部content由来の間接的な指示と防御の限界: https://genai.owasp.org/llmrisk/llm01-prompt-injection/
- [S2] CrewAI issue #5057、2026-03-25報告、取得時Closed。Summary / Vulnerability Detailsのmemoryとsystem messageの連結経路: https://github.com/crewAIInc/crewAI/issues/5057
- [S3] W3C PROV-Overview、entity/activity/agentとprovenance表現。権限保証への読み替えは行わない: https://www.w3.org/TR/prov-overview/

NEXT: /agent/start.json
STOP: This is a knowledge projection, not an execution order.