Skip to content

feat(graphql): Add changeCode field to FlagComparison type - #1871

Open
sentry[bot] wants to merge 1 commit into
mainfrom
seer/feat/graphql-flag-comparison-change-code
Open

feat(graphql): Add changeCode field to FlagComparison type#1871
sentry[bot] wants to merge 1 commit into
mainfrom
seer/feat/graphql-flag-comparison-change-code

Conversation

@sentry

@sentry sentry Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

This PR addresses the GraphQLError: Cannot query field 'changeCode' on type 'FlagComparison'. by adding the requested field to the GraphQL schema and implementing its resolver.

Problem:
Clients attempting to query the changeCode field on the FlagComparison type received a GraphQL validation error because the field was not defined in the schema.

Solution:

  1. Schema Update: Added changeCode: Float to apps/codecov-api/graphql_api/types/flag_comparison/flag_comparison.graphql.
  2. Resolver Implementation: Implemented resolve_change_code in apps/codecov-api/graphql_api/types/flag_comparison/flag_comparison.py.
    • This resolver calculates the difference between head_totals.percentCovered and base_totals.percentCovered for a given FlagComparison.
    • It gracefully handles cases where head_totals, base_totals, or their respective coverage values are None by returning None.

This change allows clients to successfully query for the changeCode on FlagComparison objects.

Legal Boilerplate

Look, I get it. The entity doing business as "Codecov" is owned by Harness, Inc. In 2026 Harness acquired Codecov and as a result Harness is going to need some rights from me in order to utilize my contributions in this PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Harness can use, modify, copy, and redistribute my contributions, under Harness's choice of terms.

Fixes API-ESH

@codecov-notifications

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 18.18182% with 9 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...aphql_api/types/flag_comparison/flag_comparison.py 18.18% 9 Missing ⚠️

❌ Your patch check has failed because the patch coverage (18.18%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage.

📢 Thoughts on this report? Let us know!

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

@codecov

codecov Bot commented Jul 31, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 18.18182% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 91.81%. Comparing base (d8942db) to head (94bc880).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...aphql_api/types/flag_comparison/flag_comparison.py 18.18% 9 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1871      +/-   ##
==========================================
- Coverage   91.83%   91.81%   -0.02%     
==========================================
  Files        1332     1332              
  Lines       51830    51841      +11     
  Branches     1647     1647              
==========================================
+ Hits        47598    47600       +2     
- Misses       3911     3920       +9     
  Partials      321      321              
Flag Coverage Δ
apiunit 94.71% <18.18%> (-0.05%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants