Skip to content

fix: update task tracker storage location in system prompt#24034

Merged
jerop merged 10 commits intomainfrom
u/anj/fix-issue-22995
Apr 1, 2026
Merged

fix: update task tracker storage location in system prompt#24034
jerop merged 10 commits intomainfrom
u/anj/fix-issue-22995

Conversation

@anj-s
Copy link
Copy Markdown
Collaborator

@anj-s anj-s commented Mar 27, 2026

Fixes #22995.

This PR updates the system prompt to accurately inform the agent of the task tracker's true storage location.

Key changes:

  • Injected dynamic tracker storage path (e.g., ~/.gemini/tmp/...) into the system prompt.
  • Updated BasePromptOptions and renderTaskTracker to handle the dynamic path.
  • Ensured PromptProvider passes the correct directory.
  • Verified with updated snapshot and unit tests.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 27, 2026

🧠 Model Steering Guidance

This PR modifies files that affect the model's behavior (prompts, tools, or instructions).

  • 🚀 Maintainer Reminder: Please ensure that these changes do not regress results on benchmark evals before merging.

This is an automated guidance message triggered by steering logic signatures.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 27, 2026

Size Change: +158 B (0%)

Total Size: 34.6 MB

Filename Size Change
./bundle/chunk-NRWH7GZR.js 0 B -3.82 MB (removed) 🏆
./bundle/chunk-PAFKO4MW.js 0 B -14.7 MB (removed) 🏆
./bundle/core-NTQVKT2K.js 0 B -44.7 kB (removed) 🏆
./bundle/devtoolsService-47QRKVYU.js 0 B -28.4 kB (removed) 🏆
./bundle/interactiveCli-R3K57NKT.js 0 B -1.66 MB (removed) 🏆
./bundle/oauth2-provider-BDINTMXO.js 0 B -9.16 kB (removed) 🏆
./bundle/chunk-Z4AKZ7AB.js 14.7 MB +14.7 MB (new file) 🆕
./bundle/chunk-ZCT34ZVS.js 3.82 MB +3.82 MB (new file) 🆕
./bundle/core-TNHCR2TD.js 44.7 kB +44.7 kB (new file) 🆕
./bundle/devtoolsService-ELZ5CXVZ.js 28.4 kB +28.4 kB (new file) 🆕
./bundle/interactiveCli-IWLCYXLN.js 1.66 MB +1.66 MB (new file) 🆕
./bundle/oauth2-provider-4UHAFREL.js 9.16 kB +9.16 kB (new file) 🆕
ℹ️ View Unchanged
Filename Size
./bundle/bundled/third_party/index.js 8 MB
./bundle/chunk-34MYV7JD.js 2.45 kB
./bundle/chunk-5AUYMPVF.js 858 B
./bundle/chunk-664ZODQF.js 124 kB
./bundle/chunk-DAHVX5MI.js 206 kB
./bundle/chunk-IUUIT4SU.js 56.5 kB
./bundle/chunk-R5X4CMUM.js 1.96 MB
./bundle/chunk-RJTRUG2J.js 39.8 kB
./bundle/chunk-U4FACSVX.js 1.13 kB
./bundle/devtools-36NN55EP.js 696 kB
./bundle/dist-T73EYRDX.js 356 B
./bundle/events-CLX3JQHP.js 418 B
./bundle/gemini.js 532 kB
./bundle/getMachineId-bsd-TXG52NKR.js 1.55 kB
./bundle/getMachineId-darwin-7OE4DDZ6.js 1.55 kB
./bundle/getMachineId-linux-SHIFKOOX.js 1.34 kB
./bundle/getMachineId-unsupported-5U5DOEYY.js 1.06 kB
./bundle/getMachineId-win-6KLLGOI4.js 1.72 kB
./bundle/memoryDiscovery-VL3OH25S.js 980 B
./bundle/multipart-parser-KPBZEGQU.js 11.7 kB
./bundle/node_modules/@google/gemini-cli-devtools/dist/client/main.js 222 kB
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/_client-assets.js 229 kB
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/index.js 13.4 kB
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/types.js 132 B
./bundle/sandbox-macos-permissive-open.sb 890 B
./bundle/sandbox-macos-permissive-proxied.sb 1.31 kB
./bundle/sandbox-macos-restrictive-open.sb 3.36 kB
./bundle/sandbox-macos-restrictive-proxied.sb 3.56 kB
./bundle/sandbox-macos-strict-open.sb 4.82 kB
./bundle/sandbox-macos-strict-proxied.sb 5.02 kB
./bundle/src-QVCVGIUX.js 47 kB
./bundle/tree-sitter-7U6MW5PS.js 274 kB
./bundle/tree-sitter-bash-34ZGLXVX.js 1.84 MB

