{
  "title" : "Duplication",
  "timestamp" : "2026-01-18 17:39:51",
  "duplicates" : [ {
    "blockSize" : 11,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/executors/base.py",
        "extension" : "py",
        "linesOfCode" : 88,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 81,
      "endLine" : 91,
      "cleanedStartLine" : 46,
      "cleanedEndLine" : 56
    }, {
      "file" : {
        "relativePath" : "databao/executors/base.py",
        "extension" : "py",
        "linesOfCode" : 88,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 104,
      "endLine" : 114,
      "cleanedStartLine" : 68,
      "cleanedEndLine" : 78
    } ]
  }, {
    "blockSize" : 10,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/executors/lighthouse/executor.py",
        "extension" : "py",
        "linesOfCode" : 109,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 98,
      "endLine" : 107,
      "cleanedStartLine" : 61,
      "cleanedEndLine" : 70
    }, {
      "file" : {
        "relativePath" : "databao/executors/react_duckdb/executor.py",
        "extension" : "py",
        "linesOfCode" : 62,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 53,
      "endLine" : 62,
      "cleanedStartLine" : 26,
      "cleanedEndLine" : 35
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/visualizers/vega_chat.py",
        "extension" : "py",
        "linesOfCode" : 126,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 110,
      "startLine" : 86,
      "endLine" : 94,
      "cleanedStartLine" : 47,
      "cleanedEndLine" : 55
    }, {
      "file" : {
        "relativePath" : "databao/visualizers/vega_chat.py",
        "extension" : "py",
        "linesOfCode" : 126,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 110,
      "startLine" : 107,
      "endLine" : 115,
      "cleanedStartLine" : 63,
      "cleanedEndLine" : 71
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/executors/base.py",
        "extension" : "py",
        "linesOfCode" : 88,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 72,
      "endLine" : 79,
      "cleanedStartLine" : 37,
      "cleanedEndLine" : 44
    }, {
      "file" : {
        "relativePath" : "databao/executors/base.py",
        "extension" : "py",
        "linesOfCode" : 88,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 95,
      "endLine" : 102,
      "cleanedStartLine" : 59,
      "cleanedEndLine" : 66
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/executors/lighthouse/executor.py",
        "extension" : "py",
        "linesOfCode" : 109,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 69,
      "endLine" : 77,
      "cleanedStartLine" : 39,
      "cleanedEndLine" : 46
    }, {
      "file" : {
        "relativePath" : "databao/executors/react_duckdb/executor.py",
        "extension" : "py",
        "linesOfCode" : 62,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 43,
      "endLine" : 51,
      "cleanedStartLine" : 18,
      "cleanedEndLine" : 25
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "databao/executors/lighthouse/executor.py",
        "extension" : "py",
        "linesOfCode" : 109,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 58,
      "endLine" : 67,
      "cleanedStartLine" : 30,
      "cleanedEndLine" : 37
    }, {
      "file" : {
        "relativePath" : "databao/executors/react_duckdb/executor.py",
        "extension" : "py",
        "linesOfCode" : 62,
        "components" : [ "primary::databao" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 32,
      "endLine" : 41,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 16
    } ]
  } ],
  "overallDuplication" : null
}