[{"data":1,"prerenderedAt":1122},["ShallowReactive",2],{"navigation_docs":3,"-reference-reporters-codeclimate":239,"-reference-reporters-codeclimate-surround":1117},[4,29,94,114,184],{"title":5,"icon":6,"path":7,"stem":8,"children":9},"Start",false,"\u002Fstart","1.start",[10,14,19,24],{"title":11,"path":7,"stem":12,"icon":13},"What jscpd finds","1.start\u002Findex","i-lucide-house",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fstart\u002Finstallation","1.start\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Quickstart","\u002Fstart\u002Fquickstart","1.start\u002F3.quickstart","i-lucide-rocket",{"title":25,"path":26,"stem":27,"icon":28},"Configuration basics","\u002Fstart\u002Fconfiguration","1.start\u002F4.configuration","i-lucide-settings-2",{"title":30,"icon":6,"path":31,"stem":32,"children":33,"page":6},"Guides","\u002Fguides","2.guides",[34,39,44,49,54,59,64,69,74,79,84,89],{"title":35,"path":36,"stem":37,"icon":38},"Use jscpd in CI","\u002Fguides\u002Fci","2.guides\u002F01.ci","i-lucide-github",{"title":40,"path":41,"stem":42,"icon":43},"Pre-commit hooks","\u002Fguides\u002Fpre-commit","2.guides\u002F02.pre-commit","i-lucide-git-commit",{"title":45,"path":46,"stem":47,"icon":48},"Fail only on new duplication","\u002Fguides\u002Fbaseline","2.guides\u002F03.baseline","i-lucide-git-compare",{"title":50,"path":51,"stem":52,"icon":53},"Monorepos","\u002Fguides\u002Fmonorepos","2.guides\u002F04.monorepos","i-lucide-folder-tree",{"title":55,"path":56,"stem":57,"icon":58},"Cross-format detection","\u002Fguides\u002Fcross-format","2.guides\u002F05.cross-format","i-lucide-layers",{"title":60,"path":61,"stem":62,"icon":63},"Agents","\u002Fguides\u002Fagents","2.guides\u002F06.agents","i-lucide-cpu",{"title":65,"path":66,"stem":67,"icon":68},"Editors","\u002Fguides\u002Feditors","2.guides\u002F07.editors","i-lucide-code",{"title":70,"path":71,"stem":72,"icon":73},"Duplication over git history","\u002Fguides\u002Fhistory","2.guides\u002F08.history","i-lucide-chart-no-axes-combined",{"title":75,"path":76,"stem":77,"icon":78},"Dashboard and health score","\u002Fguides\u002Fdashboard","2.guides\u002F09.dashboard","i-lucide-layout-dashboard",{"title":80,"path":81,"stem":82,"icon":83},"Dead code","\u002Fguides\u002Fdead-code","2.guides\u002F10.dead-code","i-lucide-ghost",{"title":85,"path":86,"stem":87,"icon":88},"Comparing two codebases","\u002Fguides\u002Fcompare","2.guides\u002F11.compare","i-lucide-git-compare-arrows",{"title":90,"path":91,"stem":92,"icon":93},"Semantic clones","\u002Fguides\u002Fsemantic-clones","2.guides\u002F12.semantic-clones","i-lucide-brain-circuit",{"title":95,"icon":6,"path":96,"stem":97,"children":98,"page":6},"Concepts","\u002Fconcepts","3.concepts",[99,104,109],{"title":100,"path":101,"stem":102,"icon":103},"Types of code clones","\u002Fconcepts\u002Fclone-types","3.concepts\u002F1.clone-types","i-lucide-copy",{"title":105,"path":106,"stem":107,"icon":108},"How detection works","\u002Fconcepts\u002Fhow-detection-works","3.concepts\u002F2.how-detection-works","i-lucide-scan-search",{"title":110,"path":111,"stem":112,"icon":113},"The health score","\u002Fconcepts\u002Fhealth-score","3.concepts\u002F3.health-score","i-lucide-heart-pulse",{"title":115,"icon":6,"path":116,"stem":117,"children":118,"page":6},"Reference","\u002Freference","4.reference",[119,124,129,134,171,176,180],{"title":120,"path":121,"stem":122,"icon":123},"CLI options","\u002Freference\u002Fcli","4.reference\u002F1.cli","i-lucide-terminal",{"title":125,"path":126,"stem":127,"icon":128},"The config file","\u002Freference\u002Fconfig-file","4.reference\u002F2.config-file","i-lucide-settings",{"title":130,"path":131,"stem":132,"icon":133},"Exit codes","\u002Freference\u002Fexit-codes","4.reference\u002F3.exit-codes","i-lucide-log-out",{"title":135,"icon":6,"path":136,"stem":137,"children":138},"Reporters","\u002Freference\u002Freporters","4.reference\u002F4.reporters\u002Findex",[139,141,146,151,156,161,166],{"title":135,"path":136,"stem":137,"icon":140},"i-lucide-file-chart-column",{"title":142,"path":143,"stem":144,"icon":145},"HTML reporter","\u002Freference\u002Freporters\u002Fhtml","4.reference\u002F4.reporters\u002F2.html","i-lucide-file-code",{"title":147,"path":148,"stem":149,"icon":150},"JSON reporter","\u002Freference\u002Freporters\u002Fjson","4.reference\u002F4.reporters\u002F3.json","i-lucide-braces",{"title":152,"path":153,"stem":154,"icon":155},"Badge reporter","\u002Freference\u002Freporters\u002Fbadge","4.reference\u002F4.reporters\u002F4.badge","i-lucide-award",{"title":157,"path":158,"stem":159,"icon":160},"SARIF reporter","\u002Freference\u002Freporters\u002Fsarif","4.reference\u002F4.reporters\u002F5.sarif","i-lucide-shield-check",{"title":162,"path":163,"stem":164,"icon":165},"CodeClimate reporter","\u002Freference\u002Freporters\u002Fcodeclimate","4.reference\u002F4.reporters\u002F6.codeclimate","i-lucide-flag-triangle-right",{"title":167,"path":168,"stem":169,"icon":170},"OpenMetrics reporter","\u002Freference\u002Freporters\u002Fopenmetrics","4.reference\u002F4.reporters\u002F7.openmetrics","i-lucide-activity",{"title":172,"path":173,"stem":174,"icon":175},"Supported formats","\u002Freference\u002Fsupported-formats","4.reference\u002F5.supported-formats","i-lucide-languages",{"title":177,"path":178,"stem":179,"icon":38},"GitHub Action","\u002Freference\u002Fgithub-action","4.reference\u002F6.github-action",{"title":181,"path":182,"stem":183,"icon":68},"Rust crates","\u002Freference\u002Frust-crates","4.reference\u002F7.rust-crates",{"title":185,"icon":6,"path":186,"stem":187,"children":188,"page":6},"Project","\u002Fproject","5.project",[189,194,199,204,229,234],{"title":190,"path":191,"stem":192,"icon":193},"Changelog","\u002Fproject\u002Fchangelog","5.project\u002F1.changelog","i-lucide-scroll-text",{"title":195,"path":196,"stem":197,"icon":198},"Migrating from v4 to v5","\u002Fproject\u002Fmigration","5.project\u002F2.migration","i-lucide-arrow-right-left",{"title":200,"path":201,"stem":202,"icon":203},"jscpd v4 (TypeScript)","\u002Fproject\u002Fv4","5.project\u002F3.v4","i-simple-icons-typescript",{"title":205,"icon":6,"path":206,"stem":207,"children":208},"Benchmarks","\u002Fproject\u002Fbenchmarks","5.project\u002F4.benchmarks\u002Findex",[209,211,216,220,225],{"title":205,"path":206,"stem":207,"icon":210},"i-lucide-gauge",{"title":212,"path":213,"stem":214,"icon":215},"Detection Speed","\u002Fproject\u002Fbenchmarks\u002Fdetection-speed","5.project\u002F4.benchmarks\u002F2.detection-speed","i-lucide-zap",{"title":217,"path":218,"stem":219,"icon":58},"Multi-Format Detection","\u002Fproject\u002Fbenchmarks\u002Fcross-format","5.project\u002F4.benchmarks\u002F3.cross-format",{"title":221,"path":222,"stem":223,"icon":224},"AI Token Efficiency","\u002Fproject\u002Fbenchmarks\u002Fai-token-efficiency","5.project\u002F4.benchmarks\u002F4.ai-token-efficiency","i-lucide-sparkles",{"title":226,"path":227,"stem":228,"icon":93},"Embedding Models","\u002Fproject\u002Fbenchmarks\u002Fembedding-models","5.project\u002F4.benchmarks\u002F5.embedding-models",{"title":230,"path":231,"stem":232,"icon":233},"Research","\u002Fproject\u002Fresearch","5.project\u002F5.research","i-lucide-graduation-cap",{"title":235,"path":236,"stem":237,"icon":238},"Articles","\u002Fproject\u002Farticles","5.project\u002F6.articles","i-lucide-newspaper",{"id":240,"title":162,"body":241,"description":1110,"extension":1111,"links":1112,"meta":1113,"navigation":1114,"path":163,"seo":1115,"stem":164,"__hash__":1116},"docs\u002F4.reference\u002F4.reporters\u002F6.codeclimate.md",{"type":242,"value":243,"toc":1102},"minimark",[244,261,266,301,309,389,393,403,724,821,824,828,835,934,937,941,987,994,998,1070,1074,1098],[245,246,247,251,252,255,256,260],"p",{},[248,249,250],"code",{},"-r codeclimate"," (alias ",[248,253,254],{},"gitlab",") writes the issue format GitLab reads for its Code Quality widget: each clone becomes an issue at each of its two locations, with a fingerprint that stays the same across pipelines, so a merge request lists which duplication it adds and which it removes. GitLab takes ",[257,258,259],"a",{"href":158},"SARIF"," as security findings only; this reporter is how clones reach a merge request as quality issues. Available since jscpd 5.1.0.",[262,263,265],"h2",{"id":264},"run-it","Run it",[267,268,274],"pre",{"className":269,"code":270,"filename":271,"language":272,"meta":273,"style":273},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","jscpd . -r codeclimate --output report\n","Terminal","bash","",[248,275,276],{"__ignoreMap":273},[277,278,281,285,289,292,295,298],"span",{"class":279,"line":280},"line",1,[277,282,284],{"class":283},"sBMFI","jscpd",[277,286,288],{"class":287},"sfazB"," .",[277,290,291],{"class":287}," -r",[277,293,294],{"class":287}," codeclimate",[277,296,297],{"class":287}," --output",[277,299,300],{"class":287}," report\n",[267,302,307],{"className":303,"code":305,"language":306,"meta":273},[304],"language-text","CodeClimate report saved to report\u002Fgl-code-quality-report.json\n","text",[248,308,305],{"__ignoreMap":273},[267,310,315],{"className":311,"code":312,"filename":313,"language":314,"meta":273,"style":273},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"reporters\": [\"console\", \"codeclimate\"],\n  \"output\": \"report\"\n}\n",".jscpd.json","json",[248,316,317,323,363,383],{"__ignoreMap":273},[277,318,319],{"class":279,"line":280},[277,320,322],{"class":321},"sMK4o","{\n",[277,324,326,329,333,336,339,342,344,347,349,352,355,358,360],{"class":279,"line":325},2,[277,327,328],{"class":321},"  \"",[277,330,332],{"class":331},"spNyl","reporters",[277,334,335],{"class":321},"\"",[277,337,338],{"class":321},":",[277,340,341],{"class":321}," [",[277,343,335],{"class":321},[277,345,346],{"class":287},"console",[277,348,335],{"class":321},[277,350,351],{"class":321},",",[277,353,354],{"class":321}," \"",[277,356,357],{"class":287},"codeclimate",[277,359,335],{"class":321},[277,361,362],{"class":321},"],\n",[277,364,366,368,371,373,375,377,380],{"class":279,"line":365},3,[277,367,328],{"class":321},[277,369,370],{"class":331},"output",[277,372,335],{"class":321},[277,374,338],{"class":321},[277,376,354],{"class":321},[277,378,379],{"class":287},"report",[277,381,382],{"class":321},"\"\n",[277,384,386],{"class":279,"line":385},4,[277,387,388],{"class":321},"}\n",[262,390,392],{"id":391},"the-output","The output",[245,394,395,396,399,400,338],{},"The file is a JSON array of issues. One of them, from the repository's ",[248,397,398],{},"fixtures\u002Fmcp-demo"," folder scanned with ",[248,401,402],{},"--ignore-identifiers --ignore-literals --max-gap-lines 1",[267,404,407],{"className":311,"code":405,"filename":406,"language":314,"meta":273,"style":273},"{\n  \"type\": \"issue\",\n  \"check_name\": \"jscpd\u002Fsimilar-code\",\n  \"description\": \"Duplicated code block (197 tokens), duplicated at src\u002Fprint\u002Finvoice.js:1\",\n  \"categories\": [\"Duplication\"],\n  \"severity\": \"minor\",\n  \"fingerprint\": \"4b46d31b85a7ff81\",\n  \"location\": {\n    \"path\": \"src\u002Finvoice.js\",\n    \"lines\": { \"begin\": 1, \"end\": 12 }\n  },\n  \"other_locations\": [\n    {\n      \"path\": \"src\u002Fprint\u002Finvoice.js\",\n      \"lines\": { \"begin\": 1, \"end\": 13 }\n    }\n  ]\n}\n","report\u002Fgl-code-quality-report.json",[248,408,409,413,434,454,474,497,518,539,554,576,621,627,642,648,669,707,713,719],{"__ignoreMap":273},[277,410,411],{"class":279,"line":280},[277,412,322],{"class":321},[277,414,415,417,420,422,424,426,429,431],{"class":279,"line":325},[277,416,328],{"class":321},[277,418,419],{"class":331},"type",[277,421,335],{"class":321},[277,423,338],{"class":321},[277,425,354],{"class":321},[277,427,428],{"class":287},"issue",[277,430,335],{"class":321},[277,432,433],{"class":321},",\n",[277,435,436,438,441,443,445,447,450,452],{"class":279,"line":365},[277,437,328],{"class":321},[277,439,440],{"class":331},"check_name",[277,442,335],{"class":321},[277,444,338],{"class":321},[277,446,354],{"class":321},[277,448,449],{"class":287},"jscpd\u002Fsimilar-code",[277,451,335],{"class":321},[277,453,433],{"class":321},[277,455,456,458,461,463,465,467,470,472],{"class":279,"line":385},[277,457,328],{"class":321},[277,459,460],{"class":331},"description",[277,462,335],{"class":321},[277,464,338],{"class":321},[277,466,354],{"class":321},[277,468,469],{"class":287},"Duplicated code block (197 tokens), duplicated at src\u002Fprint\u002Finvoice.js:1",[277,471,335],{"class":321},[277,473,433],{"class":321},[277,475,477,479,482,484,486,488,490,493,495],{"class":279,"line":476},5,[277,478,328],{"class":321},[277,480,481],{"class":331},"categories",[277,483,335],{"class":321},[277,485,338],{"class":321},[277,487,341],{"class":321},[277,489,335],{"class":321},[277,491,492],{"class":287},"Duplication",[277,494,335],{"class":321},[277,496,362],{"class":321},[277,498,500,502,505,507,509,511,514,516],{"class":279,"line":499},6,[277,501,328],{"class":321},[277,503,504],{"class":331},"severity",[277,506,335],{"class":321},[277,508,338],{"class":321},[277,510,354],{"class":321},[277,512,513],{"class":287},"minor",[277,515,335],{"class":321},[277,517,433],{"class":321},[277,519,521,523,526,528,530,532,535,537],{"class":279,"line":520},7,[277,522,328],{"class":321},[277,524,525],{"class":331},"fingerprint",[277,527,335],{"class":321},[277,529,338],{"class":321},[277,531,354],{"class":321},[277,533,534],{"class":287},"4b46d31b85a7ff81",[277,536,335],{"class":321},[277,538,433],{"class":321},[277,540,542,544,547,549,551],{"class":279,"line":541},8,[277,543,328],{"class":321},[277,545,546],{"class":331},"location",[277,548,335],{"class":321},[277,550,338],{"class":321},[277,552,553],{"class":321}," {\n",[277,555,557,560,563,565,567,569,572,574],{"class":279,"line":556},9,[277,558,559],{"class":321},"    \"",[277,561,562],{"class":283},"path",[277,564,335],{"class":321},[277,566,338],{"class":321},[277,568,354],{"class":321},[277,570,571],{"class":287},"src\u002Finvoice.js",[277,573,335],{"class":321},[277,575,433],{"class":321},[277,577,579,581,584,586,588,591,593,597,599,601,604,606,608,611,613,615,618],{"class":279,"line":578},10,[277,580,559],{"class":321},[277,582,583],{"class":283},"lines",[277,585,335],{"class":321},[277,587,338],{"class":321},[277,589,590],{"class":321}," {",[277,592,354],{"class":321},[277,594,596],{"class":595},"sbssI","begin",[277,598,335],{"class":321},[277,600,338],{"class":321},[277,602,603],{"class":595}," 1",[277,605,351],{"class":321},[277,607,354],{"class":321},[277,609,610],{"class":595},"end",[277,612,335],{"class":321},[277,614,338],{"class":321},[277,616,617],{"class":595}," 12",[277,619,620],{"class":321}," }\n",[277,622,624],{"class":279,"line":623},11,[277,625,626],{"class":321},"  },\n",[277,628,630,632,635,637,639],{"class":279,"line":629},12,[277,631,328],{"class":321},[277,633,634],{"class":331},"other_locations",[277,636,335],{"class":321},[277,638,338],{"class":321},[277,640,641],{"class":321}," [\n",[277,643,645],{"class":279,"line":644},13,[277,646,647],{"class":321},"    {\n",[277,649,651,654,656,658,660,662,665,667],{"class":279,"line":650},14,[277,652,653],{"class":321},"      \"",[277,655,562],{"class":283},[277,657,335],{"class":321},[277,659,338],{"class":321},[277,661,354],{"class":321},[277,663,664],{"class":287},"src\u002Fprint\u002Finvoice.js",[277,666,335],{"class":321},[277,668,433],{"class":321},[277,670,672,674,676,678,680,682,684,686,688,690,692,694,696,698,700,702,705],{"class":279,"line":671},15,[277,673,653],{"class":321},[277,675,583],{"class":283},[277,677,335],{"class":321},[277,679,338],{"class":321},[277,681,590],{"class":321},[277,683,354],{"class":321},[277,685,596],{"class":595},[277,687,335],{"class":321},[277,689,338],{"class":321},[277,691,603],{"class":595},[277,693,351],{"class":321},[277,695,354],{"class":321},[277,697,610],{"class":595},[277,699,335],{"class":321},[277,701,338],{"class":321},[277,703,704],{"class":595}," 13",[277,706,620],{"class":321},[277,708,710],{"class":279,"line":709},16,[277,711,712],{"class":321},"    }\n",[277,714,716],{"class":279,"line":715},17,[277,717,718],{"class":321},"  ]\n",[277,720,722],{"class":279,"line":721},18,[277,723,388],{"class":321},[725,726,727,740],"table",{},[728,729,730],"thead",{},[731,732,733,737],"tr",{},[734,735,736],"th",{},"Field",[734,738,739],{},"Meaning",[741,742,743,770,779,794,803,812],"tbody",{},[731,744,745,750],{},[746,747,748],"td",{},[248,749,440],{},[746,751,752,753,756,757,756,760,756,762,765,766,769],{},"The rule id of the clone's kind, the same as in SARIF: ",[248,754,755],{},"jscpd\u002Fduplicate-code",", ",[248,758,759],{},"jscpd\u002Frenamed-code",[248,761,449],{},[248,763,764],{},"jscpd\u002Fsimilar-function"," (5.4.0+) or ",[248,767,768],{},"jscpd\u002Fsemantic-code"," (5.3.3+)",[731,771,772,776],{},[746,773,774],{},[248,775,460],{},[746,777,778],{},"The token count and the other copy's location",[731,780,781,785],{},[746,782,783],{},[248,784,504],{},[746,786,787,789,790,793],{},[248,788,513],{},", or ",[248,791,792],{},"major"," under a gate (below)",[731,795,796,800],{},[746,797,798],{},[248,799,525],{},[746,801,802],{},"A hash of the pair's content, the path and the start line, so GitLab tells an existing issue from a new one across pipelines, and a file that duplicates itself gets two distinct issues",[731,804,805,809],{},[746,806,807],{},[248,808,546],{},[746,810,811],{},"The copy this issue is anchored at: a path relative to the scanned directory and a line range",[731,813,814,818],{},[746,815,816],{},[248,817,634],{},[746,819,820],{},"The other copy; part of the CodeClimate specification, ignored by GitLab, kept for other consumers",[245,822,823],{},"Every clone yields two issues, one anchored at each copy, so the widget annotates the duplication whichever side a merge request touches.",[262,825,827],{"id":826},"where-it-shows-up","Where it shows up",[245,829,830,831,834],{},"Declare the file as a ",[248,832,833],{},"codequality"," report artifact. The Code Quality widget is available in every GitLab tier.",[267,836,841],{"className":837,"code":838,"filename":839,"language":840,"meta":273,"style":273},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","jscpd:\n  stage: test\n  image: node:22\n  before_script:\n    - npm install -g jscpd@5\n  script:\n    - jscpd . -r console,codeclimate --output report\n  artifacts:\n    when: always\n    reports:\n      codequality: report\u002Fgl-code-quality-report.json\n",".gitlab-ci.yml","yaml",[248,842,843,851,861,871,878,886,893,900,907,917,924],{"__ignoreMap":273},[277,844,845,848],{"class":279,"line":280},[277,846,284],{"class":847},"swJcz",[277,849,850],{"class":321},":\n",[277,852,853,856,858],{"class":279,"line":325},[277,854,855],{"class":847},"  stage",[277,857,338],{"class":321},[277,859,860],{"class":287}," test\n",[277,862,863,866,868],{"class":279,"line":365},[277,864,865],{"class":847},"  image",[277,867,338],{"class":321},[277,869,870],{"class":287}," node:22\n",[277,872,873,876],{"class":279,"line":385},[277,874,875],{"class":847},"  before_script",[277,877,850],{"class":321},[277,879,880,883],{"class":279,"line":476},[277,881,882],{"class":321},"    -",[277,884,885],{"class":287}," npm install -g jscpd@5\n",[277,887,888,891],{"class":279,"line":499},[277,889,890],{"class":847},"  script",[277,892,850],{"class":321},[277,894,895,897],{"class":279,"line":520},[277,896,882],{"class":321},[277,898,899],{"class":287}," jscpd . -r console,codeclimate --output report\n",[277,901,902,905],{"class":279,"line":541},[277,903,904],{"class":847},"  artifacts",[277,906,850],{"class":321},[277,908,909,912,914],{"class":279,"line":556},[277,910,911],{"class":847},"    when",[277,913,338],{"class":321},[277,915,916],{"class":287}," always\n",[277,918,919,922],{"class":279,"line":578},[277,920,921],{"class":847},"    reports",[277,923,850],{"class":321},[277,925,926,929,931],{"class":279,"line":623},[277,927,928],{"class":847},"      codequality",[277,930,338],{"class":321},[277,932,933],{"class":287}," report\u002Fgl-code-quality-report.json\n",[245,935,936],{},"The merge request then shows the duplication issues it adds and the ones it resolves against the target branch.",[262,938,940],{"id":939},"with-gates","With gates",[725,942,943,953],{},[728,944,945],{},[731,946,947,950],{},[734,948,949],{},"Severity",[734,951,952],{},"When",[741,954,955,964],{},[731,956,957,961],{},[746,958,959],{},[248,960,513],{},[746,962,963],{},"The default",[731,965,966,970],{},[746,967,968],{},[248,969,792],{},[746,971,972,973,976,977,980,981,984,985],{},"The clone is new against ",[248,974,975],{},"--baseline"," or ",[248,978,979],{},"--baseline-from-ref",", or the duplication of the run is above ",[248,982,983],{},"--threshold","; then every issue is ",[248,986,792],{},[245,988,989,990,993],{},"The comparison with the threshold is strictly greater, the same one that fails the build. ",[248,991,992],{},"--kind"," keeps only the kinds you name.",[262,995,997],{"id":996},"options","Options",[725,999,1000,1010],{},[728,1001,1002],{},[731,1003,1004,1007],{},[734,1005,1006],{},"Flag",[734,1008,1009],{},"Effect on the file",[741,1011,1012,1028,1044,1057],{},[731,1013,1014,1022],{},[746,1015,1016,756,1019],{},[248,1017,1018],{},"-o",[248,1020,1021],{},"--output",[746,1023,1024,1025],{},"The directory of ",[248,1026,1027],{},"gl-code-quality-report.json",[731,1029,1030,1038],{},[746,1031,1032,756,1035],{},[248,1033,1034],{},"-t",[248,1036,1037],{},"--threshold P",[746,1039,1040,1041,1043],{},"Every issue at ",[248,1042,792],{}," when the run is above P",[731,1045,1046,1052],{},[746,1047,1048,756,1050],{},[248,1049,975],{},[248,1051,979],{},[746,1053,1054,1056],{},[248,1055,792],{}," for new clones",[731,1058,1059,1067],{},[746,1060,1061,756,1064],{},[248,1062,1063],{},"-a",[248,1065,1066],{},"--absolute",[746,1068,1069],{},"Absolute paths in reports",[262,1071,1073],{"id":1072},"related","Related",[1075,1076,1077,1083,1089],"ul",{},[1078,1079,1080,1082],"li",{},[257,1081,167],{"href":168}," for the numbers of a run in a GitLab metrics report.",[1078,1084,1085,1088],{},[257,1086,1087],{"href":36},"CI"," for the GitLab pipeline with a baseline.",[1078,1090,1091,1094,1095,1097],{},[257,1092,1093],{"href":101},"Clone types"," for the kinds behind ",[248,1096,440],{},".",[1099,1100,1101],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":273,"searchDepth":325,"depth":325,"links":1103},[1104,1105,1106,1107,1108,1109],{"id":264,"depth":325,"text":265},{"id":391,"depth":325,"text":392},{"id":826,"depth":325,"text":827},{"id":939,"depth":325,"text":940},{"id":996,"depth":325,"text":997},{"id":1072,"depth":325,"text":1073},"GitLab Code Quality issues in the CodeClimate format, two per clone, so merge requests show duplication on the changed lines.","md",null,{},{"icon":165},{"title":162,"description":1110},"DuQGsKGRKK4vMouy5vw7HxWOBahbc2PshAN4tULQTfw",[1118,1120],{"title":157,"path":158,"stem":159,"description":1119,"icon":160,"children":-1},"A SARIF 2.1.0 log with one result per clone, its counterpart as a related location and a stable fingerprint, for GitHub code scanning and other SARIF consumers.",{"title":167,"path":168,"stem":169,"description":1121,"icon":170,"children":-1},"The counts of a run as OpenMetrics gauges, one sample per format, for GitLab metrics reports and Prometheus-style tooling.",1791302985752]