# Auto Prompter / Hook EU AI Act透明性対応 設計付録 作成日: 2026-07-27 対象: MAESTRO(gitea-agent-orchestrator) 位置づけ: Auto Prompter、汎用Hook、監査、承認機構に対するコンプライアンス設計付録 > 本資料は技術設計上の整理であり、法的助言ではない。実際の適用範囲、保持期間、表示義務は、提供地域、契約上の役割、intended purpose、利用分野、個人データ処理、適用される分野別法令を法務担当者が確認する。 ## 1. 結論 EU AI Act対応を単一の `compliant=true` フラグや自然言語プロンプトで保証しない。次の三層へ分離する。 1. 規則・公式ガイドラインから確認できる義務 2. 高リスクAIへ適用され得る追加統制 3. MAESTROが自主的に採用する強化策 Auto PrompterとHookは、法令適用の最終判定者ではなく、構造化された証跡、人間承認、通知、停止、監査exportを実現する技術基盤として扱う。 現行実装が提供するのは透明性・追跡可能性を**支援する技術的統制**であり、法的準拠の認定ではない。Article 50だけを根拠としてhidden chain-of-thoughtの保存や一律5年保持を要求しない。適用条文、事業者の役割、対象システム、分野別法令は法務確認の対象とし、保持期間を選択する設定は将来のCompliance Phaseで実装する。 ## 2. 公式資料で確認できた法的基準 2026年7月27日時点で参照した一次情報・欧州委員会公式資料: - [Regulation (EU) 2024/1689](https://eur-lex.europa.eu/eli/reg/2024/1689/oj/eng) - [Article 50 transparency guidelines announcement](https://digital-strategy.ec.europa.eu/en/news/commission-publishes-guidelines-transparency-obligations-providers-and-deployers-certain-ai-systems) - [Quick Facts: Transparency rules for AI systems](https://digital-strategy.ec.europa.eu/en/factpages/quick-facts-transparency-rules-ai-systems) - [AI Act Service Desk FAQ](https://ai-act-service-desk.ec.europa.eu/en/faq) 確認できた内容: - Article 50は、AIとの直接対話の通知、AI生成・操作コンテンツの機械可読マーキング、deepfake、一定の公益情報テキスト等を対象とする。 - Article 50の透明性義務は原則2026年8月2日から適用される。 - 高リスクAIのautomatic logging、deployerが出力を解釈するための透明性、人間監督は主にArticles 12、13、14で扱われる。 - Article 14は、監督者が出力を無視・上書きし、必要に応じて安全に停止できる設計を求める。 - Article 19のprovider管理下のautomatic logsは、原則としてintended purposeに適切な期間かつ最低6か月保持する。分野別EU法・国内法・個人データ保護法が別期間を定める場合がある。 - AI agentは独立した法的分類名ではなく、AI system、高リスクAI、GPAI等の定義とintended purposeに基づいて評価される。 確認できなかった主張: - 2026年7月26日にArticle 50を「すべての高リスク分野」へ拡大したという欧州委員会の公式発表 - すべての判断についてhidden chain-of-thoughtを保存する義務 - すべての判断ログを一律5年間保持する義務 - すべてのコード・文章へ同一の機械可読metadataを直接埋め込む義務 - 2027年上半期を一律の「完全施行日」とする整理 これらは法的義務として断定せず、将来の規則改正、ガイドライン、harmonised standards、分野別法令を継続確認する。 ## 3. 適用範囲の判定 ワークスペースへ `ComplianceProfile` を設定できる構成を将来追加する。 ```ts interface ComplianceProfile { region: string[]; intendedPurpose: string; operatorRole: "provider" | "deployer" | "importer" | "distributor" | "unknown"; aiActScope: "article_50" | "high_risk_candidate" | "not_assessed" | "out_of_scope"; sector: string | null; humanReviewRequired: boolean; retentionPolicyId: string; provenancePolicyId: string; } ``` - LLMによる意味分類だけで高リスクと確定しない。 - 管理権限を持つ利用者がintended purposeと利用分野を登録する。 - `high_risk_candidate` は法務・リスク担当者の確認待ちを表し、法的分類の確定を意味しない。 - 未評価の場合は「EU AI Act準拠」と表示しない。 ## 4. 構造化Decision Record hidden reasoningやモデル内部のchain-of-thoughtを保存しない。代わりに、人間が判断を再構成できる最小限の構造化証跡を保存する。 ```json { "schemaVersion": 1, "decisionId": "...", "taskId": "...", "jobId": "...", "policySnapshotId": "...", "hookPoint": "tool.before", "rule": {"id": "...", "version": 3}, "decisionMethod": "deterministic", "result": "require_approval", "reasonCode": "external_secret_risk", "reasonSummary": "外部送信候補に秘密値形式が含まれたため確認を要求", "evidenceRefs": ["tool-call:...", "source:..."], "tool": {"name": "WebSearch", "category": "external_communication"}, "approvalRequestId": "...", "executed": false, "model": {"provider": "...", "modelId": "..."}, "createdAt": "ISO-8601" } ``` 保存する: - rule ID/version、Policy Snapshot ID - 判定方法、三値結果、固定reason code - 利用者向けの短いreason summary - 安全に要約したtool名・引数・結果 - 承認・拒否・実行有無 - 参照資料と成果物へのID - モデル、時刻、相関ID - コード変更理由、変更ファイル、検証結果、影響範囲 原則保存しない: - hidden chain-of-thought、reasoning token全文 - 会話全文、prompt全文、Webページ全文 - API key、token、cookie、Authorization header - 生のtool引数や環境変数 - 人格評価や「悪意ある利用者」等のラベル ## 5. 透明性通知 - チャット画面でAI systemとの対話であることを認識可能にする。 - Auto Prompterによるredirect、deny、approval、stopはチャット履歴へ表示する。 - 通知にはrule名、対象操作、安全な理由要約、実行されたactionを含める。 - AI生成成果物には、タスク結果画面または成果物metadataで生成主体とreview状態を示す。 - 通常のソースコードへ一律のコメントを強制挿入しない。署名、format、build、diff、既存ライセンスを壊すためである。 ## 6. 生成物のProvenance 成果物本体ではなく、DBまたはsidecar manifestへ来歴を保存する。 ```json { "schemaVersion": 1, "artifactId": "...", "generatedBy": "ai-agent", "generatedAt": "ISO-8601", "reviewStatus": "pending_human_review", "taskId": "...", "decisionRecordIds": ["..."], "contentDigest": "sha256:..." } ``` Article 50上の機械可読マーキングが特定の出力へ必要かは、content種別、provider/deployerの役割、assistive editing例外、公開方法を別途判定する。内部provenance metadataの存在だけでArticle 50適合を宣言しない。 ## 7. Human Oversight 高リスク候補profileでは、次を利用可能にする。 - 専門家または指定roleによる事前承認 - fingerprintで固定された操作だけのone-shot承認 - 承認後に対象が変化した場合の再承認 - 出力の無視、上書き、差戻し - `policy_stopped`による再試行なしの安全停止 - automation biasを避ける表示 - 人間reviewerとreview結果の証跡 「医療」「金融」等の単語だけで自動的に法的高リスクと断定しない。決定的なCompliance Profileと管理者設定を優先し、自然言語判定は候補提示に限定する。 ## 8. 保持・完全性・アクセス - 保持期間は一律値ではなく `RetentionPolicy` としてregion、operator role、system分類、分野別法令、契約、個人データ処理目的ごとに設定する。 - 高リスクproviderのautomatic logsではArticle 19の最低6か月を法務確認の初期基準とする。 - 5年保持は組織または分野別要件として設定可能にするが、EU AI Act共通義務とは表示しない。 - data minimisation、purpose limitation、アクセス制御、export権限、legal hold、削除手順を定義する。 - 改ざん検知にはhash chain、署名付きmanifest、外部WORM adapterを選択可能にする。 - WORMを全workspaceへ強制せず、Compliance Profileで必要な場合だけ有効化する。 - 利用者向けexportと規制当局向けexportを分け、秘密値と第三者データを再マスクする。 ## 9. 定期監視と報告 集計対象: - rule発火、誤検知、見逃し - approval、deny、stop、override - Judge timeout、unknown、schema不正 - 人間review完了率 - provenance欠落 - source verification状況 - audit chain整合性 - retention削除・legal hold 透明性報告書の公開頻度は法令・契約・組織方針で決める。EU AI Actの共通要件として一律「年1回公開」とは断定しない。 ## 10. 実装Phaseへの追加 ```text Phase 0 Decision Record schema / masking / Policy Snapshot / OFF互換 Phase 1 AI対話表示 / provenance metadata / audit export基盤 Phase 2 決定的Policy / reason code / stop・override証跡 Phase 3 human approval / reviewer identity / one-shot CAS証跡 Phase 4 Complete前確認 / review status / Decision Recordとの対応 Compliance Phase Compliance Profile / retention policy / integrity adapter high-risk candidate workflow / transparency report / authority export ``` Compliance Phaseは自然言語Judgeの一般公開とは分離する。法的適用範囲や保存期間をJudgeに決めさせない。