fix: prevent plan content loss by blocking subsequent writes to same plan file#1474
Closed
kaizen403 wants to merge 1 commit intocode-yeongyu:devfrom
Closed
fix: prevent plan content loss by blocking subsequent writes to same plan file#1474kaizen403 wants to merge 1 commit intocode-yeongyu:devfrom
kaizen403 wants to merge 1 commit intocode-yeongyu:devfrom
Conversation
…plan file Fixes code-yeongyu#1363 - When Prometheus creates complex plans in segments, the Write tool overwrites previous content instead of appending. This fix: - Tracks plan files that have been written to per session - Blocks subsequent Write calls to the same plan file - Provides clear error message instructing to use Edit tool to append - Cleans up state on session.deleted and session.compacted events Draft files (.sisyphus/drafts/) are NOT affected - multiple writes allowed since drafts are working memory that can be fully replaced.
Contributor
Author
|
@sisyphus-dev-ai review |
Contributor
Author
|
hello @code-yeongyu. this fixes #1363 and prevents plan content loss by blocking subsequent Write calls and guiding to use Edit instead. all tests pass. |
3 tasks
Contributor
Author
|
@code-yeongyu I see you have merged #1476. closing this PR as the issue has been resolved :) |
Contributor
Author
|
oh wait sorry! I thought you implemented the changes I made in this into your PR. feel free to review this back along with my other work in #1477. |
Owner
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.
Fixes #1363 - When Prometheus creates complex plans that exceed output limits and writes in segments, the Write tool overwrites previous content instead of appending.
Problem?
When creating large plans, Prometheus may need to write content in multiple segments. However:
Solution:
Added plan file overwrite protection to the
prometheus-md-onlyhook:session.deletedandsession.compactedeventsChanges
src/hooks/prometheus-md-only/index.ts:writtenPlanFilesMap to track plan files written per sessionisPlanFile()andnormalizeFilePath()helper functionseventhandler for session cleanupsrc/hooks/prometheus-md-only/index.test.ts:Scope
.sisyphus/plans/*.md.sisyphus/drafts/*.mdError Message Example
Testing
Checklist
devbranchSummary by cubic
Prevents plan content loss by blocking repeated Write calls to the same plan file and guiding the agent to use Edit to append. Applies per session to .sisyphus/plans/*.md; drafts are not affected.
Written for commit 7b2a5d5. Summary will update on new commits.