Skip to content

[backend] feat(inject): rename SUCCESS execution status to EXECUTED (#5643)#5950

Merged
GaetanSantucci merged 13 commits into
mainfrom
issue/5643
May 29, 2026
Merged

[backend] feat(inject): rename SUCCESS execution status to EXECUTED (#5643)#5950
GaetanSantucci merged 13 commits into
mainfrom
issue/5643

Conversation

@GaetanSantucci

@GaetanSantucci GaetanSantucci commented May 26, 2026

Copy link
Copy Markdown
Member
  • Rename SUCCESS to EXECUTED across the UI, API, and Backend Enums
  • Rename SUCCESS WITH CLEANUP FAIL to EXECUTED WITH CLEANUP FAILURE
  • Update UI tooltips for all execution status labels to match the newly updated documentation details.
  • Create a database migration script to retroactively update all historical execution traces and inject statuses.

Steps

  1. Go to Execution details tab → verify the trace status shows EXECUTED (not SUCCESS)

  2. Run an Inject where cleanup fails

  3. Trigger a scenario where cleanup is blocked (e.g., lock the artifact file)

  4. Verify trace shows EXECUTED WITH CLEANUP FAIL

Check deprecated statuses are gone
Confirm MAYBE PREVENTED and MAYBE PARTIAL PREVENTED no longer appear anywhere in the UI

Expected result

No SUCCESS label visible anywhere in the execution UI — only EXECUTED and EXECUTED WITH CLEANUP FAIL.

Related issues

Checklist

  • I consider the submitted work as finished
  • I tested the code for its functionality
  • I wrote test cases for the relevant uses case
  • I added/update the relevant documentation (either on github or on notion)
  • Where necessary I refactored code to improve the overall quality
  • For bug fix -> I implemented a test that covers the bug

Further comments

If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...

@github-actions github-actions Bot added the filigran team Item from the Filigran team. label May 26, 2026
@GaetanSantucci GaetanSantucci requested a review from Copilot May 27, 2026 06:22
@GaetanSantucci GaetanSantucci self-assigned this May 27, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Renames the inject/trace execution “success” statuses from SUCCESS to EXECUTED across the backend and frontend, adds alias-aware parsers to accept legacy values, and introduces a Flyway migration intended to update existing persisted status values.

Changes:

  • Backend: rename enums/logic from SUCCESSEXECUTED and add fromName() parsing for legacy status strings.
  • Frontend: update status labels/colors and regenerate API TypeScript types to reflect the new status names (while keeping some legacy UI aliases).
  • Tests/migration: update test fixtures/assertions and add a DB migration to rewrite existing status strings.

Reviewed changes

Copilot reviewed 29 out of 30 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
openaev-model/src/main/java/io/openaev/database/model/InjectTestStatus.java Switches success counting to EXECUTED (but needs broader success handling).
openaev-model/src/main/java/io/openaev/database/model/ExecutionTraceStatus.java Renames success trace statuses and adds alias-aware parsing.
openaev-model/src/main/java/io/openaev/database/model/ExecutionTrace.java Updates “success trace” factory methods to emit EXECUTED.
openaev-model/src/main/java/io/openaev/database/model/ExecutionStatus.java Renames inject-level success to EXECUTED and adds alias-aware parsing.
openaev-model/src/main/java/io/openaev/database/model/Execution.java Updates logging and aggregate status computation to use EXECUTED (but currently too narrow).
openaev-front/src/utils/statusUtils.ts Adds color/style mapping for EXECUTED and keeps legacy aliases.
openaev-front/src/utils/statusLabels.ts Adds user-facing labels/tooltips for EXECUTED and legacy aliases.
openaev-front/src/utils/api-types.d.ts Regenerates API union types to use EXECUTED/EXECUTED_WITH_CLEANUP_FAILURE.
openaev-dev/Frontend start.run.xml Updates IDE run configuration to pass --host and enable browser debugging.
openaev-api/src/test/java/io/openaev/utils/fixtures/InjectTestStatusFixture.java Updates fixture to use ExecutionStatus.EXECUTED.
openaev-api/src/test/java/io/openaev/utils/fixtures/InjectStatusFixture.java Updates fixture to use ExecutionStatus.EXECUTED.
openaev-api/src/test/java/io/openaev/utils/ExecutionTraceUtilsTest.java Updates expected trace statuses to EXECUTED*.
openaev-api/src/test/java/io/openaev/service/InjectSearchServiceTest.java Updates status assertion to EXECUTED.
openaev-api/src/test/java/io/openaev/service/InjectExpectationServiceTest.java Updates injected trace status to EXECUTED.
openaev-api/src/test/java/io/openaev/service/chaining/WorkflowTimeoutServiceTest.java Updates finished inject status to EXECUTED.
openaev-api/src/test/java/io/openaev/service/chaining/StepServiceIntegrationTest.java Updates trace status to EXECUTED.
openaev-api/src/test/java/io/openaev/scheduler/jobs/InjectsExecutionJobTest.java Updates expected computed final status to EXECUTED.
openaev-api/src/test/java/io/openaev/rest/inject/service/InjectorExecutionProcessingHandlerTest.java Updates trace status inputs to EXECUTED.
openaev-api/src/test/java/io/openaev/rest/inject/service/AgentExecutionProcessingHandlerTest.java Updates trace status inputs to EXECUTED.
openaev-api/src/test/java/io/openaev/rest/inject/InjectApiTest.java Updates assertions/expected trace statuses to EXECUTED.
openaev-api/src/test/java/io/openaev/database/helper/ExecutionTraceRepositoryHelperTest.java Updates persisted/updated status expectations to EXECUTED.
openaev-api/src/test/java/io/openaev/api/chaining/InjectExecutionStepTest.java Updates trace status to EXECUTED.
openaev-api/src/main/java/io/openaev/utils/InjectStatusUtils.java Updates computed inject status to return EXECUTED and ignores more non-actionable traces.
openaev-api/src/main/java/io/openaev/utils/ExecutionTraceUtils.java Renames computed cleanup-failure success status to EXECUTED_WITH_CLEANUP_FAILURE.
openaev-api/src/main/java/io/openaev/scheduler/jobs/ComchecksExecutionJob.java Updates success trace filtering to EXECUTED.
openaev-api/src/main/java/io/openaev/rest/inject/service/InjectStatusService.java Uses ExecutionStatus.fromName() / ExecutionTraceStatus.fromName() for backward-compatible parsing.
openaev-api/src/main/java/io/openaev/rest/inject/service/InjectService.java Updates “executed” inject status filter list to include EXECUTED.
openaev-api/src/main/java/io/openaev/rest/inject/service/ExecutionProcessingContext.java Updates isSuccess() to use alias-aware parsing and success classification.
openaev-api/src/main/java/io/openaev/rest/atomic_testing/form/ExecutionTraceOutput.java Updates schema example values to EXECUTED.
openaev-api/src/main/java/io/openaev/migration/V5_10__Rename_Execution_Statuses.java Adds migration intended to rewrite legacy status strings in DB (currently has blocking issues).
Comments suppressed due to low confidence (1)

openaev-model/src/main/java/io/openaev/database/model/Execution.java:62

  • issue: addTrace() logs anything that's not exactly EXECUTED (or INFO) as an error. That includes WARNING, ACCESS_DENIED, and EXECUTED_WITH_CLEANUP_FAILURE, which are explicitly treated as success statuses in ExecutionTraceStatus.SUCCESS_STATUSES. This will create misleading error logs.
    ExecutionTraceStatus status = context.getStatus();
    if (ExecutionTraceStatus.EXECUTED.equals(status) || ExecutionTraceStatus.INFO.equals(status)) {
      log.info(context.getMessage());
    } else {
      log.error(context.getMessage());
    }

Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionTraceStatus.java Outdated
Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionStatus.java Outdated
Comment thread openaev-front/src/utils/statusLabels.ts Outdated
@GaetanSantucci GaetanSantucci force-pushed the issue/5643 branch 4 times, most recently from 84c64d0 to 548703d Compare May 27, 2026 11:36
@GaetanSantucci GaetanSantucci marked this pull request as ready for review May 27, 2026 12:08
Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionTraceStatus.java Outdated
Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionTraceStatus.java Outdated
Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionStatus.java Outdated
Comment thread openaev-model/src/main/java/io/openaev/database/model/ExecutionTraceStatus.java Outdated
Comment thread openaev-front/src/utils/statusLabels.ts
Comment thread openaev-dev/Frontend start.run.xml
Comment thread openaev-api/src/main/java/io/openaev/utils/InjectStatusUtils.java

@antoinemzs antoinemzs left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good to go thanks !

@GaetanSantucci GaetanSantucci merged commit 7376b93 into main May 29, 2026
25 checks passed
@GaetanSantucci GaetanSantucci deleted the issue/5643 branch May 29, 2026 08:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

filigran team Item from the Filigran team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Full status migration across the backend and frontend, and implant

3 participants