Repository navigation
fix(continual-learning): support persistent workspace exclusions - #529
Open
rohan-patnaik wants to merge 2 commits into
Open
rohan-patnaik wants to merge 2 commits into
rohan-patnaik wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.
Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.
Reviewed by Cursor Bugbot for commit a3ac327. Configure here.
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.

Refs #141 (workspace exclusions).
Add excludedPaths in ~/.cursor/continual-learning.json, with an optional CONTINUAL_LEARNING_CONFIG path override. A listed directory and its descendants skip the stop-hook trigger before any state writes. Path matching resolves symlink aliases and does not match sibling prefixes. The continual-learning skill passes the helper path and workspace to the updater, which checks the same setting for manual runs.
Missing config preserves current behavior. Invalid or unreadable config stops learning and reports an error. Cadence and memory-file settings are unchanged; Git remote owner/slug matching is outside this change.
Validation: 13 Bun tests pass, including an actual stop-hook regression that fails before the hook change, allowed-workspace behavior, malformed config, descendants and symlinks. The helper also runs with CURSOR_PLUGIN_ROOT absent and a space-containing install path. git diff --check passes.
Note
Medium Risk
Changes when learning runs and reads user config from disk; misconfiguration or strict validation could block learning, but scope is limited to the continual-learning plugin hooks and updater flow.
Overview
Adds persistent workspace exclusions so continual learning can be turned off for specific local directories via
~/.cursor/continual-learning.json(excludedPathsof absolute paths), with optionalCONTINUAL_LEARNING_CONFIGoverride.A new
workspace-exclusionshelper resolves symlinks, matches a path and its descendants (not prefix siblings), treats a missing config as “not excluded,” and throws on invalid config so learning does not run silently. The stop hook bails out before cadence state or follow-up triggers when excluded; the continual-learning skill passes the installed helper path and workspace to agents-memory-updater, which must run the helper withbun runbefore reading transcripts or updatingAGENTS.md. Docs and focused Bun tests cover hook behavior, manual updater path, symlinks, and malformed config.Reviewed by Cursor Bugbot for commit 33a7d45. Bugbot is set up for automated code reviews on this repo. Configure here.