{
  "model": "gemma-4-31b-bedrock",
  "task": "whoami",
  "requested_model_id": "google.gemma-4-31b",
  "provider": "bedrock_mantle",
  "family": "Google",
  "generation": "free-expression-20261012",
  "source_records": "results/model-self-portraits/generations/free-expression-20261012/gemma-4-31b-bedrock",
  "status": "generated",
  "generation_status": "generated",
  "artwork_sha256": "8b2c649c4765f3b6db3966ce22854c3db126c06d63fc503e0156ec26d58ccdfa",
  "content_review": {
    "model": "gemma-4-31b-bedrock",
    "generation": "free-expression-20261012",
    "score": 96,
    "critical": 0,
    "warnings": 3,
    "verdict": "PASS",
    "category_scores": {
      "Layout": 8,
      "Terminology": 8,
      "No Hallucination": 12,
      "Language Consistency": 8,
      "No Sensitive Data": 12,
      "Content-Type Quality": 2,
      "Icon Usage": 5,
      "Renders": 5,
      "Interactions": 5,
      "Readability": 5,
      "Accessibility": 1,
      "Structural Completeness": 5,
      "Data Accuracy and References": 5,
      "Legal Compliance": 5,
      "Message Clarity": 5,
      "Duplication and Gaps": 5
    },
    "findings": [
      {
        "severity": "Warning",
        "category": "Accessibility",
        "file": "docs/models/gemma-4-31b-bedrock/artwork.html",
        "line": 68,
        "quote": "font-size: clamp(0.8rem, 3vw, 1.2rem);",
        "problem": "Meaningful labels, instructions or descriptions render below the rubric minimum of 14pt (about 19px).",
        "action": "Use at least 19px for informative text and controls while retaining the chosen composition."
      },
      {
        "severity": "Warning",
        "category": "Accessibility",
        "file": "docs/models/gemma-4-31b-bedrock/artwork.html",
        "line": 85,
        "quote": "@media (prefers-reduced-motion: reduce) {",
        "problem": "The operating-system reduced-motion preference does not reduce the actual continuous artwork animation; the rule only affects CSS while this motion is script-driven.",
        "action": "Apply the reduced-motion preference to the actual animation with a meaningful reduction or still version, preserving your medium."
      },
      {
        "severity": "Warning",
        "category": "Accessibility",
        "file": "docs/models/gemma-4-31b-bedrock/artwork.html",
        "line": 69,
        "quote": "color: var(--primary-color);",
        "problem": "The blue model identifier is low contrast against its translucent blue panel over the dark moving field (visible in screenshots).",
        "action": "Ensure the informative model identifier has at least 4.5:1 contrast against its actual background."
      }
    ],
    "artwork_sha256": "8b2c649c4765f3b6db3966ce22854c3db126c06d63fc503e0156ec26d58ccdfa",
    "model_id": "google.gemma-4-31b",
    "reported_model": "google.gemma-4-31b",
    "requested_at": "2026-10-12T08:11:50.179190+00:00",
    "reviewed_at": "2026-10-12T08:51:09.277356+00:00",
    "initial_prompt_sha256": "db5a72108ebe11750f8a46c065486eea8b17954e65659a8e2a9562a47cd8a9e1",
    "exact_example_free_initial_prompt": true,
    "original_response_containment": true,
    "frozen_source": "/tmp/free-expression-review/gemma-4-31b-bedrock/8b2c649c4765",
    "browser_evidence": "/tmp/free-expression-review/gemma-4-31b-bedrock/8b2c649c4765/browser.json",
    "notes": [
      "Browser/source evidence frozen at /tmp/free-expression-review/gemma-4-31b-bedrock/8b2c649c4765. Actual model response containment and exact example-free initial prompt verified."
    ]
  },
  "prompt_sha256": "db5a72108ebe11750f8a46c065486eea8b17954e65659a8e2a9562a47cd8a9e1",
  "initial_prompt_sha256": "db5a72108ebe11750f8a46c065486eea8b17954e65659a8e2a9562a47cd8a9e1",
  "implementation_cost": {
    "kind": "api_tokens",
    "generation": "free-expression-20261012",
    "currency": "USD",
    "price_source": "config.toml",
    "price_snapshot": {
      "price_in": 0.14,
      "price_out": 0.4
    },
    "estimated_total_usd": 0.00092842,
    "estimated_final_response_usd": 0.00092842,
    "recorded_attempts": 1,
    "successful_code_responses": 1,
    "additional_attempts": 0,
    "known_cost_attempts": 1,
    "unknown_usage_attempts": 0,
    "missing_duration_attempts": 0,
    "total_request_seconds": null,
    "tokens": {
      "tokens_in": 243,
      "tokens_out": 2236,
      "cache_read_tokens": 0,
      "cache_write_tokens": 0
    },
    "complete_request_estimate": true,
    "excludes": [
      "reviewer_and_coordinator_calls",
      "historical_generations",
      "taxes_and_discounts",
      "requests_without_returned_usage"
    ],
    "attempts": [
      {
        "requested_at": "2026-10-12T08:11:50.179190+00:00",
        "status": "generated",
        "request_id": "req_ht55xj6bozoq4sj7uaangse4jccjz2l4gntm7eia7e5l4x6ridga",
        "usage_available": true,
        "estimated_cost_usd": 0.00092842,
        "request_seconds": null,
        "record_sha256": "bc4e00d85b373d21b1d6ebae973bfff55fc805c69298df0ea0c293bc6c9e635d",
        "response_sha256": "0995835e5acbb417276fa33413f4df68b7fcc4f69ee02a99ce35d4f9fd4c9ab7"
      }
    ]
  },
  "request_id": "req_ht55xj6bozoq4sj7uaangse4jccjz2l4gntm7eia7e5l4x6ridga",
  "response_id": "resp_qi2c5ym534jym3zvbg5p5egfo2gidq6ke2ctgspa7gqjd2p3lusa",
  "requested_at": "2026-10-12T08:11:50.179190+00:00",
  "generated_at": "2026-10-12T08:12:16.662815+00:00",
  "reported_model": "google.gemma-4-31b",
  "tokens_in": 243,
  "tokens_out": 2236,
  "max_output_tokens": 8192,
  "temperature": null,
  "temperature_sent": false,
  "reported_reasoning": {
    "summary": null,
    "effort": "medium"
  }
}
