{
  "schema_version": "1.0.0",
  "record_id": "06e25ef5-6f15-4095-bef6-99ec01d70124",
  "map_fingerprint": {
    "algorithm": "sha256",
    "hash": "6dd2ec2518cf6d6cd3da4107e12755499e792f5651c2d7390099443ef3819231",
    "inputs_summary": [
      "index.html",
      "style.css",
      "script.js",
      "singles2024.topojson",
      "D3 geoAlbersUsa projection parameters (fitSize)",
      "choropleth scale (quantize, 7 bins)",
      "hotspot threshold (90th percentile)"
    ],
    "fingerprint_notes": "Hash computed over delivered files plus key render parameters."
  },
  "date": {
    "creation_timestamp": "2026-02-09T00:00:00-07:00",
    "timezone": "America/Denver"
  },
  "model_info": {
    "llm_name": "GPT-5.2 Thinking",
    "agent_name": "Web Mapper GPT",
    "agent_url": "https://webmapgpt.com"
  },
  "map_info": {
    "title": "Recognize Singles Day \u2014 USPS Postmark Edition",
    "description": "Mobile-friendly, minimal-interaction county choropleth in an Albers USA equal-area conic projection with a postal postmark motif and optional top-decile hotspot highlighting.",
    "stack": [
      {
        "name": "D3",
        "version": "7.x",
        "purpose": "SVG rendering, projection, scaling, interaction"
      },
      {
        "name": "topojson-client",
        "version": "3.x",
        "purpose": "Convert TopoJSON to GeoJSON features"
      },
      {
        "name": "Google Fonts",
        "version": "(hosted)",
        "purpose": "Oswald (masthead) + Source Serif 4 (body)"
      }
    ],
    "outputs": {
      "artifact_directory": "recognize-singles-postmark/",
      "entrypoint": "index.html"
    },
    "map_parameters": {
      "projection": "d3.geoAlbersUsa() (equal-area conic)",
      "interaction": "No pan/zoom; tap/hover tooltip; optional top-decile highlight",
      "thematic_field": "percent_adults_single",
      "classification": "Quantize (7 bins) over observed min/max; hotspot = 90th percentile"
    }
  },
  "datasets": [
    {
      "dataset_id": "ds_singles2024_topojson",
      "name": "singles2024.topojson",
      "type": "topojson",
      "description": "US county geometries with attributes describing singles-related household/adult measures and basic counts.",
      "source": {
        "url": "https://chatgpt.com/share/698a09e4-1974-800f-96d2-94f19732594c",
        "citation": "Created using Dataset Doctor GPT with U.S. Census data and TIGER/LINE boundaries; processed with MapShaper command line.",
        "retrieved_timestamp": "2026-02-09T00:00:00-07:00",
        "license": "Underlying inputs: U.S. Census Bureau / TIGER/LINE (public domain); derived dataset license not specified."
      },
      "geometry": {
        "type": "Polygon/MultiPolygon (counties via TopoJSON arcs)",
        "crs": "WGS84 lon/lat in TopoJSON transform (projected at render time)"
      },
      "fields": [
        {
          "name": "fips",
          "type": "string",
          "description": "County FIPS code."
        },
        {
          "name": "county_name",
          "type": "string",
          "description": "County name."
        },
        {
          "name": "state_name",
          "type": "string",
          "description": "State name."
        },
        {
          "name": "total_population",
          "type": "integer",
          "description": "Total population (as provided by dataset)."
        },
        {
          "name": "percent_adults_single",
          "type": "number",
          "description": "Percent of adults who are single (0\u2013100)."
        },
        {
          "name": "total_households",
          "type": "integer",
          "description": "Total households."
        },
        {
          "name": "single_adult_households",
          "type": "integer",
          "description": "Count of single-adult-led households."
        },
        {
          "name": "reliability_score",
          "type": "number",
          "description": "Dataset-specific reliability / quality score."
        }
      ],
      "transformations": [
        {
          "step": "Acquire and prepare TIGER/LINE county geometries.",
          "tool": "U.S. Census Bureau TIGER/LINE",
          "parameters": {
            "geography": "counties"
          },
          "notes": "Inputs referenced by user."
        },
        {
          "step": "Join/derive singles-related attributes from U.S. Census data.",
          "tool": "U.S. Census data (exact table(s) unspecified)",
          "parameters": {},
          "notes": "Inputs referenced by user."
        },
        {
          "step": "Clean, join, and simplify into a county TopoJSON for web mapping.",
          "tool": "MapShaper (command line)",
          "parameters": {
            "output": "TopoJSON"
          },
          "notes": "Processing referenced by user."
        },
        {
          "step": "Orchestrate creation workflow and export dataset.",
          "tool": "Dataset Doctor GPT",
          "parameters": {
            "conversation_url": "https://chatgpt.com/share/698a09e4-1974-800f-96d2-94f19732594c"
          },
          "notes": "User-provided provenance note."
        }
      ],
      "integrity_notes": [
        "Sex breakdown fields (male/female singles) are not present in the provided dataset; tooltips show available attributes.",
        "TopoJSON object name observed: singles_simplified (loaded dynamically by script)."
      ]
    }
  ],
  "prompt_log": [
    {
      "timestamp": "2026-02-09T00:00:00-07:00",
      "role": "user",
      "content": "Initial request: design motifs for a tongue-in-cheek 'Recognize Singles Day' US map using the attached singles dataset with conic projection and minimal interaction."
    },
    {
      "timestamp": "2026-02-09T00:00:00-07:00",
      "role": "user",
      "content": "Proceed with motif 1 (postmark). Note dataset created using Dataset Doctor GPT with US Census + TIGER/LINE and MapShaper; build the map."
    }
  ],
  "reproducibility": {
    "run_instructions": [
      "Serve the folder with a local web server (required for fetch). Examples:",
      "  - Python: python3 -m http.server 8000",
      "  - Node: npx serve .",
      "Open http://localhost:8000/recognize-singles-postmark/ (or the equivalent path)."
    ],
    "inputs_required": [
      "index.html, style.css, script.js, singles2024.topojson",
      "Internet access for CDN-hosted d3, topojson-client, and Google Fonts (or download them locally)."
    ]
  },
  "ethics_and_compliance": {
    "notes": [
      "Map is intended as tongue-in-cheek and should not be interpreted as prescriptive advice.",
      "Higher % singles does not imply relationship outcomes; consider context and personal preferences."
    ]
  }
}