[lenny] integrate REG-27: age out stale mention-path agent liveness via relay presence - #29
Merged
Merged
Conversation
The kind:10100 agent directory carries a replaceable, unexpiring status, so a crashed relay agent advertises "online" forever. Two independent predicates (useActiveAgentPubkeys and buildMentionCandidates) read it directly, which let dead agents win the mentionRanking active boost and get suggested as task owners via ownerSuggestion. Collapse both into one decision point and join the TTL'd relay presence the rest of the desktop already consumes via useAgentAvailabilityLookup. Presence is authority only when the read succeeded; an undefined availability falls back to the directory so a relay blip cannot empty the mention picker. - useActiveAgentPubkeys: new pure isRelayAgentActive + optional reader param - buildMentionCandidates: relay row now reads the injected set, like the member row - useMentions: query presence over the directory pubkey list (stable key, no churn) Managed-agent running/deployed classification is deliberately untouched. Signed-off-by: Michael Feth <michael@jira-flow.com>
…ntActive Adversarial hardening review of the feat/REG-27 diff against designing §5 edge-case enumeration E1-E9. Found gaps: E1 (empty inputs) and E7 (concurrent writer / mid-render presence update) had no explicit tests. Added both — E1 confirms no-throw on empty-string directory status, E7 confirms re-derivation correctness when a live 20001 event demotes a previously-undefined availability to offline. All 9 edge cases E1-E9 now have explicit test coverage. Gates: 19/19 tests pass; desktop-check rc=0 (4 warnings + 5 infos, identical to baseline; 2726 files; no REG-27 file in diagnostics). Signed-off-by: Hermes Agent <agents@protelynx.ai>
…ia relay presence The kind:10100 agent directory carries a replaceable, unexpiring status, so a crashed relay agent advertises 'online' forever and wins the mentionRanking active boost. REG-27 collapses two independent liveness predicates into one decision point (isRelayAgentActive) and joins the TTL'd relay presence the rest of the desktop already consumes (useAgentAvailabilityLookup). Presence is authority only when the read succeeded; undefined availability falls back to the directory so a relay blip cannot empty the mention picker. Managed-agent running/deployed classification untouched. Validation run 98 (2026-09-10, Gate-2 under owner-resolved analyzer ceiling 7): targeted 19/19; typecheck + 6 check:* guards rc=0; full desktop suite failure name-set identical to baseline (1 known provenance-cache failure both trees); flutter analyze 7 vs 7 identical signatures; mobile flutter-test name-set diff empty vs baseline; cargo buzz-db/core/acp/relay --lib failure name-sets match known_baseline_failures. DCO: 5aa17e3 gap closed by re-adding the commit at integration with Signed-off-by: Michael Feth (cc20732), original authorship preserved. No upstream PR opened (rival block#7465 open on buildMentionCandidates; external posting needs approval). Evidence: registry/work/REG-27/verifying.md + digests/2026-09-10-integration-run98.md
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
This was referenced Sep 11, 2026
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.
What changed
Validation (run 98, 2026-09-10; all gates re-run independently, Loop-3 handoff not trusted)
Review-then-merge by Michael per fork ruleset 22462580 (19/19 status checks). Loop 4 does not self-merge.