AI Slop Code Risk Monitor

facebook/relay

SlopCodeMonitor badge for facebook/relay Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Relay is a JavaScript framework for building data-driven React applications.

1.5 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for facebook/relay, a Rust project with 18,969 GitHub stars. SynthScan examined 614,252 lines of code across 2772 source files, recording 687 pattern matches distributed across 11 syntactic categories. The legacy adjusted pattern signal is 1.5 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

1.5
Adjusted Signal
1.5
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
19.0K
Stars
Rust
Language
614.3K
Lines of Code
2.8K
Files
687
Pattern Hits
2026-10-31
Scan Date
0.00
HC Hit Rate

Risk Review · Payload v1

Use each vector to guide manual verification of the underlying findings.

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 5.9/100 · LOW

Can maintainers explain intent, assumptions, and trade-offs? 603 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.5/100 · LOW

Are imports declared and package/API names verified? 42 finding(s).

Agent Over-Engineering Ratio 2.7/100 · LOW

Are wrappers, guards, and repeated structures necessary? 270 finding(s).

PR Review Velocity Impact 6.5/100 · LOW

Which changes need focused human review? 687 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 1HIGH 9MEDIUM 44LOW 633

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 687 distinct pattern matches across 11 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Over-Commented Block241 hits · 240 pts
SeverityFileLineSnippetContext
LOWscripts/dev-compiler.sh1#!/usr/bin/env bashCOMMENT
LOWpackages/relay-runtime/util/RelayFeatureFlags.js61 ENABLE_READ_TIME_RESOLVER_STORAGE_KEY_PREFIX: boolean,COMMENT
LOWpackages/relay-runtime/util/RelayFeatureFlags.js81COMMENT
LOWpackages/relay-runtime/util/RelayFeatureFlags.js101 // outer @catch(to: RESULT) to report {ok: false}, even though the innerCOMMENT
LOW…relay-runtime/store/RelayModernFragmentSpecResolver.js261 if (this._isMissingData === true) {COMMENT
LOW…relay-runtime/store/RelayModernFragmentSpecResolver.js341 setVariables(variables: Variables, request: ConcreteRequest): void {COMMENT
LOWpackages/relay-runtime/store/RelayPublishQueue.js101 // True if data was published without notifying, so the next `run()` must notCOMMENT
LOWpackages/relay-runtime/store/RelayStoreSubscriptions.js81COMMENT
LOWpackages/relay-runtime/store/NormalizationEngine.js721 parentOrigin,COMMENT
LOWpackages/relay-runtime/store/OperationExecutor.js561 // Both reads are confined to this method on purpose. Detecting theCOMMENT
LOWpackages/relay-runtime/store/OperationExecutor.js701 this._updater,COMMENT
LOWpackages/relay-runtime/store/RelayModernStore.js1061COMMENT
LOWpackages/relay-runtime/store/RelayReader.js821COMMENT
LOWpackages/relay-runtime/store/RelayReader.js2141 const {abstractKey} = node;COMMENT
LOWpackages/relay-runtime/store/RelayReader.js3261 // * `OutputType`/`WeakModel`: LiveResolverCache normalized the resolverCOMMENT
LOWpackages/relay-runtime/store/RelayReader.js3681COMMENT
LOW…elay-runtime/store/live-resolvers/LiveResolverCache.js861 // For weak models we have a simpler case. We simply need to update aCOMMENT
LOW…tests__/RelayReader-ShadowResolverStrongPlural-test.js61function titleOf(item: unknown): unknown {COMMENT
LOW…tests__/RelayReader-ShadowResolverClientObject-test.js61 // resolver compiles to a plain singular `ClientEdgeToClientObject` whoseCOMMENT
LOW…tests__/RelayReader-ShadowResolverClientObject-test.js261 expect(getCombinedPageTitle(data)).toEqual('Client Page Title');COMMENT
LOW…tests__/RelayReader-ShadowResolverClientObject-test.js381 // No `serverObjectOperations`, present record -> null traversal segment, soCOMMENT
LOW…RelayReader-ShadowResolverMixedInterfaceInline-test.js61describe('RelayReader shadow resolver mixed weak+value interface (read-in-place dispatch)', () => {COMMENT
LOW…s/relay-runtime/store/__tests__/readInlineData-test.js321COMMENT
LOW…ay-runtime/store/__tests__/NormalizationEngine-test.js161 });COMMENT
LOW…eferenceMarker-ShadowResolverServerValueInline-test.js21import RelayRecordSource from '../RelayRecordSource';COMMENT
LOW…tore/__tests__/RelayModernEnvironment-NoInline-test.js61 loadFragment: (operationReference: unknown) => ?NormalizationRootNode,COMMENT
LOW…__/RelayReader-ShadowResolverServerValueInline-test.js61 // (`PageStats`) compiles to a singular `ClientEdgeToClientObject` whose backingCOMMENT
LOW…y-runtime/store/__tests__/resolvers/ResolverGC-test.js981 recordIdsInStore: Array<DataID>,COMMENT
LOW…ct-relay/relay-hooks/useRefetchableFragmentInternal.js221 // If refetch was called, we expect to have a refetchQuery and queryRefCOMMENT
LOW…es/react-relay/relay-hooks/useIsOperationNodeActive.js21 getSelector,COMMENT
LOW…react-relay/relay-hooks/useQueryLoader_EXPERIMENTAL.js201 // query references in undisposedQueryReferences and dispose all ofCOMMENT
LOWpackages/react-relay/relay-hooks/useQueryLoader.js241 // Attempt to detect if the component wasCOMMENT
LOWpackages/react-relay/relay-hooks/useQueryLoader.js281 // - We are relying on the fact that sets iterate in insertion order, and weCOMMENT
LOWpackages/react-relay/relay-hooks/useEntryPointLoader.js161 // hidden (by Offscreen API), or fast refresh occurred;COMMENT
LOW…-relay/relay-hooks/useFragmentInternal_EXPERIMENTAL.js701 // need to re-render), but did affect the seen records. So if there were missed updatesCOMMENT
LOWpackages/react-relay/relay-hooks/loadQuery.js101 // This will ensure that every query reference that is created andCOMMENT
LOWpackages/react-relay/relay-hooks/loadQuery.js161 parentOperation: ?OperationDescriptor,COMMENT
LOWpackages/react-relay/relay-hooks/loadQuery.js241 // so we set this to true before deduping, to guarantee that the `source`COMMENT
LOW…_flowtests__/useBlockingPaginationFragment-flowtest.js81// $FlowFixMe[react-rule-hook]COMMENT
LOW…s/__tests__/useFragment-WithDeferAndLiveUpdate-test.js61const DEFER_LABEL =COMMENT
LOW.vscode/settings.json21 // compiler first.COMMENT
LOWcompiler/crates/relay-schema/src/definitions.rs41 .named(*RELAY_RESOLVER_WEAK_OBJECT_DIRECTIVE)?;COMMENT
LOWcompiler/crates/relay-schema/src/definitions.rs81 .iter()COMMENT
LOWcompiler/crates/relay-schema/src/definitions.rs161 let member = Type::Object(*object_id);COMMENT
LOWcompiler/crates/graphql-ir/src/build.rs101 /// The semantic of defining variables on a fragment definition.COMMENT
LOW…er/crates/relay-transforms/src/refetchable_fragment.rs61COMMENT
LOWcompiler/crates/relay-transforms/src/relay_resolvers.rs41pub(crate) use self::shadow_transform::selections_contain_shadow_return_marker;COMMENT
LOWcompiler/crates/relay-transforms/src/relay_resolvers.rs61 /// Reader/typegen pipeline: suppress the shadow transplant so it stays out ofCOMMENT
LOWcompiler/crates/relay-transforms/src/relay_resolvers.rs141impl RelayResolverFieldMetadata {COMMENT
LOW…mpiler/crates/relay-transforms/src/inline_fragments.rs41/// Expand fragment spreads into inline fragments containing the namedCOMMENT
LOW…relay-transforms/src/relay_resolvers_abstract_types.rs441 // could self-project a `ClientEdgeQuery` the operation pipeline suppresses).COMMENT
LOWcompiler/crates/relay-transforms/src/flatten.rs41type SeenLinkedFields = DashMap<PointerAddress, TransformedValue<Arc<LinkedField>>>;COMMENT
LOW…piler/crates/relay-transforms/src/generate_typename.rs41/// Transform to add the `__typename` field to any LinkedField that both a) returns anCOMMENT
LOW…s/relay-transforms/src/validate_operation_variables.rs21 pub remove_unused_variables: bool,COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs81 LazyLock::new(|| ArgumentName("clientEdgeSourceDocument".intern()));COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs121 server_object_operations: Vec<ClientEdgeServerObjectOperation>,COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs141 GenerateWaterfallOperations,COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs181}COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs741 }COMMENT
LOWcompiler/crates/relay-transforms/src/client_edges.rs821 let id_field_name = self.project_config.schema_config.node_interface_id_field;COMMENT
181 more matches not shown…
Hyper-Verbose Identifiers228 hits · 232 pts
SeverityFileLineSnippetContext
LOW…v13.0.0/guided-tour/updating-data/graphql-mutations.md100function commitFeedbackLikeMutation(CODE
LOW…v13.0.0/guided-tour/updating-data/graphql-mutations.md158function commitCommentCreateMutation(CODE
LOW…v13.0.0/guided-tour/updating-data/graphql-mutations.md243function commitFeedbackLikeMutation(CODE
LOW…v13.0.0/guided-tour/updating-data/graphql-mutations.md295function commitFeedbackLikeMutation(CODE
LOW…v13.0.0/guided-tour/updating-data/graphql-mutations.md378function commitCommentCreateMutation(CODE
LOW…13.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v13.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v14.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…14.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v14.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v15.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…15.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v15.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v20.1.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v20.1.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v20.1.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v20.1.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…20.1.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v20.1.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v17.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…17.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v17.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v16.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v16.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v16.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v16.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…16.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v16.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…/version-experimental/RelayHooks-AGuidedTourOfRelay.md2897function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v18.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v18.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v18.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v18.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
LOW…ating-data/imperatively-modifying-store-data-legacy.md68function commitCommentCreateMutation(CODE
LOW⚡…our/updating-data/imperatively-modifying-store-data.md86function commitCreateFeedbackMutation(CODE
LOW…18.0.0/guided-tour/updating-data/local-data-updates.md28function commitCommentCreateLocally(CODE
LOW…n-v18.0.0/guided-tour/list-data/advanced-pagination.md35function CombinedFriendsListComponent(props: Props) {CODE
LOW…e/versioned_docs/version-v19.0.0/tutorial/queries-2.md167export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v19.0.0/tutorial/queries-2.md262export default function PosterDetailsHovercardContents({CODE
LOW…e/versioned_docs/version-v19.0.0/tutorial/queries-2.md284export default function PosterDetailsHovercardContents({CODE
LOW…cs/version-v19.0.0/tutorial/interfaces-polymorphism.md123function PosterDetailsHovercardContentsBody({ poster }: Props): React.ReactElement {CODE
168 more matches not shown…
Structural Annotation Overuse117 hits · 218 pts
SeverityFileLineSnippetContext
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md16## Step 1: Create React AppCOMMENT
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md42## Step 2: Fetch GraphQL (without Relay)COMMENT
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md146## Step 3: When To Use RelayCOMMENT
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md151## Step 4: Adding Relay To Our ProjectCOMMENT
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md232## Step 5: Fetching a Query With RelayCOMMENT
LOW…/version-v13.0.0/getting-started/step-by-step-guide.md304## Step 6: Explore!COMMENT
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md301### Step 2: export the query for access from the parent componentCOMMENT
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md309### Step 3: Call useQueryLoader in the parent componentCOMMENT
LOW…e/versioned_docs/version-v14.0.0/tutorial/queries-2.md342### Step 4: Fetch the query in the event handlerCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md96 # Step 1: in the mutation response, spread an updatable fragment (defined below).COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md106 // Step 2: define an updaterCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md108 // Step 3: Access and nullcheck the feedback object.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md115 // Step 3: call store.readUpdatableFragmentCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md117 // Step 4: Pass it a fragment literal, where the fragment contains the @updatable directive.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md125 // Step 5: Pass the fragment reference.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md129 // Step 6: Mutate the updatableData object!COMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md16## Step 1: Create React AppCOMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md42## Step 2: Fetch GraphQL (without Relay)COMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md146## Step 3: When To Use RelayCOMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md151## Step 4: Adding Relay To Our ProjectCOMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md233## Step 5: Fetching a Query With RelayCOMMENT
LOW…/version-v14.0.0/getting-started/step-by-step-guide.md305## Step 6: Explore!COMMENT
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md301### Step 2: export the query for access from the parent componentCOMMENT
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md309### Step 3: Call useQueryLoader in the parent componentCOMMENT
LOW…e/versioned_docs/version-v15.0.0/tutorial/queries-2.md342### Step 4: Fetch the query in the event handlerCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md96 # Step 1: in the mutation response, spread an updatable fragment (defined below).COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md106 // Step 2: define an updaterCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md108 // Step 3: Access and nullcheck the feedback object.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md115 // Step 3: call store.readUpdatableFragmentCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md117 // Step 4: Pass it a fragment literal, where the fragment contains the @updatable directive.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md125 // Step 5: Pass the fragment reference.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md129 // Step 6: Mutate the updatableData object!COMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md16## Step 1: Create React AppCOMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md42## Step 2: Fetch GraphQL (without Relay)COMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md146## Step 3: When To Use RelayCOMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md151## Step 4: Adding Relay To Our ProjectCOMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md233## Step 5: Fetching a Query With RelayCOMMENT
LOW…/version-v15.0.0/getting-started/step-by-step-guide.md305## Step 6: Explore!COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md96 # Step 1: in the mutation response, spread an updatable fragment (defined below).COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md106 // Step 2: define an updaterCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md108 // Step 3: Access and nullcheck the feedback object.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md115 // Step 3: call store.readUpdatableFragmentCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md117 // Step 4: Pass it a fragment literal, where the fragment contains the @updatable directive.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md125 // Step 5: Pass the fragment reference.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md129 // Step 6: Mutate the updatableData object!COMMENT
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md301### Step 2: export the query for access from the parent componentCOMMENT
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md309### Step 3: Call useQueryLoader in the parent componentCOMMENT
LOW…e/versioned_docs/version-v17.0.0/tutorial/queries-2.md342### Step 4: Fetch the query in the event handlerCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md96 # Step 1: in the mutation response, spread an updatable fragment (defined below).COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md106 // Step 2: define an updaterCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md108 // Step 3: Access and nullcheck the feedback object.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md115 // Step 3: call store.readUpdatableFragmentCOMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md117 // Step 4: Pass it a fragment literal, where the fragment contains the @updatable directive.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md125 // Step 5: Pass the fragment reference.COMMENT
LOW⚡…our/updating-data/imperatively-modifying-store-data.md129 // Step 6: Mutate the updatableData object!COMMENT
LOW…/version-v17.0.0/getting-started/step-by-step-guide.md16## Step 1: Create React AppCOMMENT
LOW…/version-v17.0.0/getting-started/step-by-step-guide.md42## Step 2: Fetch GraphQL (without Relay)COMMENT
LOW…/version-v17.0.0/getting-started/step-by-step-guide.md146## Step 3: When To Use RelayCOMMENT
LOW…/version-v17.0.0/getting-started/step-by-step-guide.md151## Step 4: Adding Relay To Our ProjectCOMMENT
LOW…/version-v17.0.0/getting-started/step-by-step-guide.md233## Step 5: Fetching a Query With RelayCOMMENT
57 more matches not shown…
Decorative Section Separators42 hits · 99 pts
SeverityFileLineSnippetContext
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs886 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs888 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs914 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs916 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs928 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs930 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs988 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs990 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1050 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1052 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1158 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1160 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1183 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1185 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1240 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1242 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1266 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1268 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1298 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1300 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1322 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1324 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1376 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1378 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1471 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1473 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1504 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1506 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1532 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1534 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1573 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1575 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1647 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1649 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1732 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1734 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1871 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUM…mpiler/crates/schema-set/src/find_subset_violations.rs1873 // ───────────────────────────────────────────────────────────────COMMENT
MEDIUMcompiler/crates/schema-coordinates/src/lib.rs387 // ── parse_schema_coordinate (strict) ────────────────────────────COMMENT
MEDIUMcompiler/crates/schema-coordinates/src/lib.rs568 // ── parse_schema_coordinate_best_effort ─────────────────────────COMMENT
MEDIUMcompiler/crates/schema-coordinates/src/lib.rs739 // ── Display ─────────────────────────────────────────────────────COMMENT
MEDIUMcompiler/crates/schema-coordinates/src/lib.rs817 // ── Ord ───────────────────────────────────────────────────────────COMMENT
Fake / Example Data41 hits · 47 pts
SeverityFileLineSnippetContext
LOW…ocs/version-v13.0.0/guides/testing-relay-components.md96 return "Lorem Ipsum"CODE
LOW…ocs/version-v14.0.0/guides/testing-relay-components.md96 return "Lorem Ipsum"CODE
LOW…ocs/version-v15.0.0/guides/testing-relay-components.md96 return "Lorem Ipsum"CODE
LOW…ocs/version-v20.1.0/guides/testing-relay-components.md104 return "Lorem Ipsum"CODE
LOW…ocs/version-v17.0.0/guides/testing-relay-components.md104 return "Lorem Ipsum"CODE
LOW…ocs/version-v16.0.0/guides/testing-relay-components.md96 return "Lorem Ipsum"CODE
LOW…ocs/version-v18.0.0/guides/testing-relay-components.md104 return "Lorem Ipsum"CODE
LOW…ocs/version-v19.0.0/guides/testing-relay-components.md104 return "Lorem Ipsum"CODE
LOW…ocs/version-v20.0.0/guides/testing-relay-components.md104 return "Lorem Ipsum"CODE
LOWpackages/relay-runtime/store/OperationExecutor.js106 readonly kind: 'placeholder',CODE
LOWpackages/relay-runtime/store/OperationExecutor.js1289 resultForLabel.set(pathKey, {kind: 'placeholder', placeholder});CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1035 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1044 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1053 exclamation: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1189 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1195 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1201 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1209 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1245 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1250 at: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1258 colon: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1260 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1269 colon: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1271 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1380 colon: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1382 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1391 token: dummy_token(Span::empty()),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1400 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1409 token: dummy_token(span),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1416 token: dummy_token(value.location.span()),CODE
LOW⚡compiler/crates/relay-docblock/src/ir.rs1421fn dummy_token(span: Span) -> Token {CODE
LOWcompiler/crates/relay-docblock/src/ir.rs409 at: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs485 at: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs813 equals: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1081 at: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1367 colon: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1369 token: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1468 at: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1486 exclamation: dummy_token(span),CODE
LOWcompiler/crates/relay-docblock/src/ir.rs1500 at: dummy_token(span),CODE
LOWcompiler/crates/schema-set/src/ir_collector.rs349 // we might insert __typename as a "placeholder" field. So we should not explicitly add all impls when encounterCOMMENT
AI Response Leakage9 hits · 45 pts
SeverityFileLineSnippetContext
HIGH…versioned_docs/version-v13.0.0/guides/type-emission.md273Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v14.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v15.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v20.1.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v17.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v16.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v18.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v19.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
HIGH…versioned_docs/version-v20.0.0/guides/type-emission.md268Consider a component that [composes](../../guided-tour/rendering/fragments/#composing-fragments) the above fragment compCODE
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICAL…docs/version-classic/Classic-APIReference-Container.md375 {this.props.viewer.feed.edges.map(CODE
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMcompiler/crates/graphql-syntax/src/node/type_system.rs287/// to type method usages that utilize this trait and call into_definition().COMMENT
MEDIUMcompiler/crates/schema-set/src/set_merges.rs511 // The lowest-common-denominator of a nullable and nonnull output is a nullable output, as the consumer must be COMMENT
Verbosity Indicators4 hits · 6 pts
SeverityFileLineSnippetContext
LOWcompiler/crates/schema/src/in_memory.rs808 // Step 1: build the type_map from type names to type keysCOMMENT
LOWcompiler/crates/schema/src/in_memory.rs899 // Step 2: define operation types, directives, and typesCOMMENT
LOWcompiler/crates/relay-lsp/src/goto_definition.rs311 // Step 1: does extra_data_provider know anything about this field?COMMENT
LOWcompiler/crates/relay-lsp/src/goto_definition.rs329 // Step 2: is field a standalone graphql file?COMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOW…ay/relay-hooks/legacy/useBlockingPaginationFragment.js193 // TODO: Handle error; we probably don't want to throw an errorCOMMENT
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippetContext
LOWscripts/release-notes.js83function getData() {CODE