1{2 "document_id": "exec_00227_2000",3 "family": "exec",4 "split": "test",5 "document_hash": "6afe19e10d57be0082db797187045b004680fa22a13a56a7b8f7e2a51b40597d",6 "questions": [7 {8 "question_id": "q00_exec",9 "qtype": "exec",10 "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.",11 "answer": "\ndef net_revenue(rows):\n total = 0.0\n for r in rows:\n if r['returned']:\n continue\n if r['region'] == 'Nord':\n continue\n if r['units'] < 5:\n continue\n total += r['units'] * r['unit_price'] * (1 - r['discount_pct'] / 100.0)\n total = total * (1 + 5.0 / 100.0)\n return round(total, 1)\n",12 "answer_type": "exec",13 "tolerance": 0.0,14 "supporting_fact_ids": [15 "spec"16 ],17 "answer_position_frac": 0.02,18 "aliases": []19 }20 ],21 "facts": [22 {23 "fact_id": "spec",24 "entity": "net_revenue",25 "attribute": "rules",26 "value": "{\"thr_days\": 3, \"min_units\": 5, \"excl_region\": \"Nord\", \"rounding\": 1, \"tax\": 5.0}",27 "kind": "spec",28 "sentence": "Bug report BR-4863: 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 28 June 2031: (1) exclude returned rows; (2) exclude rows whose region is 'Nord'; (3) exclude rows with fewer than 5 units; (4) line revenue = units * unit_price * (1 - discount_pct/100); (5) apply a tax of 5.0 % on the sum; (6) return the result rounded to 1 decimals (Python round). The current implementation forgets rule (2) and applies no tax.",29 "char_start": 20,30 "char_end": 62431 }32 ],33 "hidden_tests": [34 {35 "input": [36 {37 "region": "Ouest",38 "product": "delta",39 "units": 29,40 "unit_price": 39.18,41 "discount_pct": 10,42 "returned": false,43 "shipped_days": 1344 },45 {46 "region": "Ouest",47 "product": "gamma",48 "units": 30,49 "unit_price": 60.69,50 "discount_pct": 0,51 "returned": false,52 "shipped_days": 353 },54 {55 "region": "Nord",56 "product": "beta",57 "units": 8,58 "unit_price": 60.78,59 "discount_pct": 25,60 "returned": false,61 "shipped_days": 862 },63 {64 "region": "Ouest",65 "product": "alpha",66 "units": 9,67 "unit_price": 42.41,68 "discount_pct": 5,69 "returned": false,70 "shipped_days": 171 }72 ],73 "expected": 3366.274 },75 {76 "input": [77 {78 "region": "Ouest",79 "product": "epsilon",80 "units": 16,81 "unit_price": 74.12,82 "discount_pct": 10,83 "returned": true,84 "shipped_days": 185 },86 {87 "region": "Ouest",88 "product": "gamma",89 "units": 30,90 "unit_price": 60.69,91 "discount_pct": 0,92 "returned": false,93 "shipped_days": 394 },95 {96 "region": "Ouest",97 "product": "gamma",98 "units": 30,99 "unit_price": 46.5,100 "discount_pct": 15,101 "returned": false,102 "shipped_days": 7103 },104 {105 "region": "Centre",106 "product": "epsilon",107 "units": 8,108 "unit_price": 49.85,109 "discount_pct": 0,110 "returned": false,111 "shipped_days": 3112 },113 {114 "region": "Centre",115 "product": "delta",116 "units": 10,117 "unit_price": 59.64,118 "discount_pct": 0,119 "returned": false,120 "shipped_days": 1121 },122 {123 "region": "Nord",124 "product": "epsilon",125 "units": 1,126 "unit_price": 54.41,127 "discount_pct": 5,128 "returned": false,129 "shipped_days": 9130 },131 {132 "region": "Est",133 "product": "beta",134 "units": 38,135 "unit_price": 66.15,136 "discount_pct": 25,137 "returned": false,138 "shipped_days": 10139 }140 ],141 "expected": 6181.3142 },143 {144 "input": [145 {146 "region": "Ouest",147 "product": "alpha",148 "units": 9,149 "unit_price": 42.41,150 "discount_pct": 5,151 "returned": false,152 "shipped_days": 1153 },154 {155 "region": "Ouest",156 "product": "epsilon",157 "units": 16,158 "unit_price": 74.12,159 "discount_pct": 10,160 "returned": true,161 "shipped_days": 1162 },163 {164 "region": "Nord",165 "product": "epsilon",166 "units": 1,167 "unit_price": 54.41,168 "discount_pct": 5,169 "returned": false,170 "shipped_days": 9171 },172 {173 "region": "Ouest",174 "product": "delta",175 "units": 29,176 "unit_price": 39.18,177 "discount_pct": 10,178 "returned": false,179 "shipped_days": 13180 },181 {182 "region": "Centre",183 "product": "epsilon",184 "units": 8,185 "unit_price": 49.85,186 "discount_pct": 0,187 "returned": false,188 "shipped_days": 3189 },190 {191 "region": "Ouest",192 "product": "gamma",193 "units": 30,194 "unit_price": 46.5,195 "discount_pct": 15,196 "returned": false,197 "shipped_days": 7198 },199 {200 "region": "Sud",201 "product": "alpha",202 "units": 6,203 "unit_price": 13.02,204 "discount_pct": 25,205 "returned": false,206 "shipped_days": 14207 },208 {209 "region": "Centre",210 "product": "beta",211 "units": 6,212 "unit_price": 14.6,213 "discount_pct": 15,214 "returned": false,215 "shipped_days": 4216 },217 {218 "region": "Est",219 "product": "beta",220 "units": 38,221 "unit_price": 66.15,222 "discount_pct": 25,223 "returned": false,224 "shipped_days": 10225 },226 {227 "region": "Centre",228 "product": "delta",229 "units": 10,230 "unit_price": 59.64,231 "discount_pct": 0,232 "returned": false,233 "shipped_days": 1234 },235 {236 "region": "Nord",237 "product": "beta",238 "units": 8,239 "unit_price": 60.78,240 "discount_pct": 25,241 "returned": false,242 "shipped_days": 8243 }244 ],245 "expected": 5863.7246 },247 {248 "input": [249 {250 "region": "Ouest",251 "product": "gamma",252 "units": 30,253 "unit_price": 46.5,254 "discount_pct": 15,255 "returned": false,256 "shipped_days": 7257 },258 {259 "region": "Centre",260 "product": "beta",261 "units": 6,262 "unit_price": 14.6,263 "discount_pct": 15,264 "returned": false,265 "shipped_days": 4266 },267 {268 "region": "Ouest",269 "product": "delta",270 "units": 29,271 "unit_price": 39.18,272 "discount_pct": 10,273 "returned": false,274 "shipped_days": 13275 },276 {277 "region": "Centre",278 "product": "delta",279 "units": 10,280 "unit_price": 59.64,281 "discount_pct": 0,282 "returned": false,283 "shipped_days": 1284 },285 {286 "region": "Sud",287 "product": "alpha",288 "units": 6,289 "unit_price": 13.02,290 "discount_pct": 25,291 "returned": false,292 "shipped_days": 14293 },294 {295 "region": "Ouest",296 "product": "alpha",297 "units": 9,298 "unit_price": 42.41,299 "discount_pct": 5,300 "returned": false,301 "shipped_days": 1302 },303 {304 "region": "Nord",305 "product": "epsilon",306 "units": 1,307 "unit_price": 54.41,308 "discount_pct": 5,309 "returned": false,310 "shipped_days": 9311 },312 {313 "region": "Ouest",314 "product": "gamma",315 "units": 30,316 "unit_price": 60.69,317 "discount_pct": 0,318 "returned": false,319 "shipped_days": 3320 },321 {322 "region": "Ouest",323 "product": "epsilon",324 "units": 16,325 "unit_price": 74.12,326 "discount_pct": 10,327 "returned": true,328 "shipped_days": 1329 },330 {331 "region": "Est",332 "product": "beta",333 "units": 38,334 "unit_price": 66.15,335 "discount_pct": 25,336 "returned": false,337 "shipped_days": 10338 },339 {340 "region": "Centre",341 "product": "epsilon",342 "units": 8,343 "unit_price": 49.85,344 "discount_pct": 0,345 "returned": false,346 "shipped_days": 3347 }348 ],349 "expected": 7775.4350 },351 {352 "input": [353 {354 "region": "Ouest",355 "product": "alpha",356 "units": 9,357 "unit_price": 42.41,358 "discount_pct": 5,359 "returned": false,360 "shipped_days": 1361 },362 {363 "region": "Est",364 "product": "beta",365 "units": 38,366 "unit_price": 66.15,367 "discount_pct": 25,368 "returned": false,369 "shipped_days": 10370 },371 {372 "region": "Ouest",373 "product": "gamma",374 "units": 30,375 "unit_price": 60.69,376 "discount_pct": 0,377 "returned": false,378 "shipped_days": 3379 },380 {381 "region": "Sud",382 "product": "alpha",383 "units": 6,384 "unit_price": 13.02,385 "discount_pct": 25,386 "returned": false,387 "shipped_days": 14388 }389 ],390 "expected": 4333.5391 }392 ]393}