Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions cases/bootstrap/boot-001-lint-fix.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Bootstrap Case: Fix linting errors in a specific file
# This case tests an agent's ability to fix code style issues in a single file.

id: boot-001
title: "Fix linting errors in a specific file"
prompt: |
Fix all linting errors in the file: ${FILE_PATH}

The file currently has linting errors. Run the linter on this file
to see what needs to be fixed, then apply the necessary corrections
to make the file pass all linting rules.

Requirements:
- Fix all linting errors in ${FILE_PATH}
- Do not modify any other files
- Preserve the original functionality
- Run the linter again to verify all errors are fixed

${LINTER_COMMAND}

source: bootstrap
category: bootstrap
language: javascript
difficulty: easy

tags:
- bootstrap
- linting
- code-quality

30 changes: 30 additions & 0 deletions cases/bootstrap/boot-002-rename-symbol.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Bootstrap Case: Rename a symbol across the codebase
# This case tests an agent's ability to find and rename a symbol consistently.

id: boot-002
title: "Rename a symbol across the codebase"
prompt: |
Rename the symbol "${OLD_NAME}" to "${NEW_NAME}" throughout the codebase.

Find all occurrences of ${OLD_NAME} in the codebase and replace them
with ${NEW_NAME}. Ensure the change is consistent across all files.

Requirements:
- Find all references to ${OLD_NAME}
- Replace each reference with ${NEW_NAME}
- Verify the change with grep: grep -r "${NEW_NAME}" .
- Run tests to ensure nothing is broken
- Do not introduce any new errors

${GREP_COMMAND}
Comment on lines +6 to +19
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Hardcoded grep command on Line 15 conflicts with ${GREP_COMMAND} placeholder on Line 19.

Line 15 hardcodes grep -r "${NEW_NAME}" . while Line 19 provides a ${GREP_COMMAND} placeholder intended for runtime substitution. If the runtime environment uses a different grep invocation (e.g., rg, different flags, or scoped paths), these two will be inconsistent.

Pick one approach — either use ${GREP_COMMAND} consistently or inline the command.

Suggested fix — use placeholder consistently
   Requirements:
   - Find all references to ${OLD_NAME}
   - Replace each reference with ${NEW_NAME}
-  - Verify the change with grep: grep -r "${NEW_NAME}" .
+  - Verify the change with the provided grep command
   - Run tests to ensure nothing is broken
   - Do not introduce any new errors

   ${GREP_COMMAND}
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
prompt: |
Rename the symbol "${OLD_NAME}" to "${NEW_NAME}" throughout the codebase.
Find all occurrences of ${OLD_NAME} in the codebase and replace them
with ${NEW_NAME}. Ensure the change is consistent across all files.
Requirements:
- Find all references to ${OLD_NAME}
- Replace each reference with ${NEW_NAME}
- Verify the change with grep: grep -r "${NEW_NAME}" .
- Run tests to ensure nothing is broken
- Do not introduce any new errors
${GREP_COMMAND}
prompt: |
Rename the symbol "${OLD_NAME}" to "${NEW_NAME}" throughout the codebase.
Find all occurrences of ${OLD_NAME} in the codebase and replace them
with ${NEW_NAME}. Ensure the change is consistent across all files.
Requirements:
- Find all references to ${OLD_NAME}
- Replace each reference with ${NEW_NAME}
- Verify the change with the provided grep command
- Run tests to ensure nothing is broken
- Do not introduce any new errors
${GREP_COMMAND}
🤖 Prompt for AI Agents
In `@cases/bootstrap/boot-002-rename-symbol.yaml` around lines 6 - 19, The prompt
contains a hardcoded grep invocation `grep -r "${NEW_NAME}" .` that conflicts
with the `${GREP_COMMAND}` placeholder; pick one approach and make it consistent
— replace the hardcoded `grep -r "${NEW_NAME}" .` with the `${GREP_COMMAND}`
placeholder (keeping the surrounding prompt text and variable references
`${OLD_NAME}`/`${NEW_NAME}` intact), ensure `${GREP_COMMAND}` is used exactly
where the verification command is intended, and run your usual validation (grep
substitution and tests) to confirm no syntax or runtime substitution errors are
introduced.


source: bootstrap
category: bootstrap
language: javascript
difficulty: easy

tags:
- bootstrap
- refactoring
- rename

