{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "final-release-00",
   "metadata": {},
   "source": [
    "# CORDIS → UN SDG Target Mapping\n",
    "\n",
    "Evaluator-facing frozen-output reproducibility notebook. It performs **no inference** and changes no mapping. The release contains 150 projects, 231 supported relationships and four preserved system-invalid cases. Results below are recomputed from included files; integrity checks are not evidence of semantic accuracy."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-01",
   "metadata": {},
   "source": [
    "## A. Problem definition\n",
    "\n",
    "Map each project to zero or more exact UN SDG Targets. Broad topic similarity and isolated keywords are insufficient: target actions and qualifiers require project evidence. Retrieval proposes candidates; semantic verification assesses them. A project may remain unmapped."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "final-release-02",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:01.243758Z",
     "iopub.status.busy": "2026-09-27T10:12:01.242243Z",
     "iopub.status.idle": "2026-09-27T10:12:05.628905Z",
     "shell.execute_reply": "2026-09-27T10:12:05.627375Z"
    }
   },
   "outputs": [],
   "source": [
    "from pathlib import Path\n",
    "import json, hashlib, csv\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.ticker import MaxNLocator\n",
    "from IPython.display import display\n",
    "\n",
    "ROOT = Path.cwd().resolve()\n",
    "if ROOT.name == 'notebooks':\n",
    "    ROOT = ROOT.parent\n",
    "if not (ROOT / 'data/cordis_sdg_mapping.csv').is_file():\n",
    "    raise RuntimeError('Run from the release root or its notebooks directory.')\n",
    "def load_json(name):\n",
    "    return json.loads((ROOT / 'artifacts' / name).read_text(encoding='utf-8'))\n",
    "mapping = pd.read_csv(ROOT / 'data/cordis_sdg_mapping.csv', dtype={'project_id':str, 'target_code':str}, keep_default_na=False)\n",
    "projects = pd.read_csv(ROOT / 'data/project_mapping_summary.csv', dtype={'project_id':str}, keep_default_na=False)\n",
    "corpus = pd.read_csv(ROOT / 'data/final_projects_150_privacy_clean.csv', dtype={'project_id':str}, keep_default_na=False)\n",
    "candidates = pd.read_csv(ROOT / 'artifacts/final_candidate_pairs_1500.csv', dtype={'project_id':str,'target_code':str})\n",
    "uncertain = pd.read_csv(ROOT / 'data/uncertain_system_cases.csv', dtype={'project_id':str})\n",
    "responses = [json.loads(line) for line in (ROOT / 'artifacts/final_responses.jsonl').read_text(encoding='utf-8').splitlines()]\n",
    "quality = load_json('quality_report.json')\n",
    "plt.rcParams.update({'font.size':11, 'axes.spines.top':False, 'axes.spines.right':False, 'figure.dpi':120})\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-03",
   "metadata": {},
   "source": [
    "## B. Data source\n",
    "\n",
    "Source: CORDIS project data. The frozen processed source is recorded in the manifest below, with its SHA-256. The full source population is not published here. **The exact original upstream retrieval/download date is unavailable**; later timestamps are not substitutes. This notebook consumes only the frozen privacy-clean demonstration corpus."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "final-release-04",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.636935Z",
     "iopub.status.busy": "2026-09-27T10:12:05.635940Z",
     "iopub.status.idle": "2026-09-27T10:12:05.671186Z",
     "shell.execute_reply": "2026-09-27T10:12:05.668174Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "source_file                                             data\\processed\\projects_clean.csv\n",
       "source_sha256                           003dd63261ba9d31433c7c6f6753d55135700f4c88e53b...\n",
       "eligible_population_after_exclusions                                                23329\n",
       "selected_projects                                                                     150\n",
       "Name: Recorded source provenance, dtype: object"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "source_manifest = load_json('final_corpus_manifest.json')\n",
    "pd.Series({k:source_manifest[k] for k in ['source_file','source_sha256','eligible_population_after_exclusions','selected_projects']}, name='Recorded source provenance')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-05",
   "metadata": {},
   "source": [
    "## C. Final corpus construction\n",
    "\n",
    "The retained manifest describes deterministic balanced-proportional stratification, minimum 250 objective characters, development/validation exclusions and 24 reserve IDs excluded using metadata. It records no SDG-label or prior-prediction use. Those selection-stage claims are retained provenance; final selection code was not recovered, so no fresh population selection is reproduced here. The privacy amendment corrected an omitted eligibility screen using six replacements with the same deterministic ordering and stratum allocation. No reserve text is included or inspected. This is a controlled demonstration, not a probability sample."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "final-release-06",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.676191Z",
     "iopub.status.busy": "2026-09-27T10:12:05.675191Z",
     "iopub.status.idle": "2026-09-27T10:12:05.778491Z",
     "shell.execute_reply": "2026-09-27T10:12:05.775476Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Projects</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>HORIZON_EUROPE|2021_2023</th>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>HORIZON_EUROPE|2024_PLUS</th>\n",
       "      <td>68</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OTHER|2021_2023</th>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OTHER|2024_PLUS</th>\n",
       "      <td>27</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                          Projects\n",
       "HORIZON_EUROPE|2021_2023        40\n",
       "HORIZON_EUROPE|2024_PLUS        68\n",
       "OTHER|2021_2023                 15\n",
       "OTHER|2024_PLUS                 27"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Removed ID (set order, not paired replacements)</th>\n",
       "      <th>Replacement ID (set order)</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>101040948</td>\n",
       "      <td>101039986</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>101066452</td>\n",
       "      <td>101114249</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>101153525</td>\n",
       "      <td>101131175</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>101201413</td>\n",
       "      <td>101131435</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>101207854</td>\n",
       "      <td>101135576</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>101295861</td>\n",
       "      <td>101217199</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  Removed ID (set order, not paired replacements) Replacement ID (set order)\n",
       "0                                       101040948                  101039986\n",
       "1                                       101066452                  101114249\n",
       "2                                       101153525                  101131175\n",
       "3                                       101201413                  101131435\n",
       "4                                       101207854                  101135576\n",
       "5                                       101295861                  101217199"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Final projects</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>framework</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>HORIZON_EUROPE</th>\n",
       "      <td>108</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OTHER</th>\n",
       "      <td>42</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                Final projects\n",
       "framework                     \n",
       "HORIZON_EUROPE             108\n",
       "OTHER                       42"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "display(pd.Series(source_manifest['stratum_distribution'], name='Projects').to_frame())\n",
    "amendment = load_json('final_corpus_privacy_amendment.json')\n",
    "display(pd.DataFrame({'Removed ID (set order, not paired replacements)':amendment['removed_project_ids'], 'Replacement ID (set order)':amendment['replacement_project_ids']}))\n",
    "display(corpus.groupby('framework').size().rename('Final projects').to_frame())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-07",
   "metadata": {},
   "source": [
    "## D. SDG taxonomy\n",
    "\n",
    "The retained EU Vocabularies concept export contains 17 Goals, 169 Targets and additional Indicator/Series concepts. Production evaluated **Targets only**. Blank `narrower_concept` does not mean each narrower concept was evaluated and rejected. The exact wording and URI matter, including qualifiers."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "final-release-08",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.783492Z",
     "iopub.status.busy": "2026-09-27T10:12:05.782492Z",
     "iopub.status.idle": "2026-09-27T10:12:05.858080Z",
     "shell.execute_reply": "2026-09-27T10:12:05.855081Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>All concepts</th>\n",
       "      <td>812</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Goals</th>\n",
       "      <td>17</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Targets used in production</th>\n",
       "      <td>169</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                            Count\n",
       "All concepts                  812\n",
       "Goals                          17\n",
       "Targets used in production    169"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>code</th>\n",
       "      <th>label</th>\n",
       "      <th>concept_uri</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.1</td>\n",
       "      <td>By 2030, eradicate extreme poverty for all peo...</td>\n",
       "      <td>http://data.europa.eu/sdg/1.1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1.2</td>\n",
       "      <td>By 2030, reduce at least by half the proportio...</td>\n",
       "      <td>http://data.europa.eu/sdg/1.2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1.3</td>\n",
       "      <td>Implement nationally appropriate social protec...</td>\n",
       "      <td>http://data.europa.eu/sdg/1.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1.4</td>\n",
       "      <td>By 2030, ensure that all men and women, in par...</td>\n",
       "      <td>http://data.europa.eu/sdg/1.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>1.5</td>\n",
       "      <td>By 2030, build the resilience of the poor and ...</td>\n",
       "      <td>http://data.europa.eu/sdg/1.5</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  code                                              label  \\\n",
       "1  1.1  By 2030, eradicate extreme poverty for all peo...   \n",
       "2  1.2  By 2030, reduce at least by half the proportio...   \n",
       "3  1.3  Implement nationally appropriate social protec...   \n",
       "4  1.4  By 2030, ensure that all men and women, in par...   \n",
       "5  1.5  By 2030, build the resilience of the poor and ...   \n",
       "\n",
       "                     concept_uri  \n",
       "1  http://data.europa.eu/sdg/1.1  \n",
       "2  http://data.europa.eu/sdg/1.2  \n",
       "3  http://data.europa.eu/sdg/1.3  \n",
       "4  http://data.europa.eu/sdg/1.4  \n",
       "5  http://data.europa.eu/sdg/1.5  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "taxonomy = pd.read_csv(ROOT / 'data/taxonomy_concepts.csv', keep_default_na=False)\n",
    "targets = taxonomy[taxonomy['types'].str.split('|').apply(lambda ts: 'http://metadata.un.org/sdg/ontology#Target' in ts)]\n",
    "goals = taxonomy[taxonomy['types'].str.split('|').apply(lambda ts: 'http://metadata.un.org/sdg/ontology#Goal' in ts)]\n",
    "if len(targets) != 169 or len(goals) != 17:\n",
    "    raise ValueError('Unexpected taxonomy cardinality')\n",
    "display(pd.Series({'All concepts':len(taxonomy),'Goals':len(goals),'Targets used in production':len(targets)}).to_frame('Count'))\n",
    "display(targets[['code','label','concept_uri']].head())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-09",
   "metadata": {},
   "source": [
    "## E. Retrieval\n",
    "\n",
    "Recorded model: `sentence-transformers/all-MiniLM-L6-v2`; objective chunk width **220**, overlap **40**; score = **0.7 × max(objective chunk similarity) + 0.3 × metadata similarity**. Available title, keywords, EuroSciVoc and Horizon/topic metadata contribute. Top K=10 over 169 Targets yields 1,500 candidates. Scores are similarities, not probabilities. Targets outside the top ten cannot be recovered. The final manifest has no immutable retriever revision; final retrieval orchestration was not recovered. We inspect frozen rankings rather than rerun embeddings."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "final-release-10",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.864080Z",
     "iopub.status.busy": "2026-09-27T10:12:05.863086Z",
     "iopub.status.idle": "2026-09-27T10:12:05.912927Z",
     "shell.execute_reply": "2026-09-27T10:12:05.910907Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Recorded retrieval setting</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>candidate_pairs</th>\n",
       "      <td>1500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>candidate_pairs_sha256</th>\n",
       "      <td>6eab96127aacf69215b3acb33e205a15e3bc4883dc6ec2...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>chunk_overlap</th>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>chunk_width</th>\n",
       "      <td>220</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>evidence_sha256</th>\n",
       "      <td>cb993ee54cb71ebcabf2e28fccd8bde3b1adf126b6a1a2...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>openai_api_calls</th>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>payloads_sha256</th>\n",
       "      <td>b13b4bef875202e41cf3efbf9aee79544662156f565056...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>privacy_clean_corpus_sha256</th>\n",
       "      <td>7075a9da63228019f0968b5d7060a4c1ac266ebe421150...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>projects</th>\n",
       "      <td>150</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>reserve_semantic_access</th>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>retrieval_k</th>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>retriever</th>\n",
       "      <td>sentence-transformers/all-MiniLM-L6-v2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>scoring</th>\n",
       "      <td>0.7*objective_chunk_max + 0.3*metadata_similarity</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>status</th>\n",
       "      <td>FINAL_RETRIEVAL_FROZEN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>targets</th>\n",
       "      <td>169</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                    Recorded retrieval setting\n",
       "candidate_pairs                                                           1500\n",
       "candidate_pairs_sha256       6eab96127aacf69215b3acb33e205a15e3bc4883dc6ec2...\n",
       "chunk_overlap                                                               40\n",
       "chunk_width                                                                220\n",
       "evidence_sha256              cb993ee54cb71ebcabf2e28fccd8bde3b1adf126b6a1a2...\n",
       "openai_api_calls                                                             0\n",
       "payloads_sha256              b13b4bef875202e41cf3efbf9aee79544662156f565056...\n",
       "privacy_clean_corpus_sha256  7075a9da63228019f0968b5d7060a4c1ac266ebe421150...\n",
       "projects                                                                   150\n",
       "reserve_semantic_access                                                  False\n",
       "retrieval_k                                                                 10\n",
       "retriever                               sentence-transformers/all-MiniLM-L6-v2\n",
       "scoring                      0.7*objective_chunk_max + 0.3*metadata_similarity\n",
       "status                                                  FINAL_RETRIEVAL_FROZEN\n",
       "targets                                                                    169"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>project_id</th>\n",
       "      <th>target_code</th>\n",
       "      <th>retrieval_rank</th>\n",
       "      <th>retrieval_score</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>101067998</td>\n",
       "      <td>7.a</td>\n",
       "      <td>1</td>\n",
       "      <td>0.299728</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>101067998</td>\n",
       "      <td>7.3</td>\n",
       "      <td>2</td>\n",
       "      <td>0.275223</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>101067998</td>\n",
       "      <td>7.2</td>\n",
       "      <td>3</td>\n",
       "      <td>0.261996</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>101067998</td>\n",
       "      <td>7.1</td>\n",
       "      <td>4</td>\n",
       "      <td>0.251950</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>101067998</td>\n",
       "      <td>9.5</td>\n",
       "      <td>5</td>\n",
       "      <td>0.249269</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  project_id target_code  retrieval_rank  retrieval_score\n",
       "0  101067998         7.a               1         0.299728\n",
       "1  101067998         7.3               2         0.275223\n",
       "2  101067998         7.2               3         0.261996\n",
       "3  101067998         7.1               4         0.251950\n",
       "4  101067998         9.5               5         0.249269"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "display(pd.Series(load_json('retrieval_manifest.json')).to_frame('Recorded retrieval setting'))\n",
    "rank_counts = candidates.groupby('project_id').size()\n",
    "if len(rank_counts)!=150 or not rank_counts.eq(10).all():\n",
    "    raise ValueError('Unexpected candidate population')\n",
    "display(candidates[['project_id','target_code','retrieval_rank','retrieval_score']].head())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-11",
   "metadata": {},
   "source": [
    "## F. Semantic verification\n",
    "\n",
    "Frozen V8 Stage 1 checks exact-target scope/eligibility and qualifiers. Only valid eligible cases enter Stage 2 for contribution depth (not taxonomy descent). Deterministic composition returns STRONG/WEAK/UNSUPPORTED and DIRECT/INDIRECT. STRONG requires major/core role, governing-action alignment and performance or substantial target-specific capacity. DIRECT requires an immediate target mechanism. Invalid stages remain invalid. Final deployment model: **gpt-6-luna**; historical GPT-5.4 Mini development metrics are not final Luna accuracy."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-12",
   "metadata": {},
   "source": [
    "## G. Production API configuration\n",
    "\n",
    "The recorded interface is Responses API with structured JSON-schema output. The extracted configuration below was checked across all 1,500 frozen scope requests. The run summary records zero retries, no human labels transmitted and no reserve semantic access. All 234 retained depth provider responses also echo model gpt-6-luna, max_output_tokens=1536, service_tier=default, reasoning effort none, store=false and no tools. These are response echoes, distinct from the unpublished full outbound depth request bodies. No request is sent by this notebook."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "final-release-13",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.917923Z",
     "iopub.status.busy": "2026-09-27T10:12:05.917923Z",
     "iopub.status.idle": "2026-09-27T10:12:05.964030Z",
     "shell.execute_reply": "2026-09-27T10:12:05.963008Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Scope request setting</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>max_output_tokens</th>\n",
       "      <td>1536</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>model</th>\n",
       "      <td>gpt-6-luna</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>reasoning</th>\n",
       "      <td>{'effort': 'none'}</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>service_tier</th>\n",
       "      <td>default</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>store</th>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>tools</th>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                  Scope request setting\n",
       "max_output_tokens                  1536\n",
       "model                        gpt-6-luna\n",
       "reasoning            {'effort': 'none'}\n",
       "service_tier                    default\n",
       "store                             False\n",
       "tools                                []"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Frozen SHA-256</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>candidate_pairs_sha256</th>\n",
       "      <td>6eab96127aacf69215b3acb33e205a15e3bc4883dc6ec2...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>candidate_payloads_sha256</th>\n",
       "      <td>b13b4bef875202e41cf3efbf9aee79544662156f565056...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>composer_sha256</th>\n",
       "      <td>7ec0981ea8bddf4fb1c1feb585a8dcf763868e11de7f19...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>depth_prompt_sha256</th>\n",
       "      <td>334e6e07c7f6652d6146e8b09d164493ad4cd94f21ba1e...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>depth_schema_sha256</th>\n",
       "      <td>bbc71cfe704c06abbb93c645f25cd67ae9fdd7bcdc4a1b...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>privacy_clean_corpus_sha256</th>\n",
       "      <td>7075a9da63228019f0968b5d7060a4c1ac266ebe421150...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>scope_prompt_sha256</th>\n",
       "      <td>94179b56cdec02d4afdf5c87acf22f207881e649b4f5cf...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>scope_requests_sha256</th>\n",
       "      <td>876144b6470ad556a3749c65f9439224bc49808c219c5a...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>scope_schema_sha256</th>\n",
       "      <td>ff693135c38e894fc5b13def7545fe6b4cc09c8490fea8...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                                                Frozen SHA-256\n",
       "candidate_pairs_sha256       6eab96127aacf69215b3acb33e205a15e3bc4883dc6ec2...\n",
       "candidate_payloads_sha256    b13b4bef875202e41cf3efbf9aee79544662156f565056...\n",
       "composer_sha256              7ec0981ea8bddf4fb1c1feb585a8dcf763868e11de7f19...\n",
       "depth_prompt_sha256          334e6e07c7f6652d6146e8b09d164493ad4cd94f21ba1e...\n",
       "depth_schema_sha256          bbc71cfe704c06abbb93c645f25cd67ae9fdd7bcdc4a1b...\n",
       "privacy_clean_corpus_sha256  7075a9da63228019f0968b5d7060a4c1ac266ebe421150...\n",
       "scope_prompt_sha256          94179b56cdec02d4afdf5c87acf22f207881e649b4f5cf...\n",
       "scope_requests_sha256        876144b6470ad556a3749c65f9439224bc49808c219c5a...\n",
       "scope_schema_sha256          ff693135c38e894fc5b13def7545fe6b4cc09c8490fea8..."
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Run record</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>scope_calls</th>\n",
       "      <td>1500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>depth_calls</th>\n",
       "      <td>234</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>retries</th>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>human_labels_transmitted</th>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>reserve_semantic_access</th>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>estimated_cost_usd</th>\n",
       "      <td>0.63096</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                         Run record\n",
       "scope_calls                    1500\n",
       "depth_calls                     234\n",
       "retries                           0\n",
       "human_labels_transmitted      False\n",
       "reserve_semantic_access       False\n",
       "estimated_cost_usd          0.63096"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "display(pd.Series(load_json('production_configuration.json')['scope_request_configuration']).to_frame('Scope request setting'))\n",
    "freeze = load_json('freeze_manifest.json')\n",
    "display(pd.Series({k:v for k,v in freeze.items() if k.endswith('_sha256')}).to_frame('Frozen SHA-256'))\n",
    "display(pd.Series({k:load_json('run_summary.json')[k] for k in ['scope_calls','depth_calls','retries','human_labels_transmitted','reserve_semantic_access','estimated_cost_usd']}).to_frame('Run record'))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-14",
   "metadata": {},
   "source": [
    "The recorded $0.63096 is a usage-based estimate, not a verified bill. Provider output is not guaranteed reproducible indefinitely; a model ID is not an immutable backend snapshot. Local deterministic composition can be reproduced from retained parsed inputs without an API."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-15",
   "metadata": {},
   "source": [
    "## H. Frozen-prompt framework caveat\n",
    "\n",
    "The unchanged Stage-1 prompt says **ONE Horizon Europe project**, but the final corpus contains **108 HORIZON_EUROPE and 42 OTHER** projects. Thus 420 scope evaluations used inaccurate framework wording. Verification is target/evidence based, but this does not prove the model ignored that wording. No prompt was changed and no affected mapping was rerun."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "final-release-16",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:05.970027Z",
     "iopub.status.busy": "2026-09-27T10:12:05.969024Z",
     "iopub.status.idle": "2026-09-27T10:12:06.012115Z",
     "shell.execute_reply": "2026-09-27T10:12:06.010102Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>OTHER projects</th>\n",
       "      <td>42</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OTHER scope evaluations</th>\n",
       "      <td>420</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OTHER supported mappings</th>\n",
       "      <td>28</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                          Count\n",
       "OTHER projects               42\n",
       "OTHER scope evaluations     420\n",
       "OTHER supported mappings     28"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "other_ids = set(corpus.loc[corpus['framework'].eq('OTHER'),'project_id'])\n",
    "other_mappings = mapping[mapping['project_id'].isin(other_ids)]\n",
    "display(pd.Series({'OTHER projects':len(other_ids), 'OTHER scope evaluations':int(candidates['project_id'].isin(other_ids).sum()), 'OTHER supported mappings':len(other_mappings)}).to_frame('Count'))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-17",
   "metadata": {},
   "source": [
    "The optional diagnostic CSV checks only literal framework phrases in explanations. It marks semantic dependence UNDETERMINED; absence of a phrase is not proof of absence of an effect."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-18",
   "metadata": {},
   "source": [
    "## I. Human-reviewed development benchmark\n",
    "\n",
    "24 projects, 240 pairs; two reviewers with 40 shared decisions. Reference labels: STRONG 30, WEAK 18, UNSUPPORTED 192. Pre-adjudication exact agreement 35/40=87.5%, binary agreement 37/40=92.5%; kappa approximately 0.653 and 0.778 on the common project-target units. The aggregate agreement artifact preserves these counts. **V8 FAILED the complete internal development gate.** Repeated development-set reuse means these are development metrics, not an untouched confirmatory estimate or final Luna accuracy."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "final-release-19",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:06.017113Z",
     "iopub.status.busy": "2026-09-27T10:12:06.016116Z",
     "iopub.status.idle": "2026-09-27T10:12:06.067765Z",
     "shell.execute_reply": "2026-09-27T10:12:06.065240Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Development percent</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>exact_pct</th>\n",
       "      <td>86.67</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>binary_accuracy_pct</th>\n",
       "      <td>93.33</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>supported_precision_pct</th>\n",
       "      <td>90.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>supported_recall_pct</th>\n",
       "      <td>75.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>strong_precision_pct</th>\n",
       "      <td>85.71</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>strong_recall_pct</th>\n",
       "      <td>40.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>weak_precision_pct</th>\n",
       "      <td>30.77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>weak_recall_pct</th>\n",
       "      <td>44.44</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>contribution_accuracy_pct</th>\n",
       "      <td>77.78</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                           Development percent\n",
       "exact_pct                                86.67\n",
       "binary_accuracy_pct                      93.33\n",
       "supported_precision_pct                  90.00\n",
       "supported_recall_pct                     75.00\n",
       "strong_precision_pct                     85.71\n",
       "strong_recall_pct                        40.00\n",
       "weak_precision_pct                       30.77\n",
       "weak_recall_pct                          44.44\n",
       "contribution_accuracy_pct                77.78"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Contribution matches</th>\n",
       "      <td>28</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Contribution evaluable rows (joint support)</th>\n",
       "      <td>36</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                                             Count\n",
       "Contribution matches                            28\n",
       "Contribution evaluable rows (joint support)     36"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'checks': {'binary_matches': True,\n",
       "  'contract_valid': True,\n",
       "  'contribution_accuracy': True,\n",
       "  'contribution_evaluable_rows': True,\n",
       "  'direct_predictions': True,\n",
       "  'exact_matches': False,\n",
       "  'indirect_predictions': True,\n",
       "  'max_invalid': True,\n",
       "  'strong_precision': True,\n",
       "  'strong_recall': False,\n",
       "  'supported_precision': True,\n",
       "  'supported_recall': False,\n",
       "  'weak_precision': False,\n",
       "  'weak_predictions': True,\n",
       "  'weak_recall': True},\n",
       " 'result': 'FAIL',\n",
       " 'thresholds': {'max_invalid': 2,\n",
       "  'min_binary_matches': 221,\n",
       "  'min_contract_valid': 238,\n",
       "  'min_contribution_accuracy': 0.65,\n",
       "  'min_contribution_evaluable_rows': 35,\n",
       "  'min_direct_predictions': 10,\n",
       "  'min_exact_matches': 216,\n",
       "  'min_indirect_predictions': 5,\n",
       "  'min_strong_precision': 0.7,\n",
       "  'min_strong_recall': 0.75,\n",
       "  'min_supported_precision': 0.8,\n",
       "  'min_supported_recall': 0.8,\n",
       "  'min_weak_precision': 0.5,\n",
       "  'min_weak_predictions': 5,\n",
       "  'min_weak_recall': 0.4}}"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "dev = load_json('development_metrics.json')\n",
    "metric_keys = ['exact_pct','binary_accuracy_pct','supported_precision_pct','supported_recall_pct','strong_precision_pct','strong_recall_pct','weak_precision_pct','weak_recall_pct','contribution_accuracy_pct']\n",
    "display(pd.Series({k:round(dev[k],2) for k in metric_keys}).to_frame('Development percent'))\n",
    "display(pd.Series({'Contribution matches':dev['contribution_matches'],'Contribution evaluable rows (joint support)':dev['contribution_evaluable_rows']}).to_frame('Count'))\n",
    "display(load_json('development_gate_result.json'))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-20",
   "metadata": {},
   "source": [
    "Contribution accuracy is 28/36 jointly supported pairs, not 28/240 or a final-production measure. Failed gate checks: exact matches (208<216), STRONG recall (40%<75%), supported recall (75%<80%) and WEAK precision (30.77%<50%)."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-21",
   "metadata": {},
   "source": [
    "## J. Final production results\n",
    "\n",
    "The following table is recomputed from the frozen mapping, candidate, summary and response files. The 50 unmapped projects were not forced into a class; it means no supported target within their retrieved candidates, not absence of all possible SDG contribution."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "final-release-22",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:06.072765Z",
     "iopub.status.busy": "2026-09-27T10:12:06.072765Z",
     "iopub.status.idle": "2026-09-27T10:12:06.128977Z",
     "shell.execute_reply": "2026-09-27T10:12:06.123961Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Recomputed value</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Projects</th>\n",
       "      <td>150.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Candidate pairs</th>\n",
       "      <td>1500.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Contract-valid</th>\n",
       "      <td>1496.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Contract-invalid</th>\n",
       "      <td>4.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Supported mappings</th>\n",
       "      <td>231.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mapped projects</th>\n",
       "      <td>100.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Unmapped projects</th>\n",
       "      <td>50.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>HIGH / STRONG</th>\n",
       "      <td>88.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>MEDIUM / WEAK</th>\n",
       "      <td>143.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>UNSUPPORTED</th>\n",
       "      <td>1265.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>DIRECT</th>\n",
       "      <td>188.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>INDIRECT</th>\n",
       "      <td>43.00</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mean mappings/project</th>\n",
       "      <td>1.54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mean mappings/mapped project</th>\n",
       "      <td>2.31</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Maximum mappings/project</th>\n",
       "      <td>6.00</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                              Recomputed value\n",
       "Projects                                150.00\n",
       "Candidate pairs                        1500.00\n",
       "Contract-valid                         1496.00\n",
       "Contract-invalid                          4.00\n",
       "Supported mappings                      231.00\n",
       "Mapped projects                         100.00\n",
       "Unmapped projects                        50.00\n",
       "HIGH / STRONG                            88.00\n",
       "MEDIUM / WEAK                           143.00\n",
       "UNSUPPORTED                            1265.00\n",
       "DIRECT                                  188.00\n",
       "INDIRECT                                 43.00\n",
       "Mean mappings/project                     1.54\n",
       "Mean mappings/mapped project              2.31\n",
       "Maximum mappings/project                  6.00"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "valid = [r for r in responses if r['final_contract_valid']]\n",
    "n = projects['n_supported_mappings']\n",
    "results = {'Projects':len(projects),'Candidate pairs':len(candidates),'Contract-valid':len(valid),'Contract-invalid':len(responses)-len(valid),'Supported mappings':len(mapping),'Mapped projects':mapping['project_id'].nunique(),'Unmapped projects':int(n.eq(0).sum()),'HIGH / STRONG':int(mapping['confidence_level'].eq('HIGH').sum()),'MEDIUM / WEAK':int(mapping['confidence_level'].eq('MEDIUM').sum()),'UNSUPPORTED':sum(r['final_result']['judgment']=='UNSUPPORTED' for r in valid),'DIRECT':int(mapping['contribution_type'].eq('DIRECT').sum()),'INDIRECT':int(mapping['contribution_type'].eq('INDIRECT').sum()),'Mean mappings/project':n.mean(),'Mean mappings/mapped project':n[n.gt(0)].mean(),'Maximum mappings/project':int(n.max())}\n",
    "expected = [150,1500,1496,4,231,100,50,88,143,1265,188,43,1.54,2.31,6]\n",
    "if any(abs(float(v)-e)>1e-10 for v,e in zip(results.values(),expected)):\n",
    "    raise ValueError('Result count differs from frozen expectations')\n",
    "display(pd.Series(results).to_frame('Recomputed value'))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-23",
   "metadata": {},
   "source": [
    "## K. Recreate five figures\n",
    "\n",
    "Counts describe this demonstration only. Charts use zero baselines and integer counts. Goal counts are relationship counts, so a project can appear under several Goals. The project distribution includes all 50 zero-mapping projects. Top-15 ties use the retained QC display order, with counts checked against the CSV."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "final-release-24",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:06.133994Z",
     "iopub.status.busy": "2026-09-27T10:12:06.133994Z",
     "iopub.status.idle": "2026-09-27T10:12:06.157445Z",
     "shell.execute_reply": "2026-09-27T10:12:06.154430Z"
    }
   },
   "outputs": [],
   "source": [
    "FIGURES = ROOT / 'figures'\n",
    "FIGURES.mkdir(exist_ok=True)\n",
    "chart_values = {}\n",
    "def chart(series, title, xlabel, ylabel, filename, horizontal=False):\n",
    "    fig, ax = plt.subplots(figsize=(9,5.4 if not horizontal else 6.6))\n",
    "    if horizontal:\n",
    "        bars = ax.barh([str(x) for x in series.index],series.values,color='#286b88')\n",
    "        ax.invert_yaxis(); ax.set_xlim(0,float(series.max())*1.16)\n",
    "        ax.xaxis.set_major_locator(MaxNLocator(integer=True))\n",
    "    else:\n",
    "        bars = ax.bar([str(x) for x in series.index],series.values,color='#286b88')\n",
    "        ax.set_ylim(0,float(series.max())*1.16)\n",
    "        ax.yaxis.set_major_locator(MaxNLocator(integer=True))\n",
    "    ax.bar_label(bars,padding=3)\n",
    "    ax.set(title=title,xlabel=xlabel,ylabel=ylabel)\n",
    "    ax.grid(axis='x' if horizontal else 'y',alpha=.16)\n",
    "    ax.set_axisbelow(True)\n",
    "    fig.tight_layout()\n",
    "    fig.savefig(FIGURES/filename,dpi=160,metadata={'Software':'CORDIS frozen-output notebook'})\n",
    "    chart_values[filename] = {str(k):int(v) for k,v in series.items()}\n",
    "    plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "final-release-25",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:06.162463Z",
     "iopub.status.busy": "2026-09-27T10:12:06.161456Z",
     "iopub.status.idle": "2026-09-27T10:12:07.888477Z",
     "shell.execute_reply": "2026-09-27T10:12:07.886465Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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3Dlz5kwrWbKkK94JAAAAAABiNEARv3bD3Llz3SOUtAQolFrpNeuIb8OGDVatWjW79tpr7d133w0Ob9OmjRUvXtzGjx/vmoXccMMNFhcXZw8//LDrplTdj3I3BAAAAACAGA5QrF+/3vymTIqRI0fazTff7Jp96OGpVauW9e/f39f5AwAAAAAAmRygqFq1qp0qyoIoU6aMFS1aNMm4G2+80Y1THYzffvvNZWGowKaCE8WKFTtl8wgAAAAAAHwIUJxKlSpVCtn0w9OsWTP3AAAAAAAA0SW73zMAAAAAAABAgAIAAAAAAPiOAAUAAAAAAPBdVNWgALK648eP26FDh6xgwYIhxx89etR1sRtK7ty5XXe8AAAAABCJyKAAItyePXvsf//7nzVo0MDy5cvnutVVoOH222+3devWJZh28eLFVq5cuZCPa665xrdlAAAAAIAMz6A4fPiwpUfevHnT9Togq/voo4/swQcfDGZBKECxe/due+utt2z69On266+/Wvny5RO8pnDhwi6YER/ZEwAAAABiKoNCFz3peQBInxIlStiTTz5pK1eutIMHD9revXtt48aN1rZtW9ecY+LEiUleM2zYMNclb/zH1KlT2QQAAAAAYieDokePHkmG/fXXX/bFF1+4NPILL7zQsmXLZvPnz7ctW7ZYq1atrEqVKhk1v0CWc/XVV7tHfJUqVbKePXvaZ5995upOhKJghmpWKOMCAAAAAGIuQDFmzJgE/y9cuNCaNWtmV111lX344YeWP3/+4MVRx44dbd68eTZo0KCMm2Mgi9q/f797qJnV77//bv3797c8efLYtddem2TaAQMGWK9evSwQCFiFChXszjvvtH79+rnpAQAAACAmi2Tef//97qJp+PDhweCE6O/nn3/e9u3b56YBEJ6hQ4e6LKVq1apZ69atrUCBAi4AWLt27STTqkmHxmfPnt02bdpkzzzzjLVp08ZOnDjBZgAAAAAQmwEK9RoglStXTjJOaeiyaNGicD8GyPLUVKNMmTIu8CALFiywd955J0ETD9V7GThwoKtRoeCgsi0++eQTF9j4+uuvXZYTAAAAAMRkgKJIkSLBi6XEvGHeNADSr2/fvi4zQhlL69evd3UpXnnlFRsxYkRwmvr167umH15wMFeuXNa+fXt744033P+qFQMAAAAAMRmguPnmm91z9+7d7YcffnBt3vXQ3xomN910U/hzCiCoatWqrptR1ZRQhsTJKHAhu3btYi0CAAAAiI0imYmpbfuqVats5syZdtFFFyUokilqK69pAKSP6kaolkRiu3fvtv/++889Tjbtl19+6Z5VMBMAAAAAYjJAoYDEjBkzbPr06fbpp5/a2rVrXTej1atXt3bt2rnCfADST000GjZsaJdddpnLnFDw75dffrHBgwe7bKWmTZsGp1WzjzPPPNOaN2/uplUQQ99NFdiUa665hk0BAAAAICJlC+gKB0msXLnS6tWrZytWrLC6deuyhuAbZSapyVQo2ke/++47K168uPv/0ksvtblz54actnfv3jZy5MhMnVcASE6du4dFzcpZNbKv37MAAECWFHYGhUc9CSxdutT++ecfl3J+ww03ZNRbA1na559/bm+++aZrRrVmzRo3rEaNGi47SXVe8ubNG5x22rRpNn78eDetsply5szpghh33HGHtW3b1selAAAAAIBTkEGhrgv79OljW7ZsCQ7T2zZp0sR1Mfrjjz/a2WefbdGEDAoAADIOGRQAACDTe/FQt4XKljh27Ji99tprCcZ169bNjhw5YqNHjw73YwAAAAAAQAwLO0ChHjqULaHghAIS8V1wwQXuedasWeF+DAAAAAAAiGFhByhUd0LUa0BilStXds+bN28O92MAAAAAAEAMCztAoS5F5cSJE0nG7d271z0XLFgw3I8BAAAAAAAxLOwAxVlnneWeFyxYkGScimPKueeeG+7HAAAAAACAGBZ2gOKee+5xz/fff7+tXr06OPzvv/+2fv36JZgGAAAAAAAglJwWpptuusmWLVtmzz33nJ1++unB4VWrVnXNPvr3729t27YN92MAAAAAAEAMCztAIcOGDbNrr73WJk6caKtWrXK9epx22mnWuXNna9y4cUZ8BAAAAAAAiGEZEqCQ8847zz0AnFydu4dFxWpaNbKv37MAAAAAIIsIuwZFzZo13SO94wEAAAAAAMLOoFi7dm1Y4wEAAAAAAMLOoEjJzp073XPBggVZ0wAAAAAAIGMzKB599NGTDjt+/Lj98MMP7u9GjRql52MAAAAAAEAWkTO9vXakZlj27Nnt/PPPt1deeSV9cwcAAAAAALKEdAUotmzZEvy7XLlySYZ5wYkiRYpYnjx5wp1HAAAAAAAQ49IVoChbtmzw7xYtWtiJEycSDAMAAAAAADilvXjMnz/fDh065IIUypoAAAAAAABIq7AjCg0aNHDP69evD/etAAAAAABAFhV2gGLw4MGWO3due+aZZ1wWBQAAAAAAwClv4vHtt99a69at7a233rIlS5bYZZddZsWLF08y3dNPPx3uRwEAAAAAgBgVdoBiwIABwb+XL1/uHqEQoAAAAAAAAJkWoKD2BAAAAAAA8D1AUbVqVTsV/v33XytSpMhJpzt+/LjrVaRgwYKnZL4AAAAAAED4MrRf0C1bttgPP/zgHlu3bg3rvY4dO2bvvfeeNW/e3AUbihYtagUKFLDLL7/c5s2bl+RzhwwZYvXr17d8+fJZoUKFrGTJkta1a1fbuHFjmEsFAAAAAACiIkCxaNEia9y4sZUvX94uuugi9yhXrpxdcMEFblx6rFmzxm6++WabPXu2y4hQgELPX331lTVt2tRmzZoVnPbVV1+1xx9/3H799VfXk4gCGnFxcfbGG2/Yueeea//8809GLCYAAAAAAIjUAIWCApdeeqktWLDAzj77bOvbt6976O+ffvrJjUuucGZK1HVpt27dbP78+XbgwAHbvXu37dmzx/r16+eacSgo4VFg5LHHHnPzoiDGvn373Gc2aNDAduzYYWPGjAl3MQEAAAAAQCTXoHjyySft4MGDduutt9qECRMse/b/i3kMHjzY7rjjDnv77bfdNB9//HGa3rd69er22muvJRhWuHBhe+SRR+zZZ5+1o0ePBof36tUryevr1atnI0eOtCZNmpBBAQAAAABArAco5s6d656feuqpYHBC9LeGKUDhTZMe//33n+3atcvVpPj777/txRdfdMNvuummk75WmRaiTAoAAAAgNeePalI8ZcoU+/333905qG6cde7c2Vq1ahWykPsrr7xiX3/9tcv4rVixojtPVVNlAMApDlCo+YWUKlUqyTgVqow/TXqoBkXr1q2D/9eoUcPef/9969SpU4qv04+JMjfUy4iaiqRk+/btrilI4hoY3o+UF+gAshr2fQBZEce+rO22226ziRMnJhimZssq3n7DDTfYu+++Gxy+bds215zZO28UNTmeMWOGfffddzZ69OhTOu8AEGly5MhxagMU1apVs9WrV7uDcJs2bRKM0zBR1Dm98uTJY2XKlLEjR464GhRr1661N9980xXKLF26dLLBCUW5ly1bZnPmzHG9f6Rk1KhRNmDAgJDjDh8+7JqwAFkR+z6ArIhjX9amemYtWrSw9u3bW61atSxXrlzuhtnw4cPdTbLrrrvO9SonTzzxhAtOnH/++fbAAw9YhQoV3P/qXe711193N9n0XgCQVRUqVOjUBigUZVYPGj179nQHYnULKkpz0zBRsCC9FIjwuixVgEIpdMqMuPPOO2369OlJple2RseOHV3vIQpOpKZ5h2pY6DXx6celQ4cOljdvXsufP3+65x+IZuz7ALIijn1Zm5on6/wvPmVJqIC7mi/rxpzOEUXnmuri/ssvv3S9yIl6ttPj9NNPd+/Vrl07X5YDAKJR2AGKhx56yAUDpk6daldeeWUwhcNLj7z22mvt4YcfDn9OzVxXo/3793c/Al988YXLqlCGRfw0O82DAhrK3qhTp06q3leZGMllY2h50pqWAsQK9n0AWRHHvqwtuczb2rVru+cqVaoE9xFlW2j6IkWKJJhWmRTZsmVzvdGxPwHAKQxQKO1NRYTU1u6TTz6xdevWuQOymn5cffXVCepHpMWJEycSFN2MP3znzp1JakMomq3PCgQCriinalUAAAAA4dL5pbqtr1y5sju/jd9r3DfffGMDBw50Xd7rvHj//v12//33u9eoxpmye0/W3BgAkEEBCo8yF/TIKGrGoeKV11xzjathoaCH6k+oiYeCEeedd14wBVOFi1T/QtkU06ZNcz8CXrMQ0fBixYpl2LwBAAAg67j33nttwYIFLhgRvwlQ3759XTMPNf0YNmyYy8jdsmWLO/c8++yzbenSpbZv3z4CFABwqgMUS5YsccEBZVCIggoqLnTOOeek6/2OHj3qalrokZiCDfGrIo8bN87i4uLc340aNUoyvepiqCYGAAAAkFoqvN69e3f78MMPXe2zCy64IMH4li1bumbOjz76qOuSdMOGDe4c+J133rEePXq4acieAIBTGKBQMwsVw1SQIDGlu3Xt2tWlxKW1/d2gQYNccOODDz5wB3ylx6lf6csuu8zuueceK1u2bHBatftTTx/JKV68eBqXCgAAAFmZmmqoiPqPP/5oX331VZLghEc35PRQcw7VpND56q5du2zVqlVWsmTJNFewB4CsLOwAhQIJCk4oQPDSSy+5SLLa3CljQelwGqcDtVLf0kJt+Dp16uQeJzNixAj3AAAAAMKlpsJXXXWVbdy40XUxmpqM4FKlSgX/fvXVV91NPK93OwBA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OriuR2fNmmXHjx/3dR4R27R/fffddy5bR39Xr17dmjVrZrly5fJ71pAF/P7777Z48WLbuXOnC8RedNFFBGSBKECAAgCAGFSgQAGbM2eOffzxx/btt9/agQMHrEmTJnbbbbdZ1apVLVu2bFaiRAm/ZxMx6ueff7ZbbrnF1UKJT5k848ePt+bNm/s2b4htOtbdcccd9tFHH1kgEAgOz507tz3wwAM2ZMgQX+cPQMoIUAAAEKNy5Mhh1113nXt4FixYYJs2bbI6depY/vz5fZ0/xKYTJ05Yx44dbePGjW4/a9q0qQuIff/9964GyvXXX29///03+x8yxaBBg2zy5MmuKVvbtm2tVKlSrnnbzJkzbejQoXbuuefatddey9oHIhQBCgAAYtDRo0ddkUydnHsOHTpkffr0cX/feOONPs4dYpkCE3o0atTIfvjhB9drjOhu9hVXXGFfffWVrVq1yho2bOj3rCIGqVmbaN+rW7ducPibb77pMisUKCNAAUQuAhQAAMRomnPNmjXt9ttvt7POOssVxFRqvdplV6lSJRioADJa2bJlLV++fJYnTx6XxeNRFkXevHndsEqVKrHikSmqVatm8+fPd/tgfF7GmMYDiFwEKAAAiEFqb60T9JdffjnB8Fq1atn06dOtUKFCvs0bYpuCECNGjLC7777bFSZUYUyviYfqoSgFv3Tp0n7PJmKUigLPnj3b7XtqalSyZElbv369ffjhh655R5cuXfyeRQApIEABAEAM0t1Ctbt+++23bcmSJS5gceGFF7p6FLqzDWSmu+66yzXpuP/+++3HH390w5Q5MXjwYNfDDJBZFIT94osvXDOOV155JThcgbL333/fFRAGELkIUAAAEKN0Iq4LReBUu++++1z2zumnn26XXnqpZc+e3aXdP/74466Z0VtvvcVGiQD33HOPq1eTnKuvvtrVDYkmyp5o3769y9q56aabEhTJPP/8813vRmrmBiAyEaAAAABAhvnpp59ccKJDhw42depUd6HoufPOO23ChAnuwjHaLnxj0euvv25HjhxJdnyLFi0s2nTv3t1y5cplv/zyi+vWNn7gQt3bPvHEE/bOO+/4Oo8AkkeAAgAAABlm4cKF7vmaa65JEJwQNTFSgOLnn38mQBEBRo4caceOHUsyXN1xqtBuu3btLJrs3r3bZUtcfvnlCYITXhOPYsWKuX0PQOQiQAEAAIAM47XxVx2Azp07Jxg3Y8YM90yR1sjQtWvXJMM2bNhgvXv3ds10VLsmmni9xCxdutS2b9+eoBirMnsUwKhevbqv8wggZQQoAAAAkGFatWrlLhTfe+89W7NmTYJePObNm2c5c+a0Nm3asMYj1NixY+3EiRMhgxeRTj0XqemQAmFnnnmmy9hRkEL74UcffRSsqwEgchGgAAAAQIYpX768TZw40RVoVTp9/JR6XUDqArhmzZqs8QikgplqgtO4cWM744wzLBq99tpr1qlTJ1eUddSoUQnGXX/99fbwww/7Nm8ATo4ABQAAADKU6k+oDoCaeaxbt84OHjxo1apVsyuvvNL1qoDINGXKFNu2bZs9++yzFq0qVKjgsnXmzp1rK1assK1bt1rx4sVdbzJnn32237MH4CQIUCBL+e2339xdHXVxVrRoUZcG2LFjxyRFvACcnCq/T5o0yb799lvbt2+fS6ft1q2bOzkEgIIFC7oUe0SPMWPGuO2mDIRod8kll7gHgOhCgAJZxrBhw6xfv352/Pjx4LDx48e7dopvvvmmr/MGRBvdEW3durX98ccfwWHqTlDfMwUCdacUABA9Vq1aZd9995116dLFBSkAwA8xGaDYs2ePa+OYJ08ev2cFEUJ3eR999FHLnj273XHHHa6AVyAQsE8//dRVdAaQeocPH3Zp2gpO1K5d21V7r1Kliq1evdpeeeUV1zUdwlPn7mFRswpXjezr9ywAyKDsCYnG4pgAYkfMBCj+/vtve+qpp1yFXqUaK2Vfd/D69OnjTp51YYqsSRkTCk6IiiX16NEjOE4pjLt27fJx7oDo8/rrr7tghJp0/PDDDwnutN1zzz2u+jsAIHocOnTI3n77batbt64rkAkAfomJAMX+/futSZMmtnHjRheYKFGihCvGpBTke++91/755x+XdoysSf1ea9+oV69eguCER4WTAKTehx9+6J6HDBmSJA1YXQsCAKLL+++/7zKQn3zySb9nBUAWFxNpBV999ZW7AFXE96+//rKdO3e6FOOPP/7YcufObePGjfN7FuGjpUuXuuf27dvb2rVrXdBKf+tOr+7+Akj7d0qBiObNm7vu3FQE78Ybb7SRI0fSvAMAotDo0aPdOXPnzp39nhUAWVxMZFB4PTAoXb9SpUrBYR06dHD9bKu7JGRdcXFx7lk1J84991x3h8CjC6pBgwa54pkATu6///5zQYizzjrLunfvbu+8806CO3CqQaEia2XLlmV1AkCU9MikwpilS5e2kiVL+j07ALK4mAhQtGjRwgUmXnjhBatcubLVr1/fnUB/8MEHrpr8Qw895Pcswkc5c/7fbv7iiy+67qZuuukmy58/v/3444/uYqp///7Wrl07154eQMpy5MjhntesWWObN2+2Z5991s444wwXCFaNl19//dUefvjhBIELAEDkUlH5UE1gAcAPMRGgUBtoperrpPjaa68NDi9WrJi7KFUqf0q2b99uO3bsSDBMJ99egcX43VIi+nh3A3QR9dlnnwUzbpRho3GPPfaYff755248EmLfRyiq26LisupWVAFiT8eOHa1GjRru+8S+E1osrheWCeD7hNgQi8fzWHQ8yraTd3MrSwUoRPUmZsyYEQxMqEimuo+cMGGCXXHFFXb66acn+1rd9RswYECy3enpvRC9TjvtNPesCydVqY6vevXqwWYgbOekWCcIRQVn586da1WrVk2wj+TKlcvKlSvnuh9l3wktFtcLyxR7zntslEWDn4f0slgTi9+ntGDf81dW3/+ixcEo206FChXKegGKmTNnusKHLVu2dAUx1cxD9QZ0F0/p/G3btrWVK1e64j+h9OrVy935S5xBoTvsKgSn5gCIXurhpWLFijZr1izXs4surrzeX7wCqmrewXZOinWCUK655hoXoFBwd/jw4cHI+LRp01z3o3Xq1GHfyULfKZYJ7Ht8n7KaWDzuxfJyxZr8Mb6dYiJAMXnyZPes5hwKTojS+Nu0aWNdu3Z1tSmWLVtmjRo1Cvl6FQXSIxSdeKc1LQWRRdtP3SGqMvU555xjDRo0cF/sFStWuIKZKqR6/fXXs52TWXdAYmqrrAKzL7/8sjv+KktJTeVWrVrlxj/66KPsOykcj2INywT2Pb5PWU0sHvdiebliTY4Y304xEaDQnXBRk47kenDwpkHWdMstt9jevXtdvYklS5YEh1922WX25ptvukwZAKmj74u6d1bQ7/vvv7ctW7YEa1OoaKa+bwAAAECWDFCcf/757i7ebbfdZoMHD7azzz7bBSSmTJniKsmrOrHumiNrU1OeO++802XTqO2WalJ4GTcA0kb1J+bNm+eaTW3YsMEKFy7suh5NrikdAAAAkCUCFN27d3fFMFVnolOnTknGDxw40BXOBHTnVwEtABlDhWa9YrMAAACAZfUAhSqDLl682EaPHu0KZupunmpQ1K1b17p162atWrXyexYBAAAAAECsByhEzTj69OnjHgAAAEAsq3P3MIsGq0b29XsWAESR7H7PAAAAAAAAAAEKAAAAAADgOwIUAAAAAADAdwQoAESkAwcO2LFjx/yeDQAAAACnCAEKABFj2bJl1rNnT6tQoYIVLFjQdQtbq1Yt+9///mdHjx71e/YAAAAAZKKY6cUDQPTr3bu3zZ8/3/1duHBhO3z4sK1Zs8YefPBBW7hwoU2aNMnvWQQAAACQSQhQIKJFSxdaQjda4TvvvPPsrrvuspYtW1rp0qUtEAjYnDlzrFOnTvbBBx/YSy+95IYj9r9TfJ8AAACyHgIUACKGmnLEly1bNmvWrJk1bdrUJk+eTE0KAAAAIIYRoAAQcXbs2GHHjx+33bt32zfffGPTp0+3yy67zMqXL+/3rAEAAADIJAQoAEScs88+2zZt2uT+zpUrl6tNMXDgQL9nCwAAAEAmohcPABFHdSb0yJkzp+u948MPP7S5c+f6PVsAAAAAMhEBCgARZ8mSJbZt2zY7cuSIff3115YjRw677rrrbMOGDX7PGgAAAIBMQoACQMTKnj27NW/e3DXvUJejX3zxhd+zBAAAACCTEKAAEBFOnDiR7DhlU8h///13CucIAAAAwKlEkUwAEeGPP/6w2267zXr16mX16tWzUqVK2fbt223GjBk2ePBg1+WoevIAAAAAEJsIUACICKoz8fPPP7tHKP369bOzzjrrlM8XAAAAgFODAAWAiFCrVi1btmyZvf7667Zw4ULbvHmzFS5c2HU5escdd1izZs38nkUAAAAAmYgABYCIoQyJV155xe/ZAABfqN7O999/77pXvuaaayx37txsCQAxb8WKFbZy5UorVqyYXX755X7PDnxGgAIAAMBH48aNszfffNN+/PHHYMHgHTt2WMmSJdkuAGLSwYMHbcCAAfbxxx/bn3/+6YY1bNiQAAUIUAAAAPjpxRdfdHcPy5Qp4woCb926lQ0CIKbt2rXLnnvuOfd33bp1bfXq1X7PEiIE3YwCAAD4qFu3bjZv3jxXe+eiiy5iWwCIeQUKFLChQ4e6XtzUxCNPnjx+zxIiBE08AAAAfHTfffex/gFkKao30bdvX79nAxGIDAoAAAAAAOA7AhQAAAAAAMB3NPFASKoi/t1339ny5cstX7581rRpU6tZsyZrC0gntS2fNWuW7dmzx2rVqmUtW7akC0EAAAAgHgIUSCIuLs7atGljP/30U3BY9uzZrV+/fjZw4EDWGJBGr732mt1777125MiR4LDatWvb559/bjVq1GB9AgAAAAQoEMrtt9/ughOVK1e2du3auTu+H330kT3zzDOuG6BOnTqx4pBEnbuHRcVaWTXy1BZk+vHHH61nz57u76uvvtp9r7755htXsfqaa66xpUuXugAgAAAAkNWRQYEEdNE0ffp015xj8eLFVrhwYTe8a9eurpnH4MGDCVAAaTBs2DALBAIui0JdCcqxY8fsiiuusNmzZ7ssirZt27JOAQAAkOURoEACX3zxhXt+4IEHgsEJufTSS+2yyy6zOXPmuLb05cuXZ80Bqajl8tVXX1nFihWtS5cuweE5c+Z0TaYUoJg5cyYBCiCLW7Jkif3xxx/u73/++cc9f/zxx1aoUCGXYXX99df7PIcAkPF0k2bfvn3Bmze7d++2999/3/1foUIFu/jii1ntWRABCiSwatUq93zBBRckWTMXXnihC1BoGgIUwMn99ddfdvDgQWvdunWSZhz6jmXLli34nQOQdY0fP95effXVBMO6d+/unnPkyEGAAkBMuu+++2zt2rXB/9etW2c33nij+/uqq64iQJFFEaBAAopcSpkyZZKsmdKlSyeYBkD6v0/qHadgwYJ8nwBYw4YNk20+qQAFAMQiFeXfunVryHHnnHPOKZ8fRAYCFAhJd3aTG6b29ADC+z55w/k+AbjjjjvcAwCykhdffNHvWUAEonQ8EihSpIh73r59e5I1s2PHDvdctGhR1hoQ5vdJXY6q3SXfJwAAAOD/EKBAAqeffrp7/vnnn5OsmQULFrjn2rVrs9aAVKhatarlzZvXFi5cmGScvmPKnuD7BAAAAPwfAhRIoGXLlsGUq0OHDgWH6wLr66+/dhdTlStXZq0BqaC24+qed8OGDTZp0qTgcAUm1P2oXH755axLAAAAgBoUCFWQRt2Jfvvtt65o17XXXmt79uyxt956y3WZ+NBDD7HSgDRQl73qSvS2225zXY5WqVLFvvzyS/vxxx+tVq1a1r59e9YnAAAAQIACobz77rvuru5vv/1mgwYNCg7v1auXde3alZUGpEGLFi1s6NCh9vjjj9uECROCw9W/95QpUyxXrlysTwAAAIAABULRhdPSpUvts88+sxUrVrjuEJs3b+4yKgCkXd++fa1Dhw42Y8YMl5HkZU4UKlSI1QkAAAD8f3QzipBy587tmnfoASB8qt9CQUwAAAAgeRTJBAAAAAAAvovJDIq4uDjLnz+/a5oAAACQGerc/X+98USDVSP7+j0LAGIExz5kppjKoBgxYoSVK1fOSpYsaQUKFLBLLrnEli1b5vdsAQAAAACArBKgeOaZZ1wXmFu3brVixYq5Ggrz5s2zpk2b2rp16/yePQAAAAAAEOsBim3bttmzzz7rmnV8+eWXtmvXLtu9e7f17NnTPT/55JN+zyIAAAAAAIj1AMW0adPsyJEjdv/999vll1/uhqn+xCuvvGIVK1a0jz/+2I0HAAAAAACRKSYCFEuWLHHPbdq0STA8Z86cdsUVV9jBgwft999/92nuAAAAAABAlujFY/Pmze65evXqScZVq1bNPW/ZssXq168f8vXbt2+3HTt2JBj222+/uefVq1fb8ePHM2GukRpH4rZFzYr69ddfY265svoyxaJY3E7RskxpWS6WyV9ZeTtF03KxTGwn9j1/vlPRcozI6ssUKXLkyGE1atSwvHnzpu4FgRhw+eWXB7Qo//77b5Jxzz//vBv38ccfJ/v6p556yk3Dg3XAPsA+wD7APsA+wD7APsA+wD7APsA+wD7APmAZtg5WrFiR6mv7mMigUJeism/fPitcuHCCcfv3708wTSi9evWyjh07Jhi2d+9e++OPP+zMM8+0PHnyWFa1Zs0a69Chg33yySdWs2ZNiwUsU3RgO0UHtlN0iMXtFKvLxTJFB7ZTdGA7RYdY3E6xvFzpoQyK1IqJAEXlypXd86pVq6xChQoJxmmYVKlSJdnXly5d2j0Su+CCCzJ8XqOVvlR169a1WMIyRQe2U3RgO0WHWNxOsbpcLFN0YDtFB7ZTdIjF7RTLy5VZYqJIZuPGjd3ze++9l2C4uhidOXOmlSpVKstHrQAAAAAAiGQxkUGh3jtKlixpb775plWtWtVuuOEGi4uLs759+7qmGg8++KBlzx4TsRgAAAAAAGJSTFy1FyxY0F599VX391NPPWW1a9e2Cy+80ObNm+f+fuKJJ/yeRQAAAAAAEOsZFHL99ddbmTJl7H//+5/rIjR//vzWsmVL69evnxUtWtTv2Ytaah6joI+eYwXLFB3YTtGB7RQdYnE7xepysUzRge0UHdhO0SEWt1MsL1dmy6auPDL9UwAAAAAAAGK9iQcAAAAAAIhuBCgAAAAAAIDvCFAAAAAAAADfEaAAAAAAAAC+i5lePJCxTpw4YT/++KP98MMPdvz4cXv00UejfhX/8ccftmTJEtu+fbtVqlTJLrjgAitbtqxFs3///de+//57W7duneutpm7dunbOOef4PVsZRj3yfPrpp+7vhx9+2HLkyGHR5qeffrJvv/025LgmTZq4RzRbv369fffdd7Zv3z4788wz7dJLL7Vs2bJZtJk6dao7RiSncuXKdtNNN1k02rlzp82dO9f++ecfd5yoX7++e0QzHce//vpr27p1q5UuXdouv/xy9xwtdu/ebZ9//rnbJg0bNnS9jqW0/b744gvbsWOHVa1a1a644grXU1mkOXDggJvPP//802rWrGnXXXddhkzrpyNHjrj9bMWKFW7/uuOOO0JOp/MkHet///13O3bsmFWvXt0dC3Pnzm2RRvM6b948+/nnn9389enTJ8Xj+8KFC933rHz58ta4cWOrWLGiRRrV+9d86jin9X///fdbnjx5Tvo6nV/oPEPfqxtuuMEijfY77X+HDx+2O++8M+QxbuLEifb333+HfP3tt98ecee5a9eutZkzZ9r+/futY8eOVqNGjRS364IFC+yXX36xnDlz2kUXXWR16tSxSLN582abPn267dq1y/0WhToPf+6559y1VXKaNWtm5513XibPaRRRLx5AfA888ECgTJky6t0l+IhmS5YsCTRq1CjB8uiRN2/ewGOPPRY4fvx4IBrdc889gfz58ydZrosvvjiwcePGQLT777//AmeddVZwuQ4dOhSIRkOGDEmyjbzHU089FYhW2h633357IFu2bAmWqX79+oFt27YFok379u2T3U563HjjjYFoNHTo0JDHiVatWgXi4uIC0ejll18O5MmTJ8Hy5MuXLzBhwoRApFuxYkWgRYsWgZw5cwbnvXfv3slO/9FHHwUKFiyYYFkrVaoUWLp0aSBSbNq0KdCuXTv3m+rN41VXXRX2tH7av39/oFOnToFChQolOLaFMnbs2ED58uWTfMe0nT799NNAJOnWrVugZMmSwXksUqRIyOm2bNkSaNasWZLje65cudz+evTo0UCkePLJJwMVK1ZMMJ+7d+8+6etWrlwZPI40b948EElGjhwZqFWrVoJlSu47f9FFFyX7u7Vw4cJApJg0aVLgzDPPTDB/n332WbLTr169OtCwYcME02t/7NKlSyBSfP3114HGjRsn+J688sorIafNkSNHiucYEydOPOXzH8nIoEDIaKzu1Fx44YX2119/2aZNm6J6La1cudJF1mvXru3uGiqarKj07NmzbciQIVauXDm75557LBrv+BYoUMBatGhh1apVsz179tisWbPcnZFbb73V5syZY9Hs2WefdRH2888/30XQo123bt2sePHiCYZFc/bE9ddfb5999pm7S3XVVVdZlSpVbPXq1e6uqO5uR9PdbLn22mvt9NNPTzJcWWT6TulOVLRR5o6y37Jnz26tW7d2x0Dd4dGdHm2nvn372uuvv27RRMe4e++912XptGrVyi2TfqN0J7RLly7u7pqOGZFq1apV7o6oMlk0n19++WWy0yqjR1k7//33n1tW7Z/aH3Xnu127du77li9fPouEu4da//o9atu2rTsuZMS0flJG2AcffOAyDPTd0flCSvvktm3b3N1d7Y96jabX9lNmiO7Qp3SX+FR6++23XYaBsjt0bnT06NGQ0yljQsugfU53g3U837Bhg9tfX331VXfO8eCDD1ok0HbSMaBRo0Yu20hZHyejO9nKSNBx/7333rNIo++FsouUFatjnc5ZU6LjSY8ePZIM1/ltpNBxb/ny5e67oHMhnZcnR+cQ2ke1H+qcXecYOmboN03vEymUaa7MKWUXKRNMGTzJ0e+tspcSe+edd1xG2dVXX53Jcxtl/I6QIPIoiqfouVx66aVRn0GhKPnPP/+cZPhrr73mlk3LGI1mzJiR5C7Gv//+6+7aKJobSXc40urXX391d9jmzp3r7mzEQgbFqlWrArHi448/dstUokSJwPLly5Nsu+3btwdixXnnnReoUqVKVGZaPfPMM247jRgxIsFwZVjpDv7pp58eiDbXX3+9W6Z33303wfCffvrJHfd0dz6S6Tgwa9YslyGm705KGRQ9evRw4wcOHBgcduLEieA60G9YJFBWxCeffBI4ePBgYN++fSfNoEjttH7SvOmO7969e93/yjRILoNC23Pz5s0Jhh07dizQtm1bt3wvvPBCIFK8/fbbgR07dri/tTzJZVBs3brVfacSmzdvnlum1q1bByLFBx98EPj7778TZMKdLINi+PDh7riubL9IzKBQZsEf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",
      "text/plain": [
       "<Figure size 1080x648 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "goal_counts=mapping.groupby('sdg_goal').size().reindex(range(1,18),fill_value=0)\n",
    "chart(goal_counts,'Supported mappings by SDG Goal (231 relationships)','SDG Goal','Supported mappings','mappings_by_sdg_goal.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-26",
   "metadata": {},
   "source": [
    "Goal 9 is the largest group in this selected corpus. Counts may reflect selection, retrieval and model tendencies; they do not show causal impact or CORDIS-wide prevalence."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "final-release-27",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:07.893482Z",
     "iopub.status.busy": "2026-09-27T10:12:07.893482Z",
     "iopub.status.idle": "2026-09-27T10:12:10.547104Z",
     "shell.execute_reply": "2026-09-27T10:12:10.536090Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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juZLS7Lo8dDzzdfbac916XHT4L6WhNFjpdd6oOdiINeVa6kd3c979+4114duY+7cuSUYsW2TaykQvVfp8Xe9V+n3mWc1o7jSe7pug5b00vuHfp9qCSNX2qaLBgGtBiGnTZvm1l5D69atnVVO9btAj7s+QPs6fvqdqPtNX7Dod1v58uXNxxf93tT0GjjU7dPvfN123Qca+PP3m0DpeaTH9PDhw+ZeouehXqO+7v+u4roOf9vpmWf9btBjpb/n9DhpPsKR56eeekq6d+9uvr/0hVUg9y/AFtpIJoCkZcWKFVox2ny2bt0a8Pzjx493lCxZ0rkM6xMREeF48sknHWfOnHGm/frrr73SuX727NnjtuwFCxY4SpQo4ZWuQIECjvnz5/vMT1RUlOP11193REZGus1TtmxZx/bt2x3p0qUz/9+6dctr3lGjRjnuuOMOr/VVq1bNsWPHDq/0mTJlMtN37tzpqF69uts8J0+eNGkKFy5s/j927JjX/LoNvvbdnXfe6fjggw+C3s+WmNbtj+s2ValSxW1duu8+/fRTk27VqlWOggULuk3PkSOHY/ny5V7LDCbvVj70mN13331e87388ss+j2Gw8/nbV9by9u3b56hVq5bXNjz99NOOmzdvhvU89EfPTys/rp+cOXM6Ro4cGfA1Fpfz9/Lly44XX3zRkTp1aq992a5dO8elS5e88jl69GiTpkePHo6JEyc6MmfO7DZvrly5HEuXLvW5jZs2bfI6V1KlSuXo06eP2Ub9v3fv3s70pUqV8rutrVu3Dkue/NFjnDVrVrMvzp8/7wiGlY+1a9cGNF/FihXNfD/88EOM6fTYWvswWP/++6/jwQcf9LmPH3nkEcfu3budaV977TUzfty4cT6X9d5775npffv2dRvvenz0PLeuD+uj1+fvv//utbxg51P79+/3eU1nzJjRMXDgQEd0dLTfdX300UeODBkyOOfp0qVLnM/FYK8r9ffff5vvEM/r4+233/Z5fcQmtm2yLFmyxFG6dGmv7cqbN69j9uzZPpdt7Y8DBw64jZ80aZLPZemnSZMmzu8e9f3338f4feb6m8Xf+tTHH39srlXP+fUep/vUk97LdPo///zjqFu3rtd8Tz31lOP69ete833yySde3y36yZ49u2Po0KFhWYe/7bSWt2XLFvObxfO86ty5s897VSB5tpQpU8ak2bZt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",
      "text/plain": [
       "<Figure size 1080x648 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "confidence=mapping['confidence_level'].value_counts().reindex(['HIGH','MEDIUM'],fill_value=0)\n",
    "chart(confidence,'Categorical mapping strength (231 supported relationships)','Strength label — not a probability','Supported mappings','confidence_distribution.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "final-release-28",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:10.555668Z",
     "iopub.status.busy": "2026-09-27T10:12:10.552158Z",
     "iopub.status.idle": "2026-09-27T10:12:14.737487Z",
     "shell.execute_reply": "2026-09-27T10:12:14.729957Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 1080x648 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "contribution=mapping['contribution_type'].value_counts().reindex(['DIRECT','INDIRECT'],fill_value=0)\n",
    "chart(contribution,'Contribution type (231 supported relationships)','Contribution category','Supported mappings','contribution_distribution.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "final-release-29",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:14.753619Z",
     "iopub.status.busy": "2026-09-27T10:12:14.742026Z",
     "iopub.status.idle": "2026-09-27T10:12:16.471584Z",
     "shell.execute_reply": "2026-09-27T10:12:16.467028Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABCgAAAJ4CAYAAACnNtIxAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjIsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvgI3uAAAAAAlwSFlzAAASdAAAEnQB3mYfeAAAduxJREFUeJzt3QeUU9X3//099F6lSu9dsACKFKXZaSKIDURFwI6IBRVEFJUvogKCIqJgBQTFhmBFRcVGU0C6SBWQXoc863N+z51/ZiaZxszcTOb9WisrM/feJCc3N+Xus88+MYFAIGAAAAAAAAA+yuHngwMAAAAAAAgBCgAAAAAA4DsCFAAAAAAAwHcEKAAAAAAAgO8IUAAAAAAAAN8RoAAAAAAAAL4jQAEAAAAAAHxHgAIAAAAAAPiOAAUAAAAAAPAdAQoAAAAAAOA7AhQAgBT7/fffbeLEibZ48WL2WjJWrVrl9tXChQvZV7C33nrLHQ8HDx7M8nvj1VdftdmzZ2fofomm/ZVVrV271r0GX375pUWDRYsWueezZ88ev5sCIAm5kloJAJllzZo1tnTpUvvvv/+sZMmSVqFCBWvQoIHlzZuXFyGCfPrpp/bAAw/YQw89ZOecc47fzYn4H8P9+/e3fv36WcuWLf1uDnz28MMPuxO+yy67zAoWLGhZ1cyZM+3GG2+0sWPHZuh+OZX9FQgEXDD1l19+sRMnTljTpk3tzDPPDLv9999/775/wsmdO7f17ds3ycdcvny5LVu2zGJjY61u3bp21llnWVanQLQ+w2644Qa74IILLKvLlSuXez6rV6+2MWPG+N0cAGEQoADgK/2AHDhwoP3444+J1hUuXNguuugie/zxx61WrVq+tC8S/fHHH/bNN9+4AM7555/vd3MAZAHTp0+3AwcOuJPN/Pnzp+k+jh8/7gKU5cqVc4G3SKPPxRdeeMH1+O/atStu+YgRI5IMULz77rv23HPPhV2vAEm4AMXGjRvtuuuuS5QpdcYZZ7h9rs9ppD0LTa+lAj6tW7c+5d2ooPrFF19s48ePt9tvv92qVq3KSwNEIAIUAHzz22+/uR8dSuFVz4ZOtitWrGiHDx+2TZs2uR6tGTNm2FVXXUWAIsGPcPUCKbBDgCJy1a5d253EtWrVyu+mIAL06tXLduzYYYUKFfLl8e+//377559/rHPnzmkOUOiEW9luw4cPt3z58lmk+eyzz1yGR0xMjAsQKCNPAYSU0udp/fr1Ey0P91z37t1r7dq1c/tEr6sC6sq2mDdvni1ZssTatm1rP//8s/tey4pq1KjhPsPOPfdcX7PQFBxKjwCF3H333fbJJ5/YqFGjbNKkSelynwDSFwEKAL7RMAEFJxo1auR+MJQvXz7eeq37+OOP3YkekNXoR71fP+wReR577DHL6rwTumuuucYikU5iFZjQcITTTjvNevbsmaoARY8ePey2225L8fY6yVVwQkMSv/vuO6tUqZJb/u+//7o2aNiHvudef/11y4rOPvtsd4kmF154oZUtW9befPNN+9///udbwBBAeAQoAPjm22+/ddcjR45MFJzw0mq7d+8e8nb64demTRurU6dOovW//vqr/fTTT4l+XKlHSz0yTZo0sWbNmtnu3btdNoJ62apUqeJ6z5TJkVBab5cwVVVjog8dOuSea4sWLUL+MEr4WPv373ePtW3bNheo+fvvv+NSiVesWOEKfnk0DEY/vhJSezXGWr23RYoUsebNm7sf1EnROGrdRmPAdRs9x9KlS1taJHxOKlDm7b/q1au7faEeT4+eo14/paPrZKNx48Zh71s9mBr3rZOQkydPWrVq1Vwab548eZJtR0a//l56snpkg2tQhHqNv/76a/f66NhQxkWBAgWSfG10MrRu3bp4r42Orx9++MGNfQ9VH+TPP/90WUneMaj3TuXKlcM+Tnrth7Qei8m9F5LLHkqv1zupx9W+1PPZvHmz62Vv2LBhyB54r+ijjlcNBwhVU8Grm7By5Uo7duyYSz9XgEs98knR7fR5qKFfR48edbfTcAbvMfQenj9/flyxSZ0sa997dBJfrFgxS44eQ0PxdGzpfZsUPQeduOt1Ll68uPsczowsgvbt21tm0efNlClT3N9PPfVUXHBCFBwZN26c+47S8BENKdCQxZQWINXreNNNN7njUxkYeu/qODjvvPPiPU5St9N7Xd8R+/bts+uvvz5e1oxeG31P6pjQybo+g4OPCY937Oi4D1eDQp/ner9s377dfafpPROujcH0XtDn1datW93xV69evXiZktpvXnFOHU/B33U6/hK+1vq81XtXz0mfb7qvUEM4cubM6X5XaCjQ22+/7fYXgAgTAACf5MuXL6CPoS+++CJVtxs4cKC73csvvxxy/YgRI9z6Rx99NN7y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t9atW9vAgQPtxhtvtOrVq9sTTzzhS3sBAAAAZJMAxT///GP33nuvTZo0yUqVKhVym549e7qTlEKFCsUtK1GihI0cOTLuhAZA5Dt69Kh7L3fv3j3sNtdff70tWrTIKlasaP3797errrrKZU899NBDNnv27ExtLwAAAIBsFKDo16+fXXHFFdalS5dU33bHjh3uulWrVhnQMgDpzasv8/jjj4dcv3TpUvv444+tZs2abnjHhAkT7J133rG5c+e69V5QEgAAAEDWE9E1KKZNm+aGdixbtizVt92/f79LET/zzDPtuuuuSzaQsXPnznjL1qxZEzcziC5AeuBYCk9Ds5599ln76quvLHfu3G5ZIBCIt88++ugjd3333XdbwYIF49a1bdvWWrRoYd99951t3brVzfQDAAAAwF/KdI6KAMX27dvdScibb76Z6ulC9+3b5wrrHTx40PW25sqV9NNUL+zw4cNDrjty5IgdOnQoVY8PhMOxFNrx48fd0I4777zTFbTV0C45ceJEvH2mrAlR4DHhvmzatKkLUPz++++uRgUAAAAAfxUuXDg6AhQDBgywRo0aWYECBVy1ftm2bZu7VraDllWqVMldgm3ZssUuueQSF1hYuHChVahQIUWPlXDMuzIoOnfubPny5XNtANIDx1JoI0aMsDx58tiwYcNcQFEzc4j+Dt5nCj6KZuxIuC/Lly/vrlUYl/0MAAAAZD0RGaBQ5sN7773n/m7ZsmWi9Z999pm7qChe8Fj1FStW2MUXX+wyLjTFaJkyZVL0eEoHD5cSrpSU1KalAOFwLCWmrAgN7VDhy7x588bbTzExMfH2mf73AhcJ96WXKZXwNgAAAACyhogMUOTIkcONJw9V4f/nn392s3nUqlXL9aJ6FJBQxoOK53366aduFg8AkU01Jvr06WN16tRxw7F0kb1797rrVatW2ejRo61Zs2YuWFm0aNG4LKrTTjst3n15dWS8bQAAAABkLREZoFB6tzesI9iGDRusatWq1qFDB5s+fXrc8g8++MBNNViyZElXS+KPP/6IdztlVDRo0CBT2g4g5bygo/z000+J1quehC5DhgxxAYratWvHbataFcG823vbAAAAAMhaIjJAkVoKUOhEx6s/kZAq/C9YsMCXtgEIT8MyBg0alGj5gQMHbNKkSS7YoIK33lTB7dq1s4cfftjGjh1rPXv2jBsSsnjxYvviiy+sXr16dvrpp7PLAQAAgCwoSwUoVLBSQz8S9pBqWEeoISGehg0bZkLrAKQlQKEhHAlt3rzZBSgaN24cb33z5s3tvPPOs++//97N2tGtWzfbvXu3TZkyxU6ePBky2AEAAAAga8hSAYqyZcuGHPqh9G9dAEQ/TT3cvn17W7p0qbsEz8ajqUoBAAAAZE1ZKkABIPvMl6xsiCZNmiRap+K4CkzMmTPHzdyjmjUa+qGMCgAAAABZFwEKABFHM3GEGvoRPNxLNSgAAAAARI8cfjcAAAAAAACAAAUAAAAAAPAdAQoAAAAAAOA7AhQAAAAAAMB3BCgAAAAAAIDvCFAAAAAAAADfEaAAAAAAAAC+I0ABAAAAAAB8l8vvBgDIGHVve4pdG+H+HDfE7yYAAAAAEYMMCgAAAAAA4DsCFAAAAAAAwHcEKAAAAAAAgO8IUAAAAAAAAN8RoAAAAAAAAL4jQAEAAAAAAHxHgAIAAAAAAPiOAAUAAAAAAPAdAQoAAAAAAOA7AhQAAAAAAMB3BCgAAAAAAIDvCFAAAAAAAADfEaAAAAAAAAC+I0ABAAAAAAB8R4ACAAAAAAD4jgAFAAAAAADwHQEKAAAAAADgOwIUAAAAAADAdwQoAAAAAACA7whQAAAAAAAA3xGgAAAAAAAAviNAAQAAAAAAfEeAAgAAAAAA+I4ABQAAAAAA8B0BCgAAAAAA4DsCFAAAAAAAwHcEKAAAAAAAgO8IUAAAAAAAAN8RoAAAAAAAAL7LZRHs33//tWnTptkPP/xgW7ZssfLly1uLFi2sb9++VrBgwZC3mTt3rs2YMcM2bNhg5cqVsy5duliPHj0sJiYm09sPAAAAAACyeIBi/fr1VqdOHTt27Fi85e+++64988wztnDhQqtSpUrccm3Xq1cvmzVrVqLt//zzTxs+fHimtR0AAAAAAERJgOLo0aNWtmxZu+aaa+yss85yf2/atMnGjRtn33//vT322GM2ZcqUuO2HDBnighNFixa1+++/32Va7N+/39588007fPiwr88FAAAAAABk0QBFtWrVbO3atZYr1/9rooIOF110kZUoUcIN4fBo+IcCF9p2wYIFdvbZZ8etu+SSSwhQAAAAAAAQ4SK2SGaePHniBSckEAjYzJkz44IVng8++MBOnDhhPXv2jBec8OTPnz8TWgwAAAAAAKIug8KzaNEiu/32210A4p9//rE9e/bYtddeaw888EDcNkuXLnXXl156qcugeOGFF2zXrl1Wq1Ytu/nmm+3cc89N8jF27NhhO3fujLdszZo17jo2NtZdgPTAsQSOBwAAAGQXOXPmjK4Axd69e+2XX36J+1+FMZs3b24FChSIW6aghSxbtsxGjRplJ0+edP9/99139tprr9n48ePt1ltvDfsYEyZMCFtE88iRI3bo0KF0fEbIzjiWwPEAAACA7KJw4cLRFaA477zzbPHixa5opmb2mDRpkt12222u7sTIkSPdNrlz53bXY8aMsbvuusvVqciRI4fNmzfP/ve//9k999xj3bp1s1KlSoV8jAEDBlj37t0TZVB07tzZ8uXLFy8YApwKjiVwPAAAAABZNEBRpEiRuLoSqjvRo0cPq1+/vo0dO9Yef/xxi4mJsTJlyrj1GvqhgISnbdu2rsdaGRTffvutdenSJeRjlC5d2l3CpaSkNi0FCIdjCRwPAAAAQBYrkhmOsiUUkFDgYd++fW5ZkyZN3HWlSpUSbe8tI7UeAAAAAIDIFbEBimnTprnZOYKLCmqYh6YT/f777618+fJWtGjRuKlElTr/8ssv26pVq+K2/+uvv+zFF190fzds2NCHZwEAAAAAALL0EI8lS5a44RqabrRy5cpuKMfmzZvjMiFGjBgRt22xYsVs2LBhdt9991m9evWsatWqbnvVrFCAQ0M7GjVq5OOzAQAAAAAAWTJA0bt3b9u+fbvNnDnTZUJ4FGh4+OGH7corr4y3/eDBg931k08+aWvXrnV/q8ClZu945plnMrn1AAAAAAAgKgIUDRo0cMM8pk6dahs3brSDBw9ahQoVrHjx4mFvoyCFZvFQgEKZE9WrV3dBCgAAAAAAENkiNkARPOtBtWrVUlVEs06dOhnaJgAAAAAAkE2KZAIAAAAAgOyDAAUAAAAAAPAdAQoAAAAAAOA7AhQAAAAAAMB3BCgAAAAAAIDvCFAAAAAAAADfEaAAAAAAAAC+I0ABAAAAAAB8R4ACAAAAAAD4jgAFAAAAAADwHQEKAAAAAADgOwIUAAAAAADAdwQoAAAAAACA7whQAAAAAAAA3xGgAAAAAAAAviNAAQAAAAAAfEeAAgAAAAAA+I4ABQAAAAAA8B0BCgAAAAAA4DsCFAAAAAAAIOsHKI4ePWpvv/22zZkzJ27ZX3/9ZZdeeqnVr1/fHnvssVN9CAAAAAAAEOVOOUAxadIku/rqq23hwoVxy3r06GFLly619evX26OPPmqvvfbaqT4MAAAAAACIYqccoPCCDzfccIO7XrJkiW3bts1Wr15t06dPjwtiAAAAAAAAZFiAQoEIqVWrlrv+5ptvrH379pY/f35r165dvG0AAAAAAAAyJECRN29ed33gwAF3vXjxYmvSpIn7OyYmxl0fO3bsVB8GAAAAAABEsVMOUDRs2DBuqMfWrVvtww8/tAsvvDCuWGZwdgUAAAAAAECGBCjuv/9+y5Url917771Wvnx5O+uss6xRo0ZunTezR9euXU/1YQAAAAAAQBTLdap30LFjRzeDx0cffWSnnXaa3XzzzXHr9u3b52b0uOmmm071YQAAAAAAQBQ75QCFNG/e3F0SGjt2bHrcPQAAAAAAiHKnPMRDhTC9YphpWQ8AAAAAAHDKAYqkBAIBd02AAgAAAAAA+Bag2Lx5s7suWrRoRj4MAAAAAADIjjUorrzyymSXxcbG2m+//eb+bt26dVrbBwAAAAAAsoE0BSg+/fTTZJflyJHDihcvbtdcc40988wzaW8hAAAAAACIemkKUBw4cCDub6++RPAyAAAAAACATJ1m9K+//jrVuwAAAAAAANncKRfJrF69up04ccJWr16daJ2WrVy5Mm42DwAAAAAAgAwJULz55ptWt25de+yxxxKtGz58uFv39ttvn+rDAAAAAACAKHbKAYrnn3/eXd95552J1t11113xtgEAAAAAAMiQGhQrVqxw1/Xq1Uu0zlvmbZMWhw4dcrffsmWLlS9f3t1nwYIFw26/Zs0at722Offcc5PcFgAAAAAAREkGRe7cud31v//+m2jdjh07/u9BcqT+Yfbt22e33HKLlSlTxpo2bWqdO3d21xUqVLAnnngiUV2LgwcPWpcuXaxmzZpu2/bt21u5cuVs2rRpaX5uAAAAAAAgiwQoFDSQUHUm3nrrLXd9zjnnpPp+lTHx8ssvu2lMmzdv7oIOZ555pu3du9ceeughmzBhQrztb7rpJpszZ44VLVrULr/8cpc9sX//fuvdu7d98803aX5+AAAAAAAgCwQoBg0a5K4fffRRGzVqlP3555/u8uSTT7rCmQowDB48ONX3W6xYMXvjjTds586dtmjRIps9e7b98ssv9uGHH7r1+t+jx1OApGLFiu7vDz74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uwyKoUOH+t00ZDL9oFAKf8mSJeOWHT161KXtfv/99/bWW29Zz549eV2yAX0PrF271h0PwX744Qc799xz3efEZ5995lv74I/333/frrvuOlu6dKmdf/757qREw4CQfei3gTIo/v77b6tQoYLfzYGPNES8ZcuWrrNT3wf6bvAogKnOT4YERjaKZCJi/Pbbb653rEuXLnHBCVEPmcaSKoAxf/58X9uIzKPeUX3B5MjBx1R2p96P4OCE5M2bNy4oERMT41PLkNkUoE4YnJAiRYq4a05Msh91aug3gjIwlUGD7E3DQp977jk3/G/ZsmV+Nwc+mDJlirtWNl1wcEJq1qxJcCILYIgHIsaff/7prhN+mIhXJNPbBgCUaaUeknbt2rEzshllUcyYMcONM1a67nvvvecy8B588EG/m4ZMdvfdd1uTJk1cDRIgYTbdJZdcYtOnT7fixYuzc7JRDTO59tpr3bAODQkVFUo966yzfG4dUoIABSKqF8TLmEhIdQiCtwGQvenkVD86VXcgYXYFop+C1Q888EDc/6pN8u6777pxxsg+VHtENWo08xdQokQJVzS5UqVKcbVpVBDx6quvdn8je9BwcB0LGvp3/fXXu1nAgjMy9V1RoEABX9uIpBGgQMQJla7tLaNkCgD9uFDPyMMPP+wKYSH7USBC6buqReL1kCnTbs6cOa4OBaKfCufq/T9hwgQrV66c382BzzSDizKogk88FaRQTRJ9PixZsiTe8GFEL83aoTo0ffv2dVnZqmOnDk7VqlFNq0GDBlF0P8IRoEDE0LzlojoUoQqjSbFixTK9XQAix9ixY92PiyeeeILZGrIxzWc/atSouP9XrVrl0ncHDhzoZndB9Lv//vtdz+j69evjHQv79+93tYu0TD3pmpYW0U/DfBLSdLN33HGH3Xfffa7OGQGK7EHDeTT0L2FhdS1r1KiRy74cN26c5cyZ09d2IjwCFIioH5zy008/JVr3448/umtNLQcge/aIKDCh4mcvvPCCOxEFPPpu0AnK119/bYcOHSJ9NxvQDD7btm2LN9QnmJa3bt2aAEU2552EkoGbvc4nFIzo3LlzvOUKWKoGhWaG27t3rxsGgshEgAIRQx8a+rCYNWuWPfLII25Msfz3339unLmGeVAMD8h+lMavIR2zZ8+2V155xfr06eN3k+CT33//3VVhL1iwYLzlmjpOPaRarinkEP1uvPFG27JlS6LlGvKh3wua2aNatWq+tA2Z/x2hKWbPOeeceMuVkfviiy+6vxs0aMDLkk1cdNFFbnpRXYJf9+3bt7vvEH1PeFnbiEwxAUKKiCDDhg2z4cOHu6J3KmyjH5pvv/22S+G85pprXFoWsod///3XJk+e7P5es2aNOzHt0KGDXXDBBXGVuZWqh+h3+eWX24cffmgtWrSwyy67LNF6FUXzZvpBdLvrrrts2rRp7rPAO/nU54OOD2VO6KRUJ6jIvjTVrMafb9iwwe+mIJOoI0tp/ZqCWJlUKqyu+hPq8NKQH313fPvtt7we2YSyIxTI3rVrl/v9oKE9qkGh+lUKUqh2zaRJk/xuJpJAgAIRReNJNV505syZ8ZaryM0nn3xCxDMbUVX2hg0bhl2vOc6ZVi77FETUtJLhJBxniuil4ITGlOuEJCF9dyiQSQZF9kaAIvs5cuSItW3b1g37Sahly5buxLRs2bK+tA3+0LHQpUuXRHXtlF2hc4yEWXiILAQoEJEWLlzoot2a4/7MM890HygUs8leFOV+9tlnk6zYnTCdE9Fp9OjRLqMmnI4dO8Zl1iD6HT582KXurly50mVNVKxY0dq0acMUo3CefPJJVyRTs7wge9FMHZpa8p9//nEZFcqsa9asmd/Ngo+ZFJq5Qx0cmt1FM7oomwaRjwAFAAAAAADwXQ6/GwAAAAAAAECAAgAAAAAA+I4ABQAAAAAA8B0BCgAAAAAA4DsCFAAAAAAAwHcEKAAAAAAAgO8IUAAAAAAAAN8RoAAAAAAAAL4jQAEAAAAAAHxHgAIAgEzw5Zdf2sSJE7Psvv7jjz/srbfecs9hxYoVfjcn2zh8+LDb5z/++KPfTQEAIMMRoAAAZGk///yzO4F7+eWX7eTJk4nWb9q0ya1ftmyZ+em1116z/v37W1Y0fPhwa9CggfXq1cs9BwVb8H8WLlzojq/Y2NgM2SV79+51+3z27Nm+tyWj3x+ffPKJ380AAPiMAAUAIEv78MMP3QncLbfcYtOmTUu0funSpW79559/7kv7srrt27fb448/bsWLF7frrrvO+vXr54IV+D9vvPGGO76OHz/u+y6JpLak1qBBg2z8+PF+NwMA4LNcfjcAAID0kDt3bnvkkUesZ8+eljdvXnZqOlm5cqWdOHHCRo0aZTfffDP7FQAAZBgCFACAqKCT5wkTJrjL3XffnWzWhVLnr7nmmnjLDx486LIwzjrrLDvnnHPcMg1nWLVqld166622f/9+mz9/vh09etTatGlj5cqVi7vt999/b6tXr7Zq1apZq1atknz8ffv22YIFC+zAgQN27rnnWs2aNcNup7R9ZTGUKVPGWrdubYUKFYq3TXD7Dh065DJFtm7daldffbUVLlw4yXZs3rzZFi1a5J632n3eeedZrlz/76eBak588803cUNpNHQgR44cLlslKXv27LEffvjBduzYYRUqVHD7s1ixYqe8/5Pbb6nZNqX7IKl9rNdCtTlk8uTJcbdr27ZtvMdLyesYnPHz22+/WYkSJax9+/aWUhoCkpK2LFmyxP788083HEr7uXbt2onuK7ljShka2mbLli3u9tq/qkui59itWzcrVapUvPtbv369/fTTT66ehrZv3ry5xcTExHvNjxw5EjccK/g9nTNnTvf3X3/95YZp6T70fM4++2x3LAIAokwAAIAs7NFHHw3o6+y7774LNGzYMHDaaacF9u7dG7d+7ty5bv2zzz4bt6xt27aBypUrJ7qvv//+22370EMPxS274YYb3LJFixYFSpQo4f7WpUCBAoH58+e7x9L9ect1ufrqqxPdt3c/amfw/cTExATuvffeRNuPHz8+ULhw4Xj3W7JkSfd8Qt3vDz/8EChdunTctuvWrQu7z2JjYwN33313IGfOnPHuv2bNmoHff/89brvq1avHW6+LbpOUqVOnBgoVKhTvNkWKFAlMmDDhlPZ/SvZbarZN6T5Iah83btw40f7RZdq0aal+HY8fPx73ON6lQoUKgc8//9z9PWTIkCT3e7NmzZJsy8KFCwMNGjRItP7aa68NHDt2LMXH1Nq1awO1a9eOdx+XXnppYPTo0e7vxYsXx93PgQMH3Hsh4WM2bdo0sHnz5niveajL4cOHAydOnAj06tUr0bo6deoEfvvttyT3CQAg6yGDAgAQFdSb+uSTT9pll11mo0ePtsceeyxd779Hjx522mmn2cUXX2wbN260b7/91m666SY7//zzXe9wp06d3NCSjz76yGUeqPf3ggsuSHQ/GoJSpEgR69ixo/3777/2xRdfuPbWqVPH+vbt67aZPn26DRw40PWCt2vXzmUh/P33367Xunv37q6XPWFGgJbnz5/f9XLr/pPKnnjqqafs2Wefdb3T6qXX81IG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",
      "text/plain": [
       "<Figure size 1080x648 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "per_project=projects['n_supported_mappings'].value_counts().sort_index()\n",
    "chart(per_project,'Supported mappings per project (all 150 projects)','Number of supported targets','Projects','mappings_per_project.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "final-release-30",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:16.477055Z",
     "iopub.status.busy": "2026-09-27T10:12:16.476057Z",
     "iopub.status.idle": "2026-09-27T10:12:18.409924Z",
     "shell.execute_reply": "2026-09-27T10:12:18.407382Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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ALAcAQoAAPD/2rvz2CiLP47jUyhCEUGKCLSgiCDI4YUgiigaREUQLSgYo4lHYmy8gqioMR4RMAZBIgH1DwQxhMOIIBQQb7EmcimHlaO1FhEohVLxRnnM5/vLs7/n2d22u9K6pb5fyaZ0dp55ZmeakJ3nO98BAABIORYoAAAAAABAyrFAAQAAAAAAUo4FCgAAUK+VlJS4l19+2RUVFbn/ksWLF7v58+enuhsAACQszfM8L/HqAACgtm3fvt198803rry83J166qnu7LPPdieeeGK9Hfi33nrL/fnnn+7GG2+slfaXLl3qhg0b5hYuXOhGjhzp/isuvvhiV1ZWZn9LAAAcC9JT3QEAAPA/xcXFLjc31y1fvjw0JI0bN3bDhw9306dPd61atap3wzVhwgT322+/1doCxX/Vdddd53766adUdwMAgISxQAEAQB1w5MgRN3ToULdlyxZ3/PHHu4EDB7rWrVu7nTt3ui+//NItWLDAPfHEE/VygQK1Y+zYsQwtAOCYwgIFAAB1gBYhtDjRrVs3t3r16tBCxB9//GH5BE466aRI2Wuvvebat2/vrrjiipgojBUrVrirrrrKdezY0cq0uJGenu5ycnLc999/7z799FOXlpbmLrvsMtemTZvQ9cnU9X399dduw4YNtsjSs2dPd+6558bUCbZbWlrqPv74Y/fLL7+433//3e3bt8+2eChPhG/06NGhbS27d+92+fn57scff3SnnXaabV9Qe9HUB42f8k1oe8yll16a4AzE9nPXrl3uk08+sQiWK6+80haO5PDhw+799993e/bsceeff7595nhUb+3atW7Hjh0uIyPD9e/f37Vr167Ke9bk/OhvRpEpo0aNqnQePvjgAxszjVN2dnaV43nKKafYwpnum5eX5wYPHuw6deoUqavFtPXr17uKigor79Onj40dAAAJUw4KAACQWvn5+coJ5Y0ZMyah+i1atPBGjBgRU75o0SJrRz99PXr08Hr37u3NnDnTa9Sokb2vV0ZGhjdr1qzQ9cnUPXjwoDds2LBIHf81cOBAb+/evXHbnTNnjte4cWOrl5mZ6TVs2DDmer0KCgrsusOHD3v3339/TL0uXbp4mzdvDt2jrKzMu/DCC0P1+vXr573++uv274ULF1Y7rn4/Z8+eHfr82dnZXmFhobdjxw67t1+elpbmTZo0KaYdjVVWVlao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",
      "text/plain": [
       "<Figure size 1080x792 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "787"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "order=[code for code,count in quality['top_15_targets']]\n",
    "top15=mapping['target_code'].value_counts().reindex(order)\n",
    "if top15.tolist()!=[count for code,count in quality['top_15_targets']]:\n",
    "    raise ValueError('Top target counts differ')\n",
    "chart(top15,'Top 15 exact Targets in the demonstration corpus','Supported mappings','Exact SDG Target','top_15_targets.png',horizontal=True)\n",
    "(FIGURES/'figure_values.json').write_text(json.dumps(chart_values,indent=2),encoding='utf-8')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-31",
   "metadata": {},
   "source": [
    "Target 9.5 has 45 of 231 supported mappings (19.48%). This is an important concentration to examine, not validation of generic research-to-SDG-9.5 mapping."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-32",
   "metadata": {},
   "source": [
    "## L. Uncertainty and evidence\n",
    "\n",
    "No project is forced to have a mapping. Four system-invalid cases are preserved separately without semantic repair. HIGH/MEDIUM are categorical labels, not probabilities; public mappings are model-supported, not human-certified ground truth. Segment IDs point to the same project and source field. Public evidence text collapses whitespace; retained source segments preserve the original text."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "final-release-33",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:18.421445Z",
     "iopub.status.busy": "2026-09-27T10:12:18.418455Z",
     "iopub.status.idle": "2026-09-27T10:12:18.475232Z",
     "shell.execute_reply": "2026-09-27T10:12:18.473206Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>project_id</th>\n",
       "      <th>target_code</th>\n",
       "      <th>status</th>\n",
       "      <th>system_error</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>101087257</td>\n",
       "      <td>17.8</td>\n",
       "      <td>SYSTEM_UNCERTAIN</td>\n",
       "      <td>invalid_scope_gate</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>101181294</td>\n",
       "      <td>15.5</td>\n",
       "      <td>SYSTEM_UNCERTAIN</td>\n",
       "      <td>invalid_required_depth_grader</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>101211177</td>\n",
       "      <td>9.5</td>\n",
       "      <td>SYSTEM_UNCERTAIN</td>\n",
       "      <td>invalid_required_depth_grader</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>101279745</td>\n",
       "      <td>3.8</td>\n",
       "      <td>SYSTEM_UNCERTAIN</td>\n",
       "      <td>invalid_required_depth_grader</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  project_id  target_code            status                   system_error\n",
       "0  101087257         17.8  SYSTEM_UNCERTAIN             invalid_scope_gate\n",
       "1  101181294         15.5  SYSTEM_UNCERTAIN  invalid_required_depth_grader\n",
       "2  101211177          9.5  SYSTEM_UNCERTAIN  invalid_required_depth_grader\n",
       "3  101279745          3.8  SYSTEM_UNCERTAIN  invalid_required_depth_grader"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>project_id</th>\n",
       "      <th>target_code</th>\n",
       "      <th>confidence_level</th>\n",
       "      <th>source_fields</th>\n",
       "      <th>evidence_segment_ids</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>101039986</td>\n",
       "      <td>7.3</td>\n",
       "      <td>MEDIUM</td>\n",
       "      <td>objective</td>\n",
       "      <td>objective_05; objective_09; objective_10; obje...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>101041677</td>\n",
       "      <td>3.4</td>\n",
       "      <td>MEDIUM</td>\n",
       "      <td>objective</td>\n",
       "      <td>objective_02; objective_05; objective_06; obje...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>101041677</td>\n",
       "      <td>9.5</td>\n",
       "      <td>HIGH</td>\n",
       "      <td>objective</td>\n",
       "      <td>objective_03; objective_05; objective_06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>101056784</td>\n",
       "      <td>7.3</td>\n",
       "      <td>MEDIUM</td>\n",
       "      <td>objective</td>\n",
       "      <td>objective_01; objective_03; objective_04; obje...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>101056883</td>\n",
       "      <td>12.4</td>\n",
       "      <td>MEDIUM</td>\n",
       "      <td>objective</td>\n",
       "      <td>objective_02; objective_04; objective_06; obje...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  project_id target_code confidence_level source_fields  \\\n",
       "0  101039986         7.3           MEDIUM     objective   \n",
       "1  101041677         3.4           MEDIUM     objective   \n",
       "2  101041677         9.5             HIGH     objective   \n",
       "3  101056784         7.3           MEDIUM     objective   \n",
       "4  101056883        12.4           MEDIUM     objective   \n",
       "\n",
       "                                evidence_segment_ids  \n",
       "0  objective_05; objective_09; objective_10; obje...  \n",
       "1  objective_02; objective_05; objective_06; obje...  \n",
       "2           objective_03; objective_05; objective_06  \n",
       "3  objective_01; objective_03; objective_04; obje...  \n",
       "4  objective_02; objective_04; objective_06; obje...  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "display(uncertain[['project_id','target_code','status','system_error']])\n",
    "display(mapping[['project_id','target_code','confidence_level','source_fields','evidence_segment_ids']].head())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-34",
   "metadata": {},
   "source": [
    "## M. Limitations\n",
    "\n",
    "- Retrieval tests only the top 10 of 169 Targets per project. Relevant targets outside that set cannot be recovered by the verifier.\n",
    "- Production is Target-only. The retained EU vocabulary also contains Goals, Indicators and Series, but no production Indicator/Series evaluation was performed. Blank `narrower_concept` fields mean outside production scope, not individually rejected concepts.\n",
    "- V8 FAILED the complete internal development gate. Repeated development-set reuse and the change from GPT-5.4 Mini to GPT-6 Luna prevent interpreting those metrics as independent final-deployment accuracy.\n",
    "- No independent final-Luna human gold set establishes final precision/recall. Strong/weak separation is unstable in the development results; HIGH/MEDIUM are categorical strength labels, not probabilities.\n",
    "- The unchanged scope prompt says `ONE Horizon Europe project`. The frozen corpus has 108 HORIZON_EUROPE and 42 OTHER projects: 420 scope evaluations used inaccurate framework wording; 28 supported mappings belong to OTHER. Verification is based on target/evidence, but the prompt was not framework-neutral. Results were preserved, not relabelled or rerun.\n",
    "- The 150-project deterministic, privacy-screened demonstration is not a probability sample and cannot estimate CORDIS-wide SDG prevalence. OTHER is the retained framework category; it is not proof of Horizon 2020 integration.\n",
    "- The original upstream CORDIS retrieval/download date could not be recovered reliably. Do not infer it from later file modification times.\n",
    "- Final selection/retrieval/production orchestration scripts were not recovered in the repository search. Manifests document their settings; this release reproduces frozen-output lineage, deterministic composition and descriptive analysis, not a fresh end-to-end data acquisition/model run.\n",
    "- The provider model ID is recorded, but an immutable provider backend snapshot is not available. Future API outputs are not guaranteed identical. No API calls occur in this release app, tests or notebook.\n",
    "- Four system-invalid results remain separate. An unmapped project means no supported result among evaluated candidates, not proof that the project contributes to no SDG.\n",
    "- Target 9.5 accounts for 45/231 supported mappings (19.48%). This is a concentration diagnostic, not evidence of correctness or an estimate of research-sector prevalence.\n",
    "- Automated privacy screening is heuristic. No contact fields or credentials are included; historical names and proper nouns may remain in project text. Original-license/third-party reuse review and public deployment remain pending.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "final-release-35",
   "metadata": {},
   "source": [
    "## N. Execution and integrity\n",
    "\n",
    "Every cell has a stable nbformat ID. The test below checks release-local hashes, all deterministic compositions, evidence ownership, table counts, Excel consistency and packaging hygiene. It does not call a model. A passing software integrity test does not establish scientific validity. This notebook can be rerun from either the release root or notebooks directory."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "final-release-36",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-27T10:12:18.481779Z",
     "iopub.status.busy": "2026-09-27T10:12:18.480775Z",
     "iopub.status.idle": "2026-09-27T10:12:22.975245Z",
     "shell.execute_reply": "2026-09-27T10:12:22.972203Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Release-local checks</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Checks passed</th>\n",
       "      <td>62</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Checks failed</th>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Inference calls</th>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Reserve semantic access</th>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                        Release-local checks\n",
       "Checks passed                             62\n",
       "Checks failed                              0\n",
       "Inference calls                            0\n",
       "Reserve semantic access                False"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import subprocess, sys\n",
    "completed = subprocess.run([sys.executable,'-B',str(ROOT/'tests/release_integrity_test.py'),'--no-manifest'],cwd=ROOT,capture_output=True,text=True)\n",
    "if completed.returncode:\n",
    "    raise RuntimeError(completed.stdout + completed.stderr)\n",
    "report=json.loads(completed.stdout)\n",
    "display(pd.Series({'Checks passed':report['passed'],'Checks failed':report['failed'],'Inference calls':0,'Reserve semantic access':False}).to_frame('Release-local checks'))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
