Trouble understanding normalization calculations

Versions (relevant - OpenSearch/Dashboard/Server OS/Browser): 3.0

Describe the issue:

I am trying to understand how normalization is applied to the results of my hybrid query. I am using min/max normalization as part of a search pipeline that is applied to each of the two queries.

To me, the scores and associated normalized scores for both the keyword search (first) as well as the KNN query (second) as returned using the explain functionality do not work out. For example, I see the following two numbers for the keyword search
Hit 2: raw score = 5.92164 → normalized score = 0
Hit 3: raw score = 8.400515 → normalized score = 1

Given that these are then apparently the min and max scores for the documents, we would expect for example for hit 5:
(7.797438 - 5.92164) / (8.400515 - 5.92164) = 0.757
Instead the normalized score equals 0.90963936.

The same inconsistencies hold for pretty much all other scores. Can someone figure out what I am missing? I will include some relevant info below.

Query (simplified)
GET base_url/index_a,index_b/_search?search_pipeline=hybrid-search-pipeline-50-explain&explain=true

{
  "query": {
    "hybrid": {
      "queries": [
        {
          "bool": {
            "filter": [],
            "must": [
              {
                "match": {
                  "chunk_text": {
                    "query": "Some query text"
                  }
                }
              }
            ]
          }
        },
        {
          "script_score": {
            "query": {
              "bool": {
                "filter": []
              }
            },
            "script": {
              "params": {
                "field": "key5",
                "space_type": "cosinesimil",
                "query_value": [1, 2, 3]
              },
              "lang": "knn",
              "source": "knn_score"
            }
          }
        }
      ]
    }
  },
  "size": 10
}

Results (simplified)

{
  "took": 285,
  "timed_out": false,
  "_shards": {
    "total": 2,
    "successful": 2,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 1631,
      "relation": "eq"
    },
    "max_score": 0.8771887,
    "hits": [
      {
        "_score": 0.8771887,
        "_source": {},
        "_explanation": {
          "value": 0.8771887,
          "description": "arithmetic_mean, weights [0.5, 0.5] combination of:",
          "details": [
            {
              "value": 0.986563,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 8.310835,
                  "description": "sum of:",
                  "details": []
                }
              ]
            },
            {
              "value": 0.76805997,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 0.75897366,
                  "description": "script score function, computed with script...",
                  "details": []
                }
              ]
            }
          ]
        }
      },
      {
        "_score": 0.5,
        "_source": {},
        "_explanation": {
          "value": 0.5,
          "description": "arithmetic_mean, weights [0.5, 0.5] combination of:",
          "details": [
            {
              "value": 0.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 5.92164,
                  "description": "sum of:",
                  "details": []
                }
              ]
            },
            {
              "value": 1.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 0.82374036,
                  "description": "script score function, computed with script...",
                  "details": []
                }
              ]
            }
          ]
        }
      },
      {
        "_score": 0.5,
        "_source": {},
        "_explanation": {
          "value": 0.5,
          "description": "arithmetic_mean, weights [0.5, 0.5] combination of:",
          "details": [
            {
              "value": 1.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 8.400515,
                  "description": "sum of:",
                  "details": []
                }
              ]
            },
            {
              "value": 0.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 0.6848832,
                  "description": "script score function, computed with script...",
                  "details": []
                }
              ]
            }
          ]
        }
      },
      {
        "_score": 0.49560425,
        "_source": {},
        "_explanation": {
          "value": 0.49560425,
          "description": "arithmetic_mean, weights [0.5, 0.5] combination of:",
          "details": [
            {
              "value": 0.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 5.885189,
                  "description": "sum of:",
                  "details": []
                }
              ]
            },
            {
              "value": 0.99121726,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 0.8212879,
                  "description": "script score function, computed with script...",
                  "details": []
                }
              ]
            }
          ]
        }
      },
      {
        "_score": 0.45477447,
        "_source": {},
        "_explanation": {
          "value": 0.45477447,
          "description": "arithmetic_mean, weights [0.5, 0.5] combination of:",
          "details": [
            {
              "value": 0.90963936,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 7.797438,
                  "description": "sum of:",
                  "details": []
                }
              ]
            },
            {
              "value": 0.0,
              "description": "min_max normalization of:",
              "details": [
                {
                  "value": 0.53052604,
                  "description": "script score function, computed with script...",
                  "details": []
                }
              ]
            }
          ]
        }
      }
    ]
  }
}

Search pipeline

{
    "description": "Post processor for hybrid search",
    "phase_results_processors": [
        {
            "normalization-processor": {
                "normalization": {
                    "technique": "min_max"
                },
                "combination": {
                    "technique": "arithmetic_mean",
                    "parameters": {
                        "weights": [
                            0.50,
                            0.50
                        ]
                    }
                }
            }
        }
    ],
    "response_processors": [
        {
            "hybrid_score_explanation": {}
        }
    ]
}