30 changes: 30 additions & 0 deletions cases/bootstrap/boot-003-extract-duplicate.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Bootstrap Case: Extract duplicated code into shared function
# This case tests an agent's ability to identify and eliminate code duplication.

id: boot-003
title: "Extract duplicated code into shared function"
prompt: |
Extract the duplicated code pattern into a shared function.

The following code pattern appears multiple times in the codebase:
${DUPLICATE_PATTERN}

Create a new function called "${SHARED_FUNCTION_NAME}" that contains
this duplicated logic, then replace all occurrences with a call to
this new function.

Requirements:
- Identify all occurrences of the duplicate pattern
- Create a shared function with a clear name
- Replace all duplicates with calls to the shared function
- Verify the pattern is gone with grep
- Run tests to ensure functionality is preserved

${GREP_COMMAND}

source: bootstrap
category: bootstrap
language: javascript
difficulty: medium

tags:
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

tags field is empty — missing tag entries.

All other bootstrap cases define tag items under tags:. This file has an empty list, which is likely an oversight. Depending on the YAML parser, this will be parsed as null rather than an empty list [], which could also cause runtime errors.

Suggested fix
 tags:
+  - bootstrap
+  - refactoring
+  - deduplication
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
tags:
tags:
- bootstrap
- refactoring
- deduplication
🤖 Prompt for AI Agents
In `@cases/bootstrap/boot-003-extract-duplicate.yaml` at line 30, The `tags` field
in this YAML case is empty (will parse as null); update the `tags` key in
boot-003-extract-duplicate.yaml to include the expected tag items consistent
with other bootstrap cases or explicitly set it to an empty list `[]` if no tags
are needed so it parses as a list; ensure the entry names match the project's
tag conventions used elsewhere.

30 changes: 30 additions & 0 deletions cases/bootstrap/boot-004-add-types.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Bootstrap Case: Add type annotations to a module
# This case tests an agent's ability to add type safety to code.

id: boot-004
title: "Add type annotations to a module"
prompt: |
Add type annotations to the module at ${MODULE_PATH}.

The module currently lacks type annotations. Add appropriate TypeScript
types to all functions, variables, and parameters to ensure type safety.

Requirements:
- Add type annotations to all functions
- Add type annotations to all variables
- Add type annotations to all parameters
- Run the TypeScript type checker to verify no errors
- Ensure the module still works correctly

${TYPECHECK_COMMAND}

source: bootstrap
category: bootstrap
language: typescript
difficulty: medium

tags:
- bootstrap
- typescript
- type-safety

30 changes: 30 additions & 0 deletions cases/bootstrap/boot-005-update-deprecated.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Bootstrap Case: Update deprecated API usage
# This case tests an agent's ability to identify and fix deprecated patterns.

id: boot-005
title: "Update deprecated API usage"
prompt: |
Update all deprecated API usage in the codebase.

The following deprecated pattern is currently used:
${DEPRECATED_PATTERN}

Replace all occurrences of this deprecated pattern with the new API:
${NEW_API}

Requirements:
- Find all occurrences of the deprecated pattern
- Replace each with the new API
- Verify the deprecated pattern is gone with grep
- Run tests to ensure functionality is preserved
- Do not introduce any new errors

${GREP_COMMAND}

source: bootstrap
category: bootstrap
language: javascript
difficulty: medium

tags:
- bootstrap
Comment on lines +29 to +30
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Tags list is incomplete and file is missing a trailing newline.

Only bootstrap is listed. For consistency with other cases (which include 2–3 descriptive tags), add relevant tags. Also, the file lacks a trailing newline after Line 30, which some YAML parsers and linters flag.

Suggested fix
 tags:
   - bootstrap
+  - deprecated
+  - api-update
+
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
tags:
- bootstrap
tags:
- bootstrap
- deprecated
- api-update
🤖 Prompt for AI Agents
In `@cases/bootstrap/boot-005-update-deprecated.yaml` around lines 29 - 30, The
tags list only contains "bootstrap" and the file is missing a trailing newline;
update the YAML front-matter under the "tags" key to include additional
descriptive tags (for example add "update" and "deprecated" or other relevant
case descriptors alongside "bootstrap") so it matches the 2–3 tag convention
used elsewhere, and ensure the file ends with a single trailing newline
character after the final line.

Loading