Skip to content

EDM-6462: Display delta generation terminal event reasons - #860

Merged
celdrake merged 1 commit into
mainfrom
EDM-6462-delta-event-reasons
Oct 23, 2026
Merged

celdrake merged 1 commit into
mainfrom
EDM-6462-delta-event-reasons

Conversation

@asafbennatan

@asafbennatan asafbennatan commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Add user-facing titles and translations for the delta generation succeeded, failed, and rejected event reasons.
  • Update generated event and delta-generation detail types for the backend OpenAPI change.
  • Keep DeltaGenerationProgress as the in-progress event reason.

This UI change depends on the backend OpenAPI change in flightctl/flightctl#3812.

Jira: EDM-6462

Testing

  • npm run test:typecheck
  • npm run test
  • npm run lint

Summary

  • Adds translated titles in the shared event UI for delta-generation success, failure, and rejection reasons.
  • The objectives also describe generated type updates for the backend OpenAPI change. The available change summary does not identify those files, so their scope is not verified.
  • DeltaGenerationProgress remains the in-progress event reason.
  • The change affects shared UI components. No changes are reported for platform-specific app code, the Go auth proxy, container builds, E2E tests, or CI configuration.
  • The UI change depends on the backend OpenAPI change in flightctl/flightctl#3812.

Checks

The author reports passing npm run test:typecheck, npm run test, and npm run lint. Results were not independently verified.

Risk classification

No applied risk label or labeling criteria were supplied. The classification is unavailable. The available summary identifies a user-facing translation change, but does not establish criteria for risk:ship, risk:show, or risk:ask, or whether the change approaches another classification.

@coderabbitai

coderabbitai Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
📥 Commits

Reviewing files that changed from the base of the PR and between d69e4cb and 46daba1.

