Skip to content

Commit 2d452a1

Browse files
leliaclaude
andcommitted
Drop ticket references from e2e hardening and note it in the changelog
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: lelia <2418071+lelia@users.noreply.github.com>
1 parent 02a887a commit 2d452a1

4 files changed

Lines changed: 20 additions & 12 deletions

File tree

.github/workflows/e2e-test.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ jobs:
4747
validate: tests/e2e/validate-reachability.sh
4848
setup-node: "true"
4949
# The tier-1 reachability backend intermittently returns empty
50-
# results while the CLI reports success (ENG-5093). The probe
51-
# exits 0 when the facts file has alerted components; anything
52-
# else is retried before validation fails the job.
50+
# results while the CLI reports success. The probe exits 0 when
51+
# the facts file has alerted components; anything else is
52+
# retried before validation fails the job.
5353
retry-probe: bash tests/e2e/reach-facts-probe.sh tests/e2e/fixtures/simple-npm
5454

5555
- name: gitlab
@@ -109,7 +109,7 @@ jobs:
109109
# when the scan output looks complete, and a run that fails it is
110110
# re-run on the assumption of a transient backend failure. A
111111
# persistent incomplete result still reaches validation. Validation
112-
# only treats the explicit ENG-5093 zero-project backend signature as
112+
# only treats the explicit zero-project backend signature as
113113
# inconclusive; any other empty result remains a failure. Retries are
114114
# surfaced as warning annotations so flake frequency stays visible.
115115
max_attempts=3
@@ -125,7 +125,7 @@ jobs:
125125
echo "diagnostics=true" >> "$GITHUB_OUTPUT"
126126
break
127127
fi
128-
echo "::warning title=e2e-${{ matrix.name }} transient retry::attempt ${attempt} failed the completeness probe (suspected backend transient, see ENG-5093); retrying"
128+
echo "::warning title=e2e-${{ matrix.name }} transient retry::attempt ${attempt} failed the completeness probe (suspected backend transient); retrying"
129129
echo "e2e-${{ matrix.name }}: retry after attempt ${attempt} — completeness probe failed (suspected transient)" >> "$GITHUB_STEP_SUMMARY"
130130
attempt=$((attempt+1))
131131
sleep 30

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@
1616
- Pinned the `hatchling` build backend and the `uv` binary used in the
1717
Dockerfile.
1818

19+
### Changed: e2e reachability jobs retry transient empty results
20+
21+
- Reachability e2e runs that report success with no alerted components in the
22+
facts file are retried up to three times as a suspected transient backend
23+
failure. After retries, only the known zero-project backend signature is
24+
classified as inconclusive — any other empty result still fails — and e2e
25+
jobs upload their logs and reports as diagnostics on failure.
26+
1927
## 2.5.9
2028

2129
### Changed: bump pinned @coana-tech/cli to 15.10.3

tests/e2e/reach-facts-probe.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
#
44
# Used by the e2e workflow's retry-probe hook: a --reach run against the
55
# known-vulnerable fixture that reports success but yields no alerted
6-
# components is the signature of a transient tier-1 backend failure
7-
# (ENG-5093), so the run is worth repeating before validation fails the job.
6+
# components is the signature of a transient tier-1 backend failure,
7+
# so the run is worth repeating before validation fails the job.
88
set -euo pipefail
99

1010
TARGET="${1:?usage: reach-facts-probe.sh <target-path>}"

tests/e2e/validate-reachability.sh

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,20 +36,20 @@ echo "PASS: Reachability facts file present at $FACTS_PATH"
3636

3737
# The tier-1 backend intermittently returns the known fixture as one orphaned
3838
# component with zero projects, so Coana has no vulnerability to analyze even
39-
# though manifest upload, facts generation, and scan finalization all succeed
40-
# (ENG-5093). After the workflow's bounded retries, classify only that explicit
39+
# though manifest upload, facts generation, and scan finalization all succeed.
40+
# After the workflow's bounded retries, classify only that explicit
4141
# upstream signature as inconclusive. Any other empty facts result still fails,
4242
# including the important regression case where Coana received a vulnerability
4343
# but the CLI lost its alerted component.
4444
if ! bash tests/e2e/reach-facts-probe.sh tests/e2e/fixtures/simple-npm; then
4545
if grep -q "Found 1 manifest files for reachability upload" "$LOG" && \
4646
grep -q "Found 0 projects across 0 ecosystems to analyze" "$LOG" && \
4747
grep -q "Filtered out 1 orphaned component" "$LOG"; then
48-
echo "::warning title=e2e-reachability inconclusive backend result::ENG-5093: tier-1 returned the known zero-project/orphaned-component signature after retries; core reachability execution and finalization passed"
49-
echo "e2e-reachability: inconclusive after retries — known ENG-5093 zero-project backend signature; diagnostics uploaded" >> "${GITHUB_STEP_SUMMARY:-/dev/null}"
48+
echo "::warning title=e2e-reachability inconclusive backend result::tier-1 returned the known zero-project/orphaned-component signature after retries; core reachability execution and finalization passed"
49+
echo "e2e-reachability: inconclusive after retries — known zero-project backend signature; diagnostics uploaded" >> "${GITHUB_STEP_SUMMARY:-/dev/null}"
5050
exit 0
5151
fi
52-
echo "FAIL: no components with alerts in .socket.facts.json and the known ENG-5093 backend signature was not present"
52+
echo "FAIL: no components with alerts in .socket.facts.json and the known backend signature was not present"
5353
exit 1
5454
fi
5555

0 commit comments

Comments
 (0)