fix(discovery): ignore utility probes and unchanged host heartbeats - #134
Merged
Conversation
devswha
added a commit
that referenced
this pull request
Sep 6, 2026
#136) OpenCode's session watcher traversed unrelated cache subtrees even though its synchronizer only accepts `opencode.db`. Retain the parent directory to observe database creation and replacement, but limit traversal to depth zero and ignore every path except that root and its database. The historical direct-file-only approach missed a removal/replacement case in a real filesystem regression, so it is not copied verbatim. Other providers keep their existing recursive watch options. Validation: the 20-test filesystem/watcher/indexing group, type checks, and lint pass. Tests cover an existing or initially absent database, changes, deletion and recreation, excluded nested caches, and unchanged non-OpenCode options. `docs/evidence/issue131/review.md` records a disposition for all thirteen preserved commits and all six review groups, including already-shipped work, corrections in #133/#134/#135, and proposals intentionally not carried forward under the current Fleet contract. Merge after #134 and #135, with required checks rerun on that latest main. The preserved historical branch remains available. Closes #131.
6 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.
GJC's native
skills list/discover --jsonprobes were classified as interactive processes, suppressing an ordinary terminal row and allowing synthetic idle-GJC discovery. Exclude the exact utility subcommand in both discovery lanes while retaining native/Bun/Node interactive and resume matching. Also preserve the browser catalog object for identical host-state heartbeats; changed host state, capabilities, labels, and protocol still propagate, and full resync snapshots keep their existing replacement behavior.Validation: both GJC regressions and the duplicate-heartbeat assertion failed before correction. The 125-test GJC/external/live discovery group and 13-test host catalog suite pass, together with type checks and lint. Fixtures cover wrapped commands, ordinary prompts containing
skills, same-ID peers, real descriptor changes, offline state, and resync.Refs #131. Adapts the behavior of preserved commits
1d2fbf8and06875a1onto current main without importing the historical branch.