[← Ref](/ref/)  |  [Docs](/docs/ai-provenance.htm)  |  [Portal](/portal/)  |  [Playground](/playground/)  |  [Home](/)

# AI provenance notes v0

このメモは、`ai_provenance` テンプレートを短く読むための補助資料です。
この JSON は **`POST /v1/receipts` 用の request template** であり、発行済み receipt そのものではありません。

## 1. Recommended sample

推奨する concrete sample は、短い日本語要約文の来歴を想定した publish-safe な例です。

```json
{
  "receipt_kind": "ai_provenance",
  "input_hash": "sha256:1111111111111111111111111111111111111111111111111111111111111111",
  "output_hash": "sha256:2222222222222222222222222222222222222222222222222222222222222222",
  "params_hash": "sha256:3333333333333333333333333333333333333333333333333333333333333333",
  "env_hash": "sha256:4444444444444444444444444444444444444444444444444444444444444444",
  "code_ref": "git:example/repo@main#ai_provenance_v0",
  "run_id": "ai_20260324_123456",
  "tags": {
    "content_type": "text",
    "language": "ja",
    "generated_at": "2026-03-24T12:34:56Z",
    "template_version": "ai_provenance_v0",
    "provenance_scope": "minimal"
  }
}
```

## 2. Why this shape

- `created_at` は receipt 発行時刻で、RunProof が発行後に付与します。
- `tags.generated_at` は生成イベント時刻で、利用者申告です。
- `tags` は **object map が正**で、表示時のみ `key=value` のように読ませます。
- 元の prompt や出力全文を保存せず、入力束・出力束・条件束・環境束を JCS で正規化して `sha256` を計算することで、後から照合しやすくします。

## 3. What not to include

次の情報は、このテンプレートに直接入れないことを推奨します。

- 実プロンプト本文
- 実出力全文
- 実在氏名
- 実メール
- 個人情報（PII）
- 認証情報や秘密情報
- 実内部IDや社内チケット番号

## 4. Minimal NG example

```json
{
  "tags": {
    "generated_at": "2026-03-26T10:00:00Z",
    "author_name": "<real name should not be included>",
    "email": "<real email should not be included>",
    "full_text": "<full original text should not be included>"
  }
}
```

- `author_name` は実在氏名につながるため避けます。
- `email` は実メールにつながるため避けます。
- `full_text` は原文全文ではなく、hash 中心で扱います。


## Next steps

- 意味の説明に戻る → [Docs](/docs/ai-provenance.htm)
- 実際の検証結果を見る → [Portal](/portal/)
- 発行を試す → [Playground](/playground/)
- 入口に戻る → [Home](/)
