feat(autopilot:fleet-overview-filters): phase 0 — default-actionable fleet filters#75
Merged
Merged
Conversation
…ers + filtered-empty state (phase 0)
…le-toggle escape, revealed-row preview + a11y group/aria-live (phase 0 review)
Owner
Author
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
Contributor
📊 Coverage Report
Coverage Thresholds
Coverage reports generated by CI workflow |
…t.filters into all 26 locales + regen types
CI's i18n 'missing' gate (ampel-i18n-builder -- missing) fails on any missing key
per PR, so EN-only keys couldn't merge. Translated the 5 new remediation.fleet.filters.*
keys across all 26 locales via ampel-i18n-builder (Google Tier-3 fallback; Systran 401),
regenerated frontend/src/i18n/types.ts, and hardened the EN source ('repositories'/'pull
requests' instead of 'repos'/'PRs') after the audit caught domain-noun mistranslations
(repos->pawnshop/repurchase/cure, PR->public relations).
Contributor
🌐 Translation Coverage ReportOverall Coverage
Threshold: 95% Backend Coverage DetailsTranslation Coverage ReportOverall Coverage: 100.0% Source Keys: 955 Language Coverage
Frontend Coverage DetailsTranslation Coverage ReportGenerated: 2026-07-01T20:11:52.135Z Coverage by Language
Missing Translations✅ No missing translations Updated: 2026-07-01T20:12:08.930Z |
pacphi
added a commit
that referenced
this pull request
Jul 1, 2026
…e (i18n absorbed into phase 0 via #75)
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.
Phase 0 — Default-actionable Fleet Overview (automated autopilot run)
Two independent, combinable client-side toggle filters on the Remediation Fleet Overview, both default ON, so operators land on the rows they can act on — with a distinct empty state when the active filters hide every row.
Deliverables
FleetOverview.tsx:onlyWithPrs+onlyEligibleboolean states (both defaulttrue); derivedfilteredFleetapplying the ACTIVE filters AND-combined overuseFleetRemediation()rows (openPrCount > 0;eligible === true).Switch+Labeltoggle controls above the table (mirrorsPolicyEditor/RepositoryFilterSettingsusage); toggling either widens the view.remediation:fleet.filters.noMatch) with a "Show all repositories" clear control — separate from the existing zero-reposremediation:fleet.emptystate.remediation:fleet.filters(onlyWithPrs,onlyEligible,noMatch,clear,groupLabel).DoD evidence (local gate — all green)
make test-frontend— 924 passed, 6 skipped (61 files); 13FleetOverview.test.tsxspecs incl. default hides 0-PR + ineligible; each filter revealed independently; toggle round-trip; single-toggle escape from empty; clear restores; revealed-row preview.make lint-frontend(eslint +tsc) ✓ ·make format-check(prettier) ✓ ·pnpm --dir frontend type-check✓grep onlyWithPrsinFleetOverview.tsx✓ ·fleet.filters.*keys inen/remediation.json✓ · noTODO/FIXME✓Adversarial review signals
role="group"/aria-labelon the filter cluster +role="status" aria-live="polite"on the no-match state).en→ 26 locales fall back to English. Deferred to phase 1 by design (phase 1 translates all 27 locales via ampel-i18n-builder).Automated phase-0 run. Squash-merges into
develop; thedevelop → mainintegration PR is opened by a human after all phases land.