From 7d021b27416bc304808836d2208ed608cad31b49 Mon Sep 17 00:00:00 2001 From: multipleof4 Date: Wed, 26 Nov 2025 18:02:27 -0800 Subject: [PATCH] Delete tests/6_csv_processor/outputs_gemini directory --- .../gemini-3-pro-preview TEMP_0.1.js | 20 --------------- .../gemini-3-pro-preview TEMP_0.2.js | 24 ------------------ .../gemini-3-pro-preview TEMP_0.3.js | 25 ------------------- .../gemini-3-pro-preview TEMP_0.4.js | 19 -------------- .../gemini-3-pro-preview TEMP_0.5.js | 21 ---------------- .../gemini-3-pro-preview TEMP_0.6.js | 19 -------------- .../gemini-3-pro-preview TEMP_0.7.js | 21 ---------------- .../gemini-3-pro-preview TEMP_0.8.js | 21 ---------------- .../gemini-3-pro-preview TEMP_0.9.js | 20 --------------- .../gemini-3-pro-preview TEMP_0.js | 13 ---------- .../gemini-3-pro-preview TEMP_1.1.js | 17 ------------- .../gemini-3-pro-preview TEMP_1.2.js | 20 --------------- .../gemini-3-pro-preview TEMP_1.3.js | 23 ----------------- .../gemini-3-pro-preview TEMP_1.4.js | 17 ------------- .../gemini-3-pro-preview TEMP_1.5.js | 19 -------------- .../gemini-3-pro-preview TEMP_1.6.js | 19 -------------- .../gemini-3-pro-preview TEMP_1.7.js | 18 ------------- .../gemini-3-pro-preview TEMP_1.8.js | 22 ---------------- .../gemini-3-pro-preview TEMP_1.9.js | 18 ------------- .../gemini-3-pro-preview TEMP_1.js | 22 ---------------- .../gemini-3-pro-preview TEMP_2.js | 16 ------------ 21 files changed, 414 deletions(-) delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.1.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.2.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.3.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.4.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.5.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.6.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.7.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.8.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.9.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.1.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.2.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.3.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.4.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.5.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.6.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.7.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.8.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.9.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.js delete mode 100644 tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_2.js diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.1.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.1.js deleted file mode 100644 index 56fe33d..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.1.js +++ /dev/null @@ -1,20 +0,0 @@ -const processCSV = async (csvString, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const { csvParse, rollup, sum, mean } = await import('https://esm.sh/d3@7'); - - const toNum = d => +d[aggregateColumn] || 0; - - const aggregators = { - sum: g => sum(g, toNum), - avg: g => mean(g, toNum), - count: g => g.length - }; - - const data = csvParse(csvString).filter(row => row[filterColumn] == filterValue); - const grouped = rollup(data, aggregators[operation], d => d[groupBy]); - - return Array.from(grouped, ([key, val]) => ({ - [groupBy]: key, - result: val - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.2.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.2.js deleted file mode 100644 index 665036e..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.2.js +++ /dev/null @@ -1,24 +0,0 @@ -const processCSV = async (csvString, config) => { - const { default: Papa } = await import('https://esm.sh/papaparse@5.4.1'); - const { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op } = config; - - const { data } = Papa.parse(csvString, { header: true, skipEmptyLines: true }); - - const groups = data.reduce((acc, row) => { - if (row[fc] == fv) { - const key = row[gb]; - const val = +row[ac] || 0; - - acc[key] ??= { sum: 0, count: 0 }; - acc[key].sum += val; - acc[key].count++; - } - return acc; - }, {}); - - return Object.entries(groups).map(([key, { sum, count }]) => ({ - [gb]: key, - result: op === 'count' ? count : op === 'sum' ? sum : sum / count - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.3.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.3.js deleted file mode 100644 index 4b13f3a..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.3.js +++ /dev/null @@ -1,25 +0,0 @@ -const processCSV = async (csvString, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const [{ default: { parse } }, { rollup, sum, mean }] = await Promise.all([ - import('https://esm.sh/papaparse@5.4.1'), - import('https://esm.sh/d3-array@3.2.4') - ]); - - const getNum = row => { - const val = parseFloat(row[aggregateColumn]); - return isNaN(val) ? 0 : val; - }; - - const rows = parse(csvString, { header: true, skipEmptyLines: true }).data - .filter(row => row[filterColumn] == filterValue); - - const grouped = rollup( - rows, - group => operation === 'count' ? group.length : - operation === 'sum' ? sum(group, getNum) : - mean(group, getNum), - row => row[groupBy] - ); - - return Array.from(grouped, ([key, result]) => ({ [groupBy]: key, result })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.4.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.4.js deleted file mode 100644 index 6afa630..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.4.js +++ /dev/null @@ -1,19 +0,0 @@ -const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { csvParse } = await import('https://esm.run/d3-dsv') - const groups = new Map() - - csvParse(csv).forEach(row => { - if (row[fc] == fv) { - const key = row[gb] - const val = +row[ac] || 0 - const curr = groups.get(key) || { s: 0, n: 0 } - groups.set(key, { s: curr.s + val, n: curr.n + 1 }) - } - }) - - return [...groups].map(([key, { s, n }]) => ({ - [gb]: key, - result: op === 'count' ? n : op === 'sum' ? s : s / n - })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.5.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.5.js deleted file mode 100644 index 34f64ea..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.5.js +++ /dev/null @@ -1,21 +0,0 @@ -const processCSV = async (csvStr, { filterColumn: fCol, filterValue: fVal, groupBy: gBy, aggregateColumn: aggCol, operation: op }) => { - const { default: Papa } = await import('https://cdn.jsdelivr.net/npm/papaparse@5.4.1/+esm') - const { data } = Papa.parse(csvStr, { header: true, skipEmptyLines: true }) - - const groups = data.reduce((acc, row) => { - if (row[fCol] == fVal) { - const key = row[gBy] - const val = +row[aggCol] || 0 - acc[key] = acc[key] || { s: 0, c: 0 } - acc[key].s += val - acc[key].c++ - } - return acc - }, {}) - - return Object.entries(groups).map(([key, { s, c }]) => ({ - [gBy]: key, - result: op === 'count' ? c : op === 'avg' ? s / c : s - })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.6.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.6.js deleted file mode 100644 index 884b38e..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.6.js +++ /dev/null @@ -1,19 +0,0 @@ -const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const [{ csvParse }, { rollup, sum, mean }] = await Promise.all([ - import('https://esm.sh/d3-dsv@3'), - import('https://esm.sh/d3-array@3') - ]); - - return Array.from( - rollup( - csvParse(csv).filter(d => d[fc] == fv), - g => { - const v = g.map(d => +d[ac] || 0); - return op === 'count' ? v.length : op === 'sum' ? sum(v) : mean(v); - }, - d => d[gb] - ), - ([k, v]) => ({ [gb]: k, result: v }) - ); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.7.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.7.js deleted file mode 100644 index 9ae151f..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.7.js +++ /dev/null @@ -1,21 +0,0 @@ -const processCSV = async (csv, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const { parse } = await import('https://cdn.jsdelivr.net/npm/papaparse@5.4.1/+esm'); - const { data } = parse(csv, { header: true, skipEmptyLines: true }); - - const groups = data.reduce((acc, row) => { - if (row[filterColumn] == filterValue) { - const key = row[groupBy]; - const val = +row[aggregateColumn] || 0; - acc[key] ||= { sum: 0, count: 0 }; - acc[key].sum += val; - acc[key].count++; - } - return acc; - }, {}); - - return Object.entries(groups).map(([key, { sum, count }]) => ({ - [groupBy]: key, - result: operation === 'count' ? count : operation === 'sum' ? sum : sum / count - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.8.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.8.js deleted file mode 100644 index 047bbca..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.8.js +++ /dev/null @@ -1,21 +0,0 @@ -const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { default: Papa } = await import('https://esm.sh/papaparse@5.4.1'); - const { data } = Papa.parse(csv, { header: true, skipEmptyLines: true }); - - const groups = data.reduce((acc, row) => { - if (row[fc] == fv) { - const key = row[gb]; - const val = +row[ac] || 0; - acc[key] = acc[key] || { s: 0, c: 0 }; - acc[key].s += val; - acc[key].c++; - } - return acc; - }, {}); - - return Object.entries(groups).map(([key, { s, c }]) => ({ - [gb]: key, - result: op === 'count' ? c : op === 'sum' ? s : s / c - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.9.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.9.js deleted file mode 100644 index 0d58ba8..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.9.js +++ /dev/null @@ -1,20 +0,0 @@ -const processCSV = async (csv, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const { parse } = await import('https://cdn.jsdelivr.net/npm/papaparse@5.4.1/+esm'); - const groups = {}; - - parse(csv, { header: true, skipEmptyLines: true }).data.forEach(row => { - if (row[filterColumn] == filterValue) { - const key = row[groupBy]; - const val = +row[aggregateColumn] || 0; - const acc = groups[key] ??= { sum: 0, count: 0 }; - acc.sum += val; - acc.count++; - } - }); - - return Object.entries(groups).map(([key, { sum, count }]) => ({ - [groupBy]: key, - result: operation === 'count' ? count : operation === 'avg' ? sum / count : sum - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.js deleted file mode 100644 index 0ac5140..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_0.js +++ /dev/null @@ -1,13 +0,0 @@ -export const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { csvParse, rollups, sum } = await import('https://cdn.jsdelivr.net/npm/d3@7/+esm') - - return rollups( - csvParse(csv).filter(d => d[fc] == fv), - g => { - const s = sum(g, d => +d[ac] || 0) - return op === 'count' ? g.length : op === 'sum' ? s : s / g.length - }, - d => d[gb] - ).map(([k, v]) => ({ [gb]: k, result: v })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.1.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.1.js deleted file mode 100644 index 174a196..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.1.js +++ /dev/null @@ -1,17 +0,0 @@ -const processCSV = async (csv, { filterColumn: fCol, filterValue: fVal, groupBy: gBy, aggregateColumn: aCol, operation: op }) => { - const { csvParse, rollup, sum } = await import('https://cdn.jsdelivr.net/npm/d3@7/+esm') - - return Array.from( - rollup( - csvParse(csv).filter(r => r[fCol] == fVal), - g => { - if (op === 'count') return g.length - const nums = g.map(r => +r[aCol] || 0), total = sum(nums) - return op === 'sum' ? total : total / nums.length - }, - d => d[gBy] - ), - ([k, v]) => ({ [gBy]: k, result: v }) - ) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.2.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.2.js deleted file mode 100644 index 3be6890..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.2.js +++ /dev/null @@ -1,20 +0,0 @@ -const processCSV = async (csvData, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const { parse } = await import('https://esm.sh/papaparse'); - const groups = {}; - - parse(csvData, { header: true, skipEmptyLines: true }).data.forEach(row => { - if (row[filterColumn] == filterValue) { - const key = row[groupBy]; - const val = +row[aggregateColumn] || 0; - const rec = groups[key] ||= { sum: 0, count: 0 }; - rec.sum += val; - rec.count++; - } - }); - - return Object.entries(groups).map(([key, { sum, count }]) => ({ - [groupBy]: key, - result: operation === 'count' ? count : operation === 'sum' ? sum : sum / count - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.3.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.3.js deleted file mode 100644 index 18eb2c1..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.3.js +++ /dev/null @@ -1,23 +0,0 @@ -export const processCSV = async (csv, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => { - const [{ parse }, { default: _ }] = await Promise.all([ - import('https://esm.sh/papaparse@5.4.1'), - import('https://esm.sh/lodash@4.17.21') - ]); - - const rows = _.filter(parse(csv, { header: true, skipEmptyLines: true }).data, r => r[filterColumn] == filterValue); - - return _.map(_.groupBy(rows, groupBy), (group, key) => { - const nums = _.map(group, r => { - const n = parseFloat(r[aggregateColumn]); - return isNaN(n) ? 0 : n; - }); - - const sum = _.sum(nums); - const result = operation === 'count' ? group.length : - operation === 'sum' ? sum : - (sum / (nums.length || 1)); - - return { [groupBy]: key, result }; - }); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.4.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.4.js deleted file mode 100644 index a8e2513..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.4.js +++ /dev/null @@ -1,17 +0,0 @@ -export const processCSV = async (str, { - filterColumn: fc, - filterValue: fv, - groupBy: gb, - aggregateColumn: ac, - operation: op -}) => { - const { csvParse, rollups, sum, mean } = await import('https://cdn.jsdelivr.net/npm/d3@7/+esm') - const val = d => +d[ac] || 0 - - return rollups( - csvParse(str).filter(d => d[fc] == fv), - g => op === 'count' ? g.length : op === 'sum' ? sum(g, val) : mean(g, val) || 0, - d => d[gb] - ).map(([k, r]) => ({ [gb]: k, result: r })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.5.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.5.js deleted file mode 100644 index 39a3527..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.5.js +++ /dev/null @@ -1,19 +0,0 @@ -const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { csvParse } = await import('https://esm.sh/d3-dsv@3'); - - const groups = csvParse(csv).reduce((acc, row) => { - if (row[fc] == fv) { - const k = row[gb], v = +row[ac] || 0; - acc[k] ??= { s: 0, c: 0 }; - acc[k].s += v; - acc[k].c++; - } - return acc; - }, {}); - - return Object.entries(groups).map(([k, { s, c }]) => ({ - [gb]: k, - result: op === 'count' ? c : op === 'avg' ? s / c : s - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.6.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.6.js deleted file mode 100644 index d47fd3b..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.6.js +++ /dev/null @@ -1,19 +0,0 @@ -const processCSV = async (csvStr, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { parse } = await import('https://esm.sh/papaparse@5.4.1'); - const acc = {}; - - parse(csvStr, { header: true, skipEmptyLines: true }).data.forEach(row => { - if (row[fc] == fv) { - const k = row[gb], v = +row[ac] || 0; - const curr = acc[k] ||= { s: 0, c: 0 }; - curr.s += v; - curr.c++; - } - }); - - return Object.entries(acc).map(([key, { s, c }]) => ({ - [gb]: key, - result: op === 'count' ? c : op === 'avg' ? s / c : s - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.7.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.7.js deleted file mode 100644 index 4fa926d..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.7.js +++ /dev/null @@ -1,18 +0,0 @@ -export const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const [{ parse }, { groupBy, map }] = await Promise.all([ - import('https://esm.sh/papaparse@5.4.1'), - import('https://esm.sh/lodash-es@4.17.21') - ]); - - return map(groupBy( - parse(csv, { header: true, skipEmptyLines: true }).data.filter(r => r[fc] == fv), - gb - ), (rows, key) => { - const sum = rows.reduce((a, r) => a + (+r[ac] || 0), 0); - return { - [gb]: key, - result: op === 'count' ? rows.length : op === 'avg' ? sum / rows.length : sum - }; - }); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.8.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.8.js deleted file mode 100644 index 11063d4..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.8.js +++ /dev/null @@ -1,22 +0,0 @@ -const processCSV = async (csvString, config) => { - const { filterColumn: key, filterValue: val, groupBy: group, aggregateColumn: target, operation: op } = config - - const [dsv, d3] = await Promise.all([ - import('https://esm.sh/d3-dsv'), - import('https://esm.sh/d3-array') - ]) - - const getVal = d => +d[target] || 0 - const rows = dsv.csvParse(csvString).filter(r => r[key] == val) - - const aggs = d3.rollup( - rows, - v => op === 'count' ? v.length : - op === 'sum' ? d3.sum(v, getVal) : - d3.mean(v, getVal), - d => d[group] - ) - - return Array.from(aggs, ([gVal, result]) => ({ [group]: gVal, result })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.9.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.9.js deleted file mode 100644 index 8246cf2..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.9.js +++ /dev/null @@ -1,18 +0,0 @@ -const processCSV = async (csv, { filterColumn: fCol, filterValue: fVal, groupBy: gBy, aggregateColumn: aggCol, operation: op }) => { - const { parse } = await import('https://cdn.jsdelivr.net/npm/papaparse@5.4.1/+esm') - const groups = new Map() - - parse(csv, { header: true, skipEmptyLines: true }).data.forEach(row => { - if (row[fCol] == fVal) { - const key = row[gBy], val = +row[aggCol] || 0 - const cur = groups.get(key) || { sum: 0, count: 0 } - groups.set(key, { sum: cur.sum + val, count: cur.count + 1 }) - } - }) - - return Array.from(groups, ([key, { sum, count }]) => ({ - [gBy]: key, - result: op === 'avg' ? sum / count : op === 'count' ? count : sum - })) -} -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.js deleted file mode 100644 index cd668cb..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_1.js +++ /dev/null @@ -1,22 +0,0 @@ -export const processCSV = async (csv, { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op }) => { - const { parse } = await import('https://esm.sh/papaparse@5.4.1'); - const { data } = parse(csv, { header: true, skipEmptyLines: true }); - const acc = new Map(); - - for (const row of data) { - if (row[fc] == fv) { - const key = row[gb]; - const val = +row[ac] || 0; - const rec = acc.get(key) || { sum: 0, count: 0 }; - rec.sum += val; - rec.count += 1; - acc.set(key, rec); - } - } - - return Array.from(acc, ([key, { sum, count }]) => ({ - [gb]: key, - result: op === 'count' ? count : op === 'sum' ? sum : sum / count - })); -}; -export default processCSV; \ No newline at end of file diff --git a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_2.js b/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_2.js deleted file mode 100644 index 0e329b5..0000000 --- a/tests/6_csv_processor/outputs_gemini/gemini-3-pro-preview TEMP_2.js +++ /dev/null @@ -1,16 +0,0 @@ -const processCSV = async (csvString, config) => { - const [{ csvParse }, { rollups, sum }] = await Promise.all([ - import('https://esm.sh/d3-dsv'), - import('https://esm.sh/d3-array') - ]); - - const { filterColumn: fc, filterValue: fv, groupBy: gb, aggregateColumn: ac, operation: op } = config; - const getVal = d => +d[ac] || 0; - - return rollups( - csvParse(csvString).filter(d => d[fc] == fv), - g => op === 'count' ? g.length : (op === 'avg' ? sum(g, getVal) / g.length : sum(g, getVal)), - d => d[gb] - ).map(([k, v]) => ({ [gb]: k, result: v })); -}; -export default processCSV; \ No newline at end of file