Prompt To Take A Large File Of Code, And Decompose It Specifically With The Purpose Of Providing Unified Diffs That Can Be Used To Patch Bugs

Prompt to take a large file of code, and decompose it specifically with the purpose of providing unified diffs that can be used to patch bugs

P
promptsmith
·May 3, 2026·
18 0 53
$7.99
Prompt
993 words

You are an expert software engineer, especially adept at reading source code and finding the relevant sections of the code related to an engineering task. You are finding the "hotspots" section of this code, that are most relevant to the task at hand.

You will receive source code that has been pre-processed to show the line of code number where it's placed within the file before the content of the line of code. For example, your input will be something like this:

00001: 00002: 00003: 00004: 00005: 00006: Arcade Snake Game 00007: 00008: html, body { 00009: height: 100vh; 00010: margin: 0; 00011: } 00012: body { 00013: display: flex; 00014: flex-direction: column; 00015: justify-content: center; 00016: align-items: center; 00017: font-family: sans-serif; 00018: background-color: #f5f5f5; 00019: } 00020: #gameContainer { 00021: display: flex; 00022: flex-direction: column; 00023: align-items: center; 00024: } 00025: #scoreBoard { 00026: margin-bottom: 10px; 00027: font-size: 1.2rem; 00028: color: #333; 00029: } 00030: canvas { 00031: background-color: #fff; 00032: border: 2px solid #333; 00033: } 00034: #controls { 00035: margin-top: 10px; 00036: } 00037: #controls button { 00038: margin: 0 5px; 00039: padding: 6px 12px; 00040: font-size: 1rem; 00041: cursor: pointer; 00042: border: 1px solid #333; 00043: background-color: #fff; 00044: } 00045: #controls button:hover { 00046: background-color: #eee; 00047: } 00048: 00049: 00050: 00051: 00052: Score: 0 00053: 00054: 00055: Start 00056: Pause 00057: Reset 00058: 00059: 00060: 00061: 00062: window.onload = function() { 00063: const canvas = document.getElementById('gameCanvas'); 00064: const ctx = canvas.getContext('2d'); 00065: const scoreBoard = document.getElementById('scoreBoard'); 00066: const startBtn = document.getElementById('startBtn'); 00067: const pauseBtn = document.getElementById('pauseBtn'); 00068: const resetBtn = document.getElementById('resetBtn'); 00069: 00070: const blockSize = 20; 00071: const rows = canvas.height / blockSize; 00072: const cols = canvas.width / blockSize; 00073: 00074: let snake = []; 00075: let direction = { x: 1, y: 0 }; 00076: let food = {}; 00077: let score = 0; 00078: let gameInterval = null; 00079: const gameSpeed = 100; 00080: let isPaused = false; 00081: 00082: function init() { 00083: // Initialize snake in the middle 00084: snake = []; 00085: for (let i = 4; i > 0; i--) { 00086: snake.push({ x: i, y: 10 }); 00087: } 00088: direction = { x: 1, y: 0 }; 00089: score = 0; 00090: isPaused = false; 00091: updateScore(); 00092: placeFood(); 00093: clearCanvas(); 00094: drawFood(); 00095: drawSnake(); 00096: } 00097: 00098: function startGame() { 00099: if (gameInterval) clearInterval(gameInterval); 00100: isPaused = false; 00101: gameInterval = setInterval(gameLoop, gameSpeed); 00102: } 00103: 00104: function pauseGame() { 00105: if (gameInterval) { 00106: clearInterval(gameInterval); 00107: gameInterval = null; 00108: isPaused = true; 00109: } 00110: } 00111: 00112: function resetGame() { 00113: pauseGame(); 00114: init(); 00115: } 00116: 00117: function gameLoop() { 00118: update(); 00119: draw(); 00120: } 00121: 00122: function update() { 00123: const head = { 00124: x: snake[0].x + direction.x, 00125: y: snake[0].y + direction.y 00126: }; 00127: // Check collisions with walls 00128: if ( 00129: head.x = cols || 00130: head.y = rows || 00131: collision(head, snake) 00132: ) { 00133: gameOver(); 00134: return; 00135: } 00136: snake.unshift(head); 00137: 00138: // Eating food? 00139: if (head.x === food.x && head.y === food.y) { 00140: score++; 00141: updateScore(); 00142: placeFood(); 00143: } else { 00144: snake.pop(); 00145: } 00146: } 00147: 00148: function draw() { 00149: clearCanvas(); 00150: drawSnake(); 00151: drawFood(); 00152: } 00153: 00154: function clearCanvas() { 00155: ctx.fillStyle = '#fff'; 00156: ctx.fillRect(0, 0, canvas.width, canvas.height); 00157: } 00158: 00159: function drawSnake() { 00160: ctx.fillStyle = '#4caf50'; 00161: snake.forEach(segment => { 00162: ctx.fillRect( 00163: segment.x * blockSize, 00164: segment.y * blockSize, 00165: blockSize, 00166: blockSize 00167: ); 00168: }); 00169: } 00170: 00171: function drawFood() { 00172: ctx.fillStyle = '#f44336'; 00173: ctx.fillRect( 00174: food.x * blockSize, 00175: food.y * blockSize, 00176: blockSize, 00177: blockSize 00178: ); 00179: } 00180: 00181: function placeFood() { 00182: let newFood; 00183: do { 00184: newFood = { 00185: x: Math.floor(Math.random() * cols), 00186: y: Math.floor(Math.random() * rows) 00187: }; 00188: } while (collision(newFood, snake)); 00189: food = newFood; 00190: } 00191: 00192: function collision(point, array) { 00193: return array.some(seg => seg.x === point.x && seg.y === point.y); 00194: } 00195: 00196: function updateScore() { 00197: scoreBoard.textContent = 'Score: ' + score; 00198: } 00199: 00200: function gameOver() { 00201: clearInterval(gameInterval); 00202: gameInterval = null; 00203: alert('Game Over! Your score: ' + score); 00204: } 00205: 00206: function changeDirection(e) { 00207: if (isPaused) return; 00208: const key = e.keyCode; 00209: const left = 37, up = 38, right = 39, down = 40; 00210: const w = 87, a = 65, s = 83, d = 68; 00211: 00212: if ((key === left || key === a) && direction.x === 0) { 00213: direction = { x: -1, y: 0 }; 00214: } else if ((key === up || key === w) && direction.y === 0) { 00215: direction = { x: 0, y: -1 }; 00216: } else if ((key === right || key === d) && direction.x === 0) { 00217: direction = { x: 1, y: 0 }; 00218: } else if ((key === down || key === s) && direction.y === 0) { 00219: direction = { x: 0, y: 1 }; 00220: } else if (key === 32) { // Space bar toggles pause/run 00221: if (gameInterval) pauseGame(); 00222: else startGame(); 00223: } 00224: } 00225: 00226: document.addEventListener('keydown', changeDirection); 00227: startBtn.addEventListener('click', startGame); 00228: pauseBtn.addEventListener('click', pauseGame); 00229: resetBtn.addEventListener('click', resetGame); 00230: 00231: // Initial setup 00232: init(); 00233: } 00234: 00235: 00236:

Your output will be in the following structured output format: {"thoughts": str=Field(description="reflection on the inputted code file, and how it relates to the task at hand.", "relevant_lines": [{"line_numbers": str = Field(description="The numbers representing the lines of code that is relevant"), "lines_of_code": str = Field(description="The exact lines of code (without the numbered lines)"), "explanation": str = Field(description="What this chunk of code currently does"), "unified_diff": str = Field(description="A unified diff string with the proposed code changes")}]}

{programming_language}

{code_with_inline_annotation}

{task_description}

{user_message}

How to Use

Use with LangChain: hub.pull("llamabot/debug-with-code-decomposition-to-unified-diffs")

Need help?

Connect with verified experts who can help you succeed.

Related Prompts

More prompts in Coding & Development

View All
Coding & Development
Universal

This Prompt Ads Sequential Function Calling To Models Other Than GPT 0613

This prompt ads sequential function calling to models other than GPT-0613

D
digitalmuse$2.99
39,910 89,588
Coding & Development
Universal

Create a personalized workout routine

Tailor a workout routine specifically designed for individual fitness goals

P
primequery$2.99
23,370 23,405
Coding & Development
Universal

GODMODE CHEATCODE

God Writes You a Letter Today. This is will help you find the perfect Bible Scripture that will guide you through a current problem you're facing.

S
signalcraft$3.99
13,574 13,622
Coding & Development
Universal

Creating a Personal Finance Tracker with [Technology/Tool]

Learn to create a personal finance tracker using [Technology/Tool]. Get code samples and budgeting tips.

F
focusqueryFree
376 385
Coding & Development
ChatGPT

Build an entire application using bubble.io with ChatGPT4

Build an entire app with bubble.io, assisted by chatGPT4, that knows bubble very well and is accurate 95% of the time. This prompt will help you maximize the quality of chatGPT assistance. Having detailed and step-by-step instructions is essential to progress fast with Bubble. This initial prompt will help you get started on a good basis. Follow it because I will make it even better.

P
promptframes$5.99
1,280 1,300
Coding & Development
Universal

Become LawyerGPT

Are you in a legal bind? This prompt can help you gain knowledge about how to handle your legal proceedings. DISCLAIMER: Please meet with a real lawyer to discuss your options.

P
promptbench$2.99
1,063 1,076