⛔ Files ignored due to path filters: 3
  • libs/i18n/locales/en/translation.json is excluded by !libs/i18n/locales/en/translation.json
  • libs/types/models/DeltaGenerationProgressDetails.ts is excluded by !libs/types/models/**
  • libs/types/models/Event.ts is excluded by !libs/types/models/**
📒 Files selected for processing: 1
  • libs/ui-components/src/components/Events/useEvents.ts

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

Walkthrough

getEventReasonTitles now provides translated display titles for succeeded, failed, and rejected delta-generation events.

Changes

Delta-generation event titles

Layer / File(s) Summary
Add delta-generation reason titles
libs/ui-components/src/components/Events/useEvents.ts
Added translated display titles for succeeded, failed, and rejected delta-generation events.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Feature

Suggested labels: risk:show, ui-components, api-types, i18n

Suggested reviewers: celdrake

Merge Risk: ⚪ Minimal · up to 46dab

The localized event-title update presents no identified merge-blocking risk.

Pre-merge checks: Passed 14 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Generated-Files-Not-Hand-Edited Warning The PR changes generated outputs directly. libs/types/models/Event.ts adds three enum values, and libs/types/models/DeltaGenerationProgressDetails.ts changes generated documentation. Both files co… Do not hand-edit generated files. Apply the API schema change in the OpenAPI source, then run npm run gen-types. Keep the translation keys in useEvents.ts, run npm run i18n, and commit only the generated outputs produced by those comm…
Passed Passed checks: 14 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title accurately identifies the main change: displaying delta generation terminal event reasons. It is specific, concise, and related to the pull request objectives.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
No-Hardcoded-Secrets Passed PASS: The pull request adds event reason enum values, translated UI strings, and a generated-type comment. The changed lines contain no API keys, tokens, passwords, private keys, embedded credentials,…
No-Weak-Crypto Passed PASS. The pull request adds event enum values, translation strings, and UI mappings for delta-generation outcomes. The changed lines contain no MD5, SHA1, DES, 3DES, RC4, Blowfish, ECB, custom cryptog…
No-Injection-Vectors Passed PASS: The pull request adds only static event-reason enum values, static translation strings, and static translated titles. It introduces no eval/exec, dangerouslySetInnerHTML, os.system, exec.Command…
Container-Privileges Passed PASS: The pull request changes only TypeScript models, event-title logic, and English translations. It adds no container or Kubernetes manifest changes, and the reviewed diff introduces no privileged …
No-Sensitive-Data-In-Logs Passed PASS: The pull request adds event-reason enum values, translated UI titles, and generated-type documentation only. The reviewed diff introduces no logging calls or log payloads, and no passwords, toke…
Resource-Leaks Passed PASS: The pull request changes only TypeScript models, the event hook, and English translations. It changes no Go files under proxy/, so it introduces no opened-file, response-body, network-connection…
Unchecked-Errors Passed PASS: The pull request changes only four TypeScript/JSON files and no files under proxy/. The reviewed diff introduces no Go error handling, blank-identifier assignment, or swallowed error. Existing p…
Ai-Attribution Passed The contributor-authored PR description and the sole commit do not mention use of an AI tool. The commit has no attribution trailers, including no Co-Authored-By. The check therefore has no AI attri…
I18n-Compliance Passed PASS: The pull request changes no .tsx files. The three added user-facing strings are in libs/ui-components/src/components/Events/useEvents.ts, and each is passed to t() with a hardcoded string li…
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1 files.

Full details: No-Hardcoded-Secrets

Explanation

PASS: The pull request adds event reason enum values, translated UI strings, and a generated-type comment. The changed lines contain no API keys, tokens, passwords, private keys, embedded credentials, credential-like assignments, or long base64 strings.

Full details: No-Weak-Crypto

Explanation

PASS. The pull request adds event enum values, translation strings, and UI mappings for delta-generation outcomes. The changed lines contain no MD5, SHA1, DES, 3DES, RC4, Blowfish, ECB, custom cryptography, or secret/token comparison logic. The existing encryption-migration enum entries are unchanged and are labels only.

Full details: No-Injection-Vectors

Explanation

PASS: The pull request adds only static event-reason enum values, static translation strings, and static translated titles. It introduces no eval/exec, dangerouslySetInnerHTML, os.system, exec.Command, or yaml.load usage. Event titles render through ordinary React text interpolation.

Full details: Container-Privileges

Explanation

PASS: The pull request changes only TypeScript models, event-title logic, and English translations. It adds no container or Kubernetes manifest changes, and the reviewed diff introduces no privileged settings such as privileged: true, host PID/network/IPC, SYS_ADMIN, root execution, or allowPrivilegeEscalation: true.

Full details: No-Sensitive-Data-In-Logs

Explanation

PASS: The pull request adds event-reason enum values, translated UI titles, and generated-type documentation only. The reviewed diff introduces no logging calls or log payloads, and no passwords, tokens, API keys, PII, session IDs, hostnames, or customer data.

Full details: Resource-Leaks

Explanation

PASS: The pull request changes only TypeScript models, the event hook, and English translations. It changes no Go files under proxy/, so it introduces no opened-file, response-body, network-connection, or goroutine leak covered by this check.

Full details: Unchecked-Errors

Explanation

PASS: The pull request changes only four TypeScript/JSON files and no files under proxy/. The reviewed diff introduces no Go error handling, blank-identifier assignment, or swallowed error. Existing proxy candidates are outside the pull-request change range.

Full details: Ai-Attribution

Explanation

The contributor-authored PR description and the sole commit do not mention use of an AI tool. The commit has no attribution trailers, including no Co-Authored-By. The check therefore has no AI attribution violation to flag.

Full details: I18n-Compliance

Explanation

PASS: The pull request changes no .tsx files. The three added user-facing strings are in libs/ui-components/src/components/Events/useEvents.ts, and each is passed to t() with a hardcoded string literal. No variable-key t() call was introduced.

Full details: Generated-Files-Not-Hand-Edited

Explanation

The PR changes generated outputs directly. libs/types/models/Event.ts adds three enum values, and libs/types/models/DeltaGenerationProgressDetails.ts changes generated documentation. Both files contain the openapi-typescript-codegen “do not edit” header. The PR contains no OpenAPI specification change; the generator fetches the specification remotely. The PR also edits the generated libs/i18n/locales/en/translation.json.

Resolution

Do not hand-edit generated files. Apply the API schema change in the OpenAPI source, then run npm run gen-types. Keep the translation keys in useEvents.ts, run npm run i18n, and commit only the generated outputs produced by those commands.

✨ Finishing Touches: 💡 1
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
🛠️ Fix failing CI checks: 💡
  • Commit to this branch
  • Create a new PR

Warning

Some tools did not complete. Review the errors below.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint install timed out. The project may have too many dependencies for the sandbox.

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot added api-types i18n risk:show Show: low-to-medium risk — AI review sufficient ui-components labels Oct 22, 2026
@celdrake
celdrake added this pull request to the merge queue Oct 23, 2026
Merged via the queue into main with commit f9a84d5 Oct 23, 2026
28 of 31 checks passed
@celdrake
celdrake deleted the EDM-6462-delta-event-reasons branch October 23, 2026 06:42
celdrake added a commit that referenced this pull request Oct 28, 2026
* EDM-4175: fix catalog empty-state messaging for catalog filters (#837)

Treat selected Catalog filters as active filters when selecting the Software Catalog empty-state message. Add Cypress coverage for unfiltered and Catalog-filtered empty states.

* EDM-4175: address catalog review feedback

Scope the Catalog filter tree with a dedicated test id, merge Cypress setup hooks, and wait for catalog requests before asserting the unfiltered empty state.

---------

Co-authored-by: EfratIfergan <EfratIfergan@users.noreply.github.com>
(cherry picked from commit abd9cd3)
Made-with: Cursor

* EDM-6276: patch CVE-2026-102278 by updating brace-expansion to 1.1.21/5.0.12 (#838)

Resolves CVE-2026-102278 (Important/HIGH) in brace-expansion.
Updated brace-expansion from 1.1.18/5.0.9 to 1.1.21/5.0.12 via npm update.
Also covers EDM-6275, EDM-6277, EDM-6278 (rhem-1.2).

Made-with: Cursor
(cherry picked from commit 41926d1)

* EDM-3334: Prevent pending device list flicker (#788)

(cherry picked from commit 02083f4)
Made-with: Cursor

* EDM-3759: remove fleet name from template labels (#847)

Stop copying Fleet names into Kubernetes label values when building create payloads. Keep user-defined Fleet metadata labels and cover long-name regressions.

Fixes EDM-3759

Co-authored-by: EfratIfergan <EfratIfergan@users.noreply.github.com>
(cherry picked from commit 11a46e1)
Made-with: Cursor

* [EDM-5890]: use Flight Control for upstream route titles (#849)

* EDM-5890: Use Flight Control branding for upstream route titles

* EDM-5890: Keep upstream title branding in standalone routes

---------

Co-authored-by: EfratIfergan <EfratIfergan@users.noreply.github.com>
(cherry picked from commit d36aa20)
Made-with: Cursor

* [EDM-5891]: use a placeholder for new label input (#848)

* EDM-5891: use a placeholder for new label input

Treat the label format hint as placeholder text so new label inputs start empty. Preserve existing default label behavior for other editable controls and cover the regression in the approval-flow Cypress test.

* EDM-5891: use placeholders for editable label inputs

Remove the default label value from EditableLabelControl and use optional placeholders across all call sites so new entries start empty consistently.

* EDM-5891: handle empty OCI tags

Avoid trimming undefined tags during repository validation and cover the placeholder-driven empty tag case with a regression test.

---------

Co-authored-by: EfratIfergan <EfratIfergan@users.noreply.github.com>
(cherry picked from commit faf18a2)
Made-with: Cursor

* EDM-4073: Clarify 'Clear deprecation' action (#850)

Made-with: Cursor
(cherry picked from commit deea7d6)

* EDM-4002: Show validation error for invalid icon (#852)

* EDM-4002: Show validation error for invalid icon

Made-with: Cursor

* Make error accessible

Made-with: Cursor
(cherry picked from commit 2e25cf2)

* EDM-4126: Show empty state when no vulnerabilities exist (#845)

Made-with: Cursor
(cherry picked from commit 8171a68)

* EDM-4074: Truncate very long catalog item names (#773)

Made-with: Cursor
(cherry picked from commit b9f1133)

* EDM-6250: Prompt is configurable in AuthProviders (#854)

Made-with: Cursor
(cherry picked from commit 31cfc25)

* Bump github.com/getkin/kin-openapi from 0.145.0 to 0.149.0 in /proxy (#855)

Bumps [github.com/getkin/kin-openapi](https://github.com/getkin/kin-openapi) from 0.145.0 to 0.149.0.
- [Release notes](https://github.com/getkin/kin-openapi/releases)
- [Commits](getkin/kin-openapi@v0.145.0...v0.149.0)

Made-with: Cursor

---
updated-dependencies:
- dependency-name: github.com/getkin/kin-openapi
  dependency-version: 0.149.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit a603b90)

* Bump launch-editor from 2.14.1 to 2.14.2 (#856)

Bumps [launch-editor](https://github.com/vitejs/launch-editor) from 2.14.1 to 2.14.2.
- [Commits](vitejs/launch-editor@v2.14.1...v2.14.2)

Made-with: Cursor

---
updated-dependencies:
- dependency-name: launch-editor
  dependency-version: 2.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 249b653)

* Bump vite from 7.3.6 to 7.3.7 (#857)

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.3.6 to 7.3.7.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v7.3.7/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v7.3.7/packages/vite)

Made-with: Cursor

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 7.3.7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit d69e4cb)

* EDM-6462: Display delta generation terminal event reasons (#860)

(cherry picked from commit f9a84d5)
Made-with: Cursor

* EDM-6246: Display TPM verification status for Enrollment requests (#858)

* EDM-6246: Display TPM verification status for Enrollment requests
Made-with: Cursor

* Map Unknown status for TPM verification status

Made-with: Cursor
(cherry picked from commit f6a6c63)

* Update application links for 1.4 version (#844)

* Update application links for 1.4 version

Made-with: Cursor

* Use new links

Made-with: Cursor
(cherry picked from commit 82c0e10)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Efilaluck <73797477+EfratIfergan@users.noreply.github.com>
Co-authored-by: EfratIfergan <EfratIfergan@users.noreply.github.com>
Co-authored-by: Eldar101 <eldar101@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Asaf Ben Natan <asafbennatan@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api-types i18n risk:show Show: low-to-medium risk — AI review sufficient ui-components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants