aglinxinyuan opened a new pull request, #7988:
URL: https://github.com/apache/texera/pull/7988
### What changes were proposed in this PR?
Five small frontend gaps, bundled because each is only 3-4 lines alone.
Measured with the **whole** frontend suite on both sides — no `--include`
and no name filter, so there is no false attribution — reading
`frontend/coverage/gui/lcov.info`. The before state was the five specs restored
to HEAD via `git show HEAD:<exact single path>`, hash-verified against scratch
copies.
| File | Codecov-missed | lcov detail |
|---|---|---|
| `workflow-util.service.ts` | 4 → **0** | lines 66/70 → 70/70; **functions
13/18 → 18/18** |
| `breakpoint-condition-input.component.ts` | 4 → **0** | branches 28/33 →
**33/33**; functions 7/8 → 8/8 |
| `workflow-version.service.ts` | 4 → **2** | branches 55/59 → 57/59 |
| `user-config.service.ts` | 4 → **3** | branches 30/33 → 31/33 |
| `nz-modal-comment-box.component.html` | — | branch arms closed |
**+15 fully-covered lines and +12 branch arms.**
The one worth pointing at is `workflow-util.service.ts`: **five of its
eighteen functions had zero calls** — four zero-caller methods plus a map
lambda — behind a 94.6% line figure. That is the fourth time in this campaign
the function counter found a gap the line counter hid.
### Verification
38 mutations, **all 38 killed**, every one dying on behaviour rather than a
compile error (a `junit.xml` was produced on all 38 runs, so the bundle
compiled every time).
The first draft claimed "all 22 mutants killed, every one of the 17 new
tests individually mutation-proven". **At least ten semantic mutants were alive
against it.**
**One survivor appeared during this pass and was fixed rather than
dropped:** the Enter-key twin of a `creatorName`-argument hole survived 26/26
after the first repair, because only the button path had been hardened. Both
paths are now pinned.
Three of the first draft's claims were corrected:
- A branch-count improvement on the comment-box template was presented as
covering the `[disabled]` guards. Reading the raw records shows it did not.
- One kill was mis-credited: under that mutant the test dies at
`TestBed.inject`, before any assertion runs.
- One reported failure message belonged to a different test than the row it
was attached to.
### Deliberately not included
Three regions are dead, and no mutant was attempted in them because one
would survive vacuously: `workflow-version.service.ts`'s else-arms at lines 174
and 198, and `user-config.service.ts`'s private `updateEntry` guards.
One measurement subtlety is worth recording because it makes two honest
counts disagree by one: for a multi-line statement in
`breakpoint-condition-input.component.ts`, lcov emits `BRDA:59,...` with **no
`DA:59`** — that statement's line record is `DA:58`. A DA-restricted count
reads 3 → 0 and a union count reads 4 → 0. Both reach zero, so the conclusion
is unaffected, but the rule needs stating.
No production file is touched. The worktree used a **real yarn install**,
not a `node_modules` junction — a junction is what emptied the main checkout's
dependencies twice earlier in this campaign, since a recursive delete follows
it and also reaches through yarn's portal link into
`frontend/tools/jschardet-stub`.
### Any related issues, documentation, discussions?
Closes #7986
### How was this PR tested?
```
npx ng test --watch=false --include="**/workflow-util.service.spec.ts"
--include="**/user-config.service.spec.ts"
--include="**/workflow-version.service.spec.ts"
--include="**/breakpoint-condition-input.component.spec.ts"
--include="**/nz-modal-comment-box.component.spec.ts"
```
```
Test Files 5 passed (5)
```
`yarn format:ci` passes. `frontend/junit.xml` and `frontend/coverage/` are
regenerated by every run and are not committed.
### Was this PR authored or co-authored using generative AI tooling?
Generated-by: Claude Code (Opus 5)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]