Repository navigation
fix(herdr-core): keep the Herdr app's pin changes the pin bridge overwrote - #2753
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 9 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
… and a first app pin left unsaved
|
Review rounds (omo + Codex Terra, adversarial):
Checks at 6ed728c: |
|
Merge note: merged on the omo review (CLEAR at this head), Codex Terra (no HIGH; reproduced findings fixed, the rest listed in the PR comments) and green checks. CodeRabbit did not review this head (rate-limited or skipped). |
Fixes #2725
Three ways the herdr-core pin bridge overwrote a pin or unpin made in the Herdr app:
heard) and any later one of the app's already say what the label is. The echo of our write now also records the agreement, so the app's change after it is taken as the app's.preferences.jsoncould not save.refusednow holds an unpin the list could not take as well as a pin, so no label is written for that terminal meanwhile and it is tried again on the next list change.preferences.jsonwith an agreed pin. The snapshot's terminals are all known before any is settled, and a list started from no list holds every agent pinned in the app, so an agreed pinned terminal is not then taken as unpinned.Validation
server/herdr-core/pin-label.test.ts, one per case; all three fail on origin/main (cf40bb0) and pass here.bun test server/herdr-core/: 115 pass.bun run check fast: all ok (unit 11080 pass, 0 fail).fullnot run.