{
  "document_id": "exec_00130_2000",
  "family": "exec",
  "split": "dev",
  "text": "ENGINEERING TICKET\n\nBug report BR-7512: the function net_revenue(rows) must compute the total net revenue of the rows list (each row is a dict with keys ['region', 'product', 'units', 'unit_price', 'discount_pct', 'returned', 'shipped_days']). Rules agreed with the client on 24 September 2031: (1) exclude returned rows; (2) exclude rows whose region is 'Nord'; (3) exclude rows with fewer than 6 units; (4) line revenue = units * unit_price * (1 - discount_pct/100); (5) apply a tax of 0.0 % on the sum; (6) return the result rounded to 1 decimals (Python round). The current implementation forgets rule (2) and applies no tax.\n\nSample rows (first 6 of the extract):\n[{\"region\": \"Est\", \"product\": \"delta\", \"units\": 9, \"unit_price\": 4.14, \"discount_pct\": 25, \"returned\": true, \"shipped_days\": 6}, {\"region\": \"Est\", \"product\": \"gamma\", \"units\": 26, \"unit_price\": 3.41, \"discount_pct\": 10, \"returned\": false, \"shipped_days\": 6}, {\"region\": \"Ouest\", \"product\": \"alpha\", \"units\": 32, \"unit_price\": 18.56, \"discount_pct\": 15, \"returned\": false, \"shipped_days\": 10}, {\"region\": \"Nord\", \"product\": \"zeta\", \"units\": 4, \"unit_price\": 23.95, \"discount_pct\": 25, \"returned\": false, \"shipped_days\": 14}, {\"region\": \"Sud\", \"product\": \"beta\", \"units\": 18, \"unit_price\": 17.39, \"discount_pct\": 25, \"returned\": true, \"shipped_days\": 4}, {\"region\": \"Sud\", \"product\": \"delta\", \"units\": 30, \"unit_price\": 71.95, \"discount_pct\": 10, \"returned\": false, \"shipped_days\": 2}]\n\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe data engineering team refreshes the sales extract nightly at 02:00 local time.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nDeployment to production requires a reviewer approval and a green pipeline.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nDeployment to production requires a reviewer approval and a green pipeline.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nThe data engineering team refreshes the sales extract nightly at 02:00 local time.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nThe data engineering team refreshes the sales extract nightly at 02:00 local time.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\n\nThe existing (buggy) implementation is:\n\ndef net_revenue(rows):\n    total = 0.0\n    for r in rows:\n        if r['returned']:\n            continue\n        if r['units'] < 6:\n            continue\n        total += r['units'] * r['unit_price'] * (1 - r['discount_pct'] / 100.0)\n    return round(total, 1)\n\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nDeployment to production requires a reviewer approval and a green pipeline.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe data engineering team refreshes the sales extract nightly at 02:00 local time.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nDeployment to production requires a reviewer approval and a green pipeline.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nCode style follows the repository's formatter settings; do not reformat unrelated lines.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nHistoric tickets BR-1183 and BR-2047 are unrelated and remain closed.\nDeployment to production requires a reviewer approval and a green pipeline.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.\nThe data engineering team refreshes the sales extract nightly at 02:00 local time.\nUnit tests live in the tests/ directory and are executed in CI on every push.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nAll monetary values are in the client's reporting currency; no FX conversion is applied here.\nThe ticketing system assigns severity on a four-level scale; this ticket is severity 2.\nThe data dictionary defines shipped_days as the number of calendar days from order to shipment.",
  "char_len": 7893,
  "document_hash": "c415053d25119b89bd769d02be02c390efebcd68b992b946ddf043ad29041f86",
  "questions": [
    {
      "question_id": "q00_exec",
      "qtype": "exec",
      "question": "Rewrite the Python function net_revenue(rows) so that it implements ALL the agreed rules in the ticket. Output only Python code defining net_revenue; no explanations, no markdown fences."
    }
  ]
}