refactor(agent): remove skip_soul context loading path - #23062
Open
GritLs wants to merge 1 commit into
Open
Conversation
GritLs
marked this pull request as ready for review
May 10, 2026 07:52
teknium1
reviewed
Jul 13, 2026
teknium1
left a comment
Contributor
There was a problem hiding this comment.
Thanks for the focused prompt-assembly cleanup. The duplicate-injection guard is still present on current main, but this branch predates the system-prompt extraction.
Problems
agent/system_prompt.py:451-453is now the live call site and still passesskip_soul=_soul_loaded. The PR removes that parameter inagent/prompt_builder.pybut changes the formerrun_agent.pycall site instead. Current main moved the implementation in2d2cd5e904abc11eb6c00e88e2b6d0c8b025a597; applying the signature change without updatingagent/system_prompt.pywould raiseTypeErrorwhile building a prompt.- The changed English prompt-assembly docs would leave the Chinese rendered counterpart stale:
website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/developer-guide/prompt-assembly.md:135,155,170-172,225still documentsskip_soul.
Suggested changes
- Port the caller and regression coverage to
agent/system_prompt.py/tests/agent/test_system_prompt.py, then remove the obsolete helper fallback. - Update the matching translated documentation with the English docs.
Automated hermes-sweeper review.
| @@ -5754,8 +5754,7 @@ def _build_system_prompt(self, system_message: str = None) -> str: | |||
| # dir, so os.getcwd() would pick up the repo's AGENTS.md and | |||
Contributor
There was a problem hiding this comment.
On current main this call was extracted to agent/system_prompt.py:451-453 by 2d2cd5e904abc11eb6c00e88e2b6d0c8b025a597. Please port this change there as well: that live caller still passes skip_soul=_soul_loaded, which would otherwise become an unexpected keyword after the helper signature is reduced.
9 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
skip_soulparameter frombuild_context_files_prompt().SOUL.mdloading exclusively inload_soul_md()as the identity layer.Why
skip_soulwas added when SOUL.md moved from the project context block to the primary identity slot in #1922. The main prompt assembly now hasload_soul_identityfor the real cron use case from #17509, so the helper-level fallback path preserves old mixed context behavior and makes the prompt order harder to understand.How to test
.venv/bin/python -m pytest -o addopts='' tests/agent/test_prompt_builder.py::TestBuildContextFilesPrompt tests/run_agent/test_run_agent.py::TestBuildSystemPrompt tests/cron/test_cron_workdir.py::TestRunJobTerminalCwd -q.venv/bin/python - <<'PY' ... PYsmoke test coveringload_soul_md()plusbuild_context_files_prompt()git diff --checkPlatforms tested
.venvRelated
Cross-platform impact
This is prompt assembly cleanup only. It removes duplicate SOUL.md loading from the context helper and does not add platform-specific behavior.