compressed-size-action

@anj-s anj-s force-pushed the u/anj/fix-issue-22995 branch from 34e95a2 to fce7087 Compare March 27, 2026 18:21
@gemini-cli gemini-cli Bot added area/agent Issues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent Quality 🔒 maintainer only ⛔ Do not contribute. Internal roadmap item. labels Mar 27, 2026
@anj-s anj-s marked this pull request as ready for review March 30, 2026 16:24
@anj-s anj-s requested review from a team as code owners March 30, 2026 16:24
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses an issue where the system prompt provided an incorrect storage location for the task tracker. The changes ensure that the agent is accurately informed of the task tracker's dynamic file-based storage path, improving the reliability and correctness of task management operations by the agent. This involves updating prompt generation logic and associated tests to reflect the correct path.

Highlights

  • Dynamic Task Tracker Path: The system prompt now dynamically injects the true storage path of the task tracker (e.g., ~/.gemini/tmp/...) instead of a static or incorrect one.
  • Prompt Options and Rendering Updates: The BasePromptOptions and renderTaskTracker functions were updated to handle the dynamic path, changing the taskTracker property from a boolean to a string representing the directory path.
  • PromptProvider Integration: The PromptProvider was modified to correctly retrieve and pass the dynamic project temporary tracker directory to the system prompt.
  • Test Coverage and Verification: New unit tests and an evaluation test were added to verify that the system prompt accurately reflects the task tracker's storage location, and existing snapshots were updated.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@anj-s anj-s marked this pull request as draft March 30, 2026 16:26
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the task management protocol to use a dynamic file-based task tracking path instead of a hardcoded one. Changes include updating the prompt rendering logic to accept a directory string, modifying the configuration interfaces, and adding tests to verify the correct path is included in the system prompt. A review comment suggests refactoring the promptProvider.ts file to extract the repeated logic for retrieving the tracker directory into a single variable for better maintainability.

Comment thread packages/core/src/prompts/promptProvider.ts Outdated
@anj-s anj-s marked this pull request as ready for review March 31, 2026 23:47
@anj-s anj-s marked this pull request as draft March 31, 2026 23:48
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request transitions the task tracker from using a hardcoded storage path to a dynamic one retrieved from the configuration. The system prompt now correctly reflects the actual tracker directory. Feedback focuses on refactoring redundant path retrieval logic in promptProvider.ts into a local variable for better maintainability and removing the unused taskTracker property from the PlanningWorkflowOptions interface in both the modern and legacy snippet files.

Note: Security Review did not run due to the size of the PR.

Comment thread packages/core/src/prompts/promptProvider.ts Outdated
Comment thread packages/core/src/prompts/snippets.ts Outdated
Comment thread packages/core/src/prompts/snippets.legacy.ts Outdated
@anj-s anj-s force-pushed the u/anj/fix-issue-22995 branch from 77c90e9 to df1df74 Compare April 1, 2026 00:23
@anj-s anj-s marked this pull request as ready for review April 1, 2026 13:17
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request replaces the hardcoded task tracker storage path in the system prompt with a dynamic path retrieved from the environment configuration. Changes include updates to the PromptProvider to pass the directory string to prompt snippets, corresponding type changes in the snippet options, and new evaluation tests to verify the path's presence in the prompt. A security concern was raised regarding the lack of sanitization for the trackerDir variable before its interpolation into the system prompt, which could potentially allow for prompt injection if the path contains control characters.

Comment thread packages/core/src/prompts/snippets.ts
Comment thread packages/core/src/prompts/snippets.legacy.ts
Comment thread evals/tracker.eval.ts Outdated
@anj-s anj-s requested a review from gundermanc April 1, 2026 18:14
@anj-s anj-s requested a review from scidomino April 1, 2026 18:14
@jerop jerop enabled auto-merge April 1, 2026 18:18
@jerop jerop added this pull request to the merge queue Apr 1, 2026
Merged via the queue into main with commit 43cf63e Apr 1, 2026
28 checks passed
@jerop jerop deleted the u/anj/fix-issue-22995 branch April 1, 2026 18:43
kalenkevich pushed a commit to kalenkevich/gemini-cli that referenced this pull request Apr 3, 2026
afanty2021 pushed a commit to afanty2021/gemini-cli that referenced this pull request Apr 4, 2026
warrenzhu25 pushed a commit to warrenzhu25/gemini-cli that referenced this pull request Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/agent Issues related to Core Agent, Tools, Memory, Sub-Agents, Hooks, Agent Quality 🔒 maintainer only ⛔ Do not contribute. Internal roadmap item.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Agent struggle locating task tracker storage

4 participants