Conversation
…2629) * fix(devices): surface stale as its own state in people table device column The /people table's DEVICE column was collapsing stale devices into "Non-Compliant" while the employee drill-in correctly showed a gray "Stale (Nd)" badge. Surface stale as a distinct fourth state in the roll-up so the two views agree. - Extend MemberDeviceStatus with 'stale'. - Roll-up precedence: non-compliant > stale > compliant (a hard fail still wins; all-stale members show stale). - MemberRow renders a gray dot + muted 'Stale' label, matching the drill-in's DS secondary-badge weight. - 10 new/updated tests on compute-device-status-map; 2 new tests on MemberRow. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * feat(devices): add tooltip explaining Stale state on people table Next to the Stale device label, show a small Information icon that reveals a tooltip on hover: > This device's CompAI agent hasn't reported in over 7 days, so we > can't verify its current compliance. Ask the employee to update or > reinstall the agent. Discoverable cue for admins who haven't seen the state before and wouldn't otherwise know that Stale means "data is unknown, not non-compliant." Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * feat(devices): consistent stale-state tooltip across device surfaces Replace native title attrs on the overall-stale badge with a shared info-icon + tooltip trigger on the device list, employee device tab, and device details header, matching the pattern already used on the people list. Copy is identical across surfaces so users see the same explanation wherever they encounter the Stale state. * fix(devices): preserve non-compliant across multiple fleet hosts per member Cubic P1/P2 feedback on PR #2629. The fleet-fallback loop in computeDeviceStatusMap had regressed to last-host-wins when I refactored for the stale state — two fleet hosts for the same member with mixed pass/fail outcomes would write whichever came last, potentially overwriting a real non-compliant with a later compliant. Restore the guard: once a member is non-compliant from a failing fleet host, subsequent hosts cannot downgrade them. Regression tests cover both iteration orders (fail-then-pass and pass-then-fail). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(devices): branch stale tooltip copy for never-reported devices --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
1 Skipped Deployment
|
Contributor
|
🎉 This PR is included in version 3.27.4 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
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.
This is an automated pull request to release the candidate branch into production, which will trigger a deployment.
It was created by the [Production PR] action.
Summary by cubic
Expose “Stale” as its own device compliance state across People and Devices, with a small info tooltip that explains what it means. Also fix roll‑up logic to prioritize non‑compliant over stale and keep non‑compliant when Fleet hosts disagree.
New Features
Bug Fixes
Written for commit 6e1a06f. Summary will update on new commits.