Skip to content

fix(#4717): add LICENSE_FILE_EXISTS mock to homepage aggregations - #4718

Merged
imykhno merged 1 commit into
mainfrom
agent/4717-add-license-file-exists-mock
Sep 14, 2026
Merged

imykhno merged 1 commit into
mainfrom
agent/4717-add-license-file-exists-mock

Conversation

@fullsend-ai-coder

Copy link
Copy Markdown
Contributor

mockAllDefaultHomepageAggregationsSuccess mocked 5 of 6 KPI aggregation routes but omitted the LICENSE_FILE_EXISTS route. Add licenseFileExistsAggregatedResponse import and mockApiResponse call so all 6 routes in AGGREGATED_CARDS_METRIC_IDS are mocked.


Closes #4717

Post-script verification

  • Branch is not main/master (agent/4717-add-license-file-exists-mock)
  • Secret scan passed (gitleaks — e788230460696968eaa223ca692500d09ea52879..HEAD)
  • Pre-commit hooks passed (authoritative run on runner)
  • Tests ran inside sandbox

mockAllDefaultHomepageAggregationsSuccess mocked 5 of 6 KPI
aggregation routes but omitted the LICENSE_FILE_EXISTS route.
Add licenseFileExistsAggregatedResponse import and mockApiResponse
call so all 6 routes in AGGREGATED_CARDS_METRIC_IDS are mocked.

Closes #4717
@rhdh-gh-app

rhdh-gh-app Bot commented Sep 14, 2026

Copy link
Copy Markdown

Changed Packages

Package Name Package Path Changeset Bump Current Version
app-legacy workspaces/scorecard/packages/app-legacy none v0.0.0

@codecov

codecov Bot commented Sep 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 62.72%. Comparing base (e788230) to head (d0e57e1).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4718   +/-   ##
=======================================
  Coverage   62.72%   62.72%           
=======================================
  Files        2636     2636           
  Lines      105422   105422           
  Branches    29529    29529           
=======================================
  Hits        66125    66125           
  Misses      37495    37495           
  Partials     1802     1802           
Flag Coverage Δ *Carryforward flag
adoption-insights 84.77% <ø> (ø) Carriedforward from e788230
ai-integrations 78.80% <ø> (ø) Carriedforward from e788230
app-defaults 53.07% <ø> (ø) Carriedforward from e788230
augment 46.67% <ø> (ø) Carriedforward from e788230
boost 83.46% <ø> (ø) Carriedforward from e788230
bulk-import 73.12% <ø> (ø) Carriedforward from e788230
cost-management 13.35% <ø> (ø) Carriedforward from e788230
dcm 73.47% <ø> (ø) Carriedforward from e788230
e2e-adoption-insights 60.00% <ø> (ø) Carriedforward from e788230
e2e-extensions 62.31% <ø> (ø) Carriedforward from e788230
e2e-global-header 49.71% <ø> (ø) Carriedforward from e788230
e2e-homepage 61.11% <ø> (ø) Carriedforward from e788230
e2e-intelligent-assistant 46.09% <ø> (ø) Carriedforward from e788230
e2e-orchestrator 49.52% <ø> (ø) Carriedforward from e788230
e2e-orchestrator-plugin 49.51% <ø> (ø) Carriedforward from e788230
e2e-quickstart 55.21% <ø> (ø) Carriedforward from e788230
e2e-scorecard 50.05% <ø> (ø) Carriedforward from e788230
e2e-theme 16.36% <ø> (ø) Carriedforward from e788230
extensions 57.37% <ø> (ø) Carriedforward from e788230
global-floating-action-button 71.18% <ø> (ø) Carriedforward from e788230
global-header 67.88% <ø> (ø) Carriedforward from e788230
homepage 48.39% <ø> (ø) Carriedforward from e788230
install-dynamic-plugins 71.94% <ø> (ø) Carriedforward from e788230
intelligent-assistant 77.26% <ø> (ø) Carriedforward from e788230
konflux 91.98% <ø> (ø) Carriedforward from e788230
lightspeed 69.02% <ø> (ø) Carriedforward from e788230
mcp-integrations 84.46% <ø> (ø) Carriedforward from e788230
orchestrator 72.02% <ø> (ø) Carriedforward from e788230
quickstart 63.74% <ø> (ø) Carriedforward from e788230
sandbox 79.56% <ø> (ø) Carriedforward from e788230
scorecard 88.20% <ø> (ø)
theme 87.91% <ø> (ø) Carriedforward from e788230
translations 5.12% <ø> (ø) Carriedforward from e788230
x2a 77.18% <ø> (ø) Carriedforward from e788230

*This pull request uses carry forward flags. Click here to find out more.


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e788230...d0e57e1. Read the comment docs.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@fullsend-ai-review

fullsend-ai-review Bot commented Sep 14, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 8:46 AM UTC · Completed 8:52 AM UTC

Commit: d0e57e1 · View workflow run →

Runtime: claude · Model: opus → claude-opus-4-6 · Cost: $1.47

@sonarqubecloud

Copy link
Copy Markdown

@fullsend-ai-review

Copy link
Copy Markdown

Review — Approve

PR: #4718 — fix(#4717): add LICENSE_FILE_EXISTS mock to homepage aggregations
Scope: 1 file, +6/−0 lines (test utility only)

Summary

Clean, minimal bug fix that adds the missing 6th mock to mockAllDefaultHomepageAggregationsSuccess. The function previously mocked 5 of 6 KPI aggregation routes defined in AGGREGATED_CARDS_METRIC_IDS, omitting LICENSE_FILE_EXISTS_KPI_AGGREGATION_ROUTE. This caused the license-file-exists card to render without a success-mock interceptor in E2E tests.

The fix:

  1. Imports licenseFileExistsAggregatedResponse from scorecardResponseUtils (alphabetically ordered)
  2. Adds an await mockApiResponse(page, ScorecardRoutes.LICENSE_FILE_EXISTS_KPI_AGGREGATION_ROUTE, licenseFileExistsAggregatedResponse) call before page.reload()

Dimensions reviewed

Dimension Result
Correctness ✅ Both imported symbols verified to exist. All 6 routes now mocked before page.reload(). Pattern matches existing calls exactly.
Security ✅ Test-only change. No secrets, injection vectors, or permission changes.
Intent & coherence ✅ Directly traces to issue #4717. No scope creep — exactly the two-line fix described in the issue.
Style & conventions ✅ Import alphabetically placed. Mock call follows the identical 3-argument pattern of the 5 existing calls.
Documentation ✅ No public API changes; no docs updates needed.
Cross-repo contracts ⏭ Skipped — no exported interfaces modified.

No findings.

@fullsend-ai-review fullsend-ai-review Bot added the ready-for-merge All reviewers approved — ready to merge label Sep 14, 2026
@imykhno
imykhno merged commit ec9f848 into main Sep 14, 2026
65 of 66 checks passed
@imykhno
imykhno deleted the agent/4717-add-license-file-exists-mock branch September 14, 2026 09:41
@fullsend-ai-retro

fullsend-ai-retro Bot commented Sep 14, 2026

Copy link
Copy Markdown

🤖 Finished Retro · ✅ Success · Started 9:43 AM UTC · Completed 9:55 AM UTC

Commit: d0e57e1 · View workflow run →

Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $2.87

@fullsend-ai-retro

Copy link
Copy Markdown

PR #4718 Retro Summary

PR #4718 was a clean, single-iteration workflow that demonstrates the retro-to-fix pipeline working as designed.

Timeline

  1. PR RHIDP-14421: Implement new E2E test scenarios for Scorecard in plugins #4631 (human-authored) added E2E tests for the Scorecard plugin but missed mocking the LICENSE_FILE_EXISTS route in mockAllDefaultHomepageAggregationsSuccess
  2. The review agent flagged this as a medium finding across 3 consecutive review passes on PR RHIDP-14421: Implement new E2E test scenarios for Scorecard in plugins #4631, and Qodo independently flagged the same gap — but the author addressed only lower-severity findings
  3. A human reviewer approved PR RHIDP-14421: Implement new E2E test scenarios for Scorecard in plugins #4631 without catching the unresolved medium finding; the PR merged
  4. The retro agent caught the unresolved finding post-merge and filed issue #4717 (16 minutes after merge)
  5. The triage agent confirmed the bug in 5 minutes ($0.63)
  6. The code agent implemented a correct 6-line fix in 13 minutes ($1.56)
  7. The review agent approved the fix with no findings in 8 minutes ($1.47)
  8. Human reviewer (imykhno) approved and merged ~48 minutes later

Total pipeline cost: ~$3.66 | Total time: ~77 minutes (issue to merge)

Workflow Quality

  • Review quality: Excellent — the review agent correctly approved a clean, minimal fix with no findings.
  • Rework rate: Zero — code agent got it right on the first attempt.
  • Token cost: Reasonable for the pipeline. The $1.47 review cost for a 6-line test-only change uses opus as configured.
  • Time to resolution: The autonomous pipeline (triage, code, review) completed in ~28 minutes. The 48-minute wait for human approval was the only bottleneck.

Supporting Evidence for Existing Issues

Proposals

One proposal filed — review agent should escalate findings that persist across multiple review passes.

Proposals skipped (target repo not allowed)

File manually or update create_issues.allow_targets in config.yaml:

  • Review agent should escalate findings that persist across multiple review passes (fullsend-ai/agents)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-merge All reviewers approved — ready to merge ready-for-review Agent PR ready for human review workspace/scorecard

Projects

None yet

Development

Successfully merging this pull request may close these issues.

mockAllDefaultHomepageAggregationsSuccess missing LICENSE_FILE_EXISTS mock

1 participant