Skip to content

🐛 fleetreport: stop self-reporting completed Claude credential re-bridges - #18108

Merged
hivecommons-hive[bot] merged 1 commit into
v5from
fix/18107-credential-bridge-rename
Nov 13, 2026
Merged

hivecommons-hive[bot] merged 1 commit into
v5from
fix/18107-credential-bridge-rename

Conversation

@Danathar

Copy link
Copy Markdown
Contributor

What

claude credential bridge: a private credential file had replaced the shared-login symlink; re-bridged is logged at WARN after a successful repair. Claude Code renames a fresh file over every agent's credential symlink on each token refresh; all agents share one access token so they refresh within a minute or two of each other, and the watchdog (5s poll) re-bridges each link. The resulting burst (6 in 10m in the report, kept=shared, self-recovered in practice) crossed the unclassified_error_repeated threshold and filed #18107 for designed, already-audited recovery.

Change

  • pkg/fleetreport/slogfeed: add claudeCredentialRebridged, excluding exactly that completed-repair WARN from the fleet self-report tee, following the existing signedCommitOwnershipSkip pattern. The line stays in local logs and the audit row is unchanged.
  • Failed or refused repairs (repair failed, unreadable credential, refused shared location) log different messages and stay reportable; an ERROR with the same text also stays reportable.
  • crux/agent/claude_credential_bridge.go: comment pointing at the filter so the two strings stay in sync.
  • Test covering suppression, local-log retention, and that failures still report.
  • Changelog fragment.

Fixes #18107

🤖 Generated with Claude Code

— hive: backend=claude model=claude-opus-5-5


🐝 Hive Agent: contributor | SHA: b5f1a86d3

…dges

Claude Code renames a fresh file over each agent's shared-login symlink on
every token refresh, every agent refreshes within the same minute or two,
and the watchdog re-bridges each link within 5s. That burst of successful
repairs (already audited) crossed the unclassified_error_repeated threshold
and filed a fleet self-report for designed, self-healed behaviour.

Exclude exactly that completed-repair WARN from the slogfeed tee; it stays
in local logs. Failed or refused repairs log other messages and remain
reportable.

Fixes #18107

Hive-Run: #18107
Hive-Plan: selfreport-triage
Hive-Spec: fleetreport-slogfeed#expected-recovery-not-reported

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Danathar <Danathar@users.noreply.github.com>
@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Nov 13, 2026
@kubestellar-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign clubanderson for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubestellar-prow kubestellar-prow Bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Nov 13, 2026
@hivecommons-hive
hivecommons-hive Bot merged commit f63d1d2 into v5 Nov 13, 2026
83 of 88 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the fix/18107-credential-bridge-rename branch November 13, 2026 18:47
@hivecommons-hive

Copy link
Copy Markdown
Contributor

Hive status — updated in place; edits do not notify. Full history is in the Activity Monitor.

Evidence bundle `#18108b5f1a86` sha256:2c772b25f8eef6a98a615decef77a7da4c8a3a8375cb9a1861063c24e85760b1 — download from the dashboard or `hivectl review evidence #18108`.

@github-actions

Copy link
Copy Markdown
Contributor

Open PR overlap check

Base branch: v5

Conflicts are checked with every PR merged onto the current tip of v5, so a PR that only needs a rebase is not reported as conflicting with its siblings.

PR Title Relation Files
#18062 🌱 images: bump codex 0.167.0 -> 0.168.0 same files changelog.d/fixed-18107-claude-rebridge-selfreport.md
src/crux/agent/claude_credential_bridge.go
src/pkg/fleetreport/slogfeed/slogfeed.go
src/pkg/fleetreport/slogfeed/slogfeed_test.go

hivecommons-hive Bot pushed a commit that referenced this pull request Nov 13, 2026
…dges (#18108)

Claude Code renames a fresh file over each agent's shared-login symlink on
every token refresh, every agent refreshes within the same minute or two,
and the watchdog re-bridges each link within 5s. That burst of successful
repairs (already audited) crossed the unclassified_error_repeated threshold
and filed a fleet self-report for designed, self-healed behaviour.

Exclude exactly that completed-repair WARN from the slogfeed tee; it stays
in local logs. Failed or refused repairs log other messages and remain
reportable.

Fixes #18107

Hive-Run: #18107
Hive-Plan: selfreport-triage
Hive-Spec: fleetreport-slogfeed#expected-recovery-not-reported

Signed-off-by: Danathar <Danathar@users.noreply.github.com>
Co-authored-by: Danathar <Danathar@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates the PR's author has signed the DCO. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[selfreport] unclassified_error_repeated: claude credential bridge: a private credential file had replaced the shared-log…

1 participant