{
  "version": 1,
  "published_at": "2026-10-24",
  "purpose": "Inspectable creative aging examples, not a predictive accuracy benchmark",
  "sample_size": 8,
  "source_count": 2,
  "authorized_total_usd": 5,
  "authorized_max_images": 8,
  "actual_total_usd": 0.512,
  "prompt_source": "src/ai/age-filter.ts#buildAgeFilterPrompt",
  "limitations": [
    "Two existing fictional adult sources only; source labels 35 and 65 are not measured ages.",
    "One request per source/increment, with no replacement submissions. All eight successful outputs are shown, including weak distinctions and unintended edits.",
    "No real future photographs, ground-truth age measurements or demographic evaluation. Do not infer general success or predictive accuracy."
  ],
  "cases": [
    {
      "id": "adult-source-35-plus-10",
      "source": "/images/face-tools/source-35.jpg",
      "source_sha256": "5306b12842700e615c92010fbbf84494f153691ca1ce0c7c05b084a2f8ab166b",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 10,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771517-d5qoqekw",
      "submitted_at": "2026-10-23T16:05:11.070Z",
      "completed_at": "2026-10-23T16:06:48.497Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "86f74066e5f3104a99f38b73c33b216d7b9f930a5316d52e051c1bd9699616c4",
      "public_image": "/images/aging-evidence/adult-source-35-plus-10.jpg",
      "public_sha256": "83d01d7460dfdea817753cf02fba5c525ea426934195ef1942f29ea5c15dd239",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "The +10/+20 outputs look very similar. Gray hair is more apparent at +30/+40. The increments are not a calibrated chronology."
      },
      "prompt": "Naturally age the person in this photo by approximately 10 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-35-plus-20",
      "source": "/images/face-tools/source-35.jpg",
      "source_sha256": "5306b12842700e615c92010fbbf84494f153691ca1ce0c7c05b084a2f8ab166b",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 20,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771620-v22p7776",
      "submitted_at": "2026-10-23T16:06:53.937Z",
      "completed_at": "2026-10-23T16:07:17.933Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "86be699e03850ebcbe0e58df7757a91c0fe885069ab4e81f3eb3a286aff58a61",
      "public_image": "/images/aging-evidence/adult-source-35-plus-20.jpg",
      "public_sha256": "2c8d5f830b9b7e4ec0f201a7192bb937f676f505e7f8255477f9b7a181868483",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "The +10/+20 outputs look very similar. Gray hair is more apparent at +30/+40. The increments are not a calibrated chronology."
      },
      "prompt": "Naturally age the person in this photo by approximately 20 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-35-plus-30",
      "source": "/images/face-tools/source-35.jpg",
      "source_sha256": "5306b12842700e615c92010fbbf84494f153691ca1ce0c7c05b084a2f8ab166b",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 30,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771653-u26rpg64",
      "submitted_at": "2026-10-23T16:07:26.704Z",
      "completed_at": "2026-10-23T16:08:32.616Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "4c33f9b88fde8fb6385fd9ba1caa99671f2109a96284c9789456ea17d48bf145",
      "public_image": "/images/aging-evidence/adult-source-35-plus-30.jpg",
      "public_sha256": "25271063ac1c813b2cca2b7e8bc5968393a37a911c80e4ffa9e0f34be5b19137",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "The +10/+20 outputs look very similar. Gray hair is more apparent at +30/+40. The increments are not a calibrated chronology."
      },
      "prompt": "Naturally age the person in this photo by approximately 30 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-35-plus-40",
      "source": "/images/face-tools/source-35.jpg",
      "source_sha256": "5306b12842700e615c92010fbbf84494f153691ca1ce0c7c05b084a2f8ab166b",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 40,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771727-9ootstww",
      "submitted_at": "2026-10-23T16:08:38.936Z",
      "completed_at": "2026-10-23T16:09:28.386Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "a4f25aa048c1c9a94e2db43316ccb793fc73e6555654c0c6d771094e4ff2f69e",
      "public_image": "/images/aging-evidence/adult-source-35-plus-40.jpg",
      "public_sha256": "eba33992e0e6d6bef97486a85fcca0bb9e5adb82a96ec25197e5a002a4e41580",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "The +10/+20 outputs look very similar. Gray hair is more apparent at +30/+40. The increments are not a calibrated chronology."
      },
      "prompt": "Naturally age the person in this photo by approximately 40 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-65-plus-10",
      "source": "/images/face-tools/source-65.jpg",
      "source_sha256": "8db75cec4a862842ba9b2d0b00e12cb762345dd7c3e72af75b3efedb9347a977",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 10,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771782-wyte1ly8",
      "submitted_at": "2026-10-23T16:09:35.903Z",
      "completed_at": "2026-10-23T16:10:00.874Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "ee0042e62bc9c33e610282a4c88d65818c4f9fa2c37ae487158fa601ddf6e00a",
      "public_image": "/images/aging-evidence/adult-source-65-plus-10.jpg",
      "public_sha256": "93113041f12a22437f58105b621e7bf345ec44dcb3f2fcf1daf2668f678a73f7",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "Wrinkles and hair change, but +20 also brightens the shirt and adds stubble. +30/+40 do not establish a monotonic measured age."
      },
      "prompt": "Naturally age the person in this photo by approximately 10 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-65-plus-20",
      "source": "/images/face-tools/source-65.jpg",
      "source_sha256": "8db75cec4a862842ba9b2d0b00e12cb762345dd7c3e72af75b3efedb9347a977",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 20,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771816-s1k0s1u6",
      "submitted_at": "2026-10-23T16:10:09.063Z",
      "completed_at": "2026-10-23T16:11:07.496Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "0e2e6912223f42c64e1ae899cf9f74c193e50bcb325b5aefd055a2d9dc01ded8",
      "public_image": "/images/aging-evidence/adult-source-65-plus-20.jpg",
      "public_sha256": "1b37ba1f4d8bddaadfad995fd9ec0e87966e2e6f6e944e1022aba03194486deb",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "Wrinkles and hair change, but +20 also brightens the shirt and adds stubble. +30/+40 do not establish a monotonic measured age."
      },
      "prompt": "Naturally age the person in this photo by approximately 20 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-65-plus-30",
      "source": "/images/face-tools/source-65.jpg",
      "source_sha256": "8db75cec4a862842ba9b2d0b00e12cb762345dd7c3e72af75b3efedb9347a977",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 30,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771880-tceur8lg",
      "submitted_at": "2026-10-23T16:11:13.434Z",
      "completed_at": "2026-10-23T16:11:47.668Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "edc41cf7f0911e8d3ea1b6c82aa11fd115211f2940044cb764de2cffc2ac9077",
      "public_image": "/images/aging-evidence/adult-source-65-plus-30.jpg",
      "public_sha256": "e6576a0710e038af7f2b9dfff5f455ca853eb4ec31fbdea63d4c3d53cc1ce5fe",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "Wrinkles and hair change, but +20 also brightens the shirt and adds stubble. +30/+40 do not establish a monotonic measured age."
      },
      "prompt": "Naturally age the person in this photo by approximately 30 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    },
    {
      "id": "adult-source-65-plus-40",
      "source": "/images/face-tools/source-65.jpg",
      "source_sha256": "8db75cec4a862842ba9b2d0b00e12cb762345dd7c3e72af75b3efedb9347a977",
      "source_provenance": "Existing published fictional adult source portrait; the number is a source label, not a measured age.",
      "additional_years": 40,
      "model": "nano-banana-2",
      "provider": "evolink",
      "provider_task_id": "task-unified-1792771922-zw93b46z",
      "submitted_at": "2026-10-23T16:11:53.972Z",
      "completed_at": "2026-10-23T16:12:42.803Z",
      "actual_usd": 0.064,
      "resolution": "1k",
      "aspect_ratio": "1:1",
      "width": 1024,
      "height": 1024,
      "original_sha256": "4681e63922aead7a92fac0337df9348a23f1f0579389346b0a173060a1f68655",
      "public_image": "/images/aging-evidence/adult-source-65-plus-40.jpg",
      "public_sha256": "b190dc0560cdedda6bba7655b10ea843d08a0c58f9d9bf47eb5a6d58c5f804cc",
      "processing": "JPEG encoding at quality 90 only; no retouching or compositing",
      "review": {
        "date": "2026-10-24",
        "method": "Direct visual comparison with source and other increments",
        "recognizability": "Major eye, nose and mouth shapes remain recognizable; no quantitative identity measurement",
        "limitations": "Wrinkles and hair change, but +20 also brightens the shirt and adds stubble. +30/+40 do not establish a monotonic measured age."
      },
      "prompt": "Naturally age the person in this photo by approximately 40 additional years relative to their current appearance. Always make the person visibly older than the input, including when the input already shows an elderly adult. Preserve all existing signs of aging and add plausible wrinkles, skin texture changes and gray hair appropriate to the additional years. Keep the same identity, facial structure, expression, hairstyle, clothing and composition. Photorealistic, no smoothing, beautification or reversal of aging. This is an artistic simulation, not a prediction."
    }
  ],
  "method": "One independent provider request per case using the current buildAgeFilterPrompt and configured provider adapter; these calls do not by themselves test the signed-in application workflow."
}
