When Dependencies Become Lemons: A Multivocal Review of Cheap Trust Signal Collapse in the Software Supply Chain
DOI: https://doi.org/10.1145/3848003.3848016
SCORED '26: Conference on Software Supply Chain Offensive Research and Ecosystem Defenses, Prague, Czech Republic, October 2026
Practitioners evaluating open-source dependencies rely on cheap trust signals, e.g., stars and contributor activity, as substitutes for direct code inspection, assuming those signals reflect genuine trustworthiness. Prior work has documented individual signal gaming, but the landscape of collapses across all dependency-adoption signals, as well as the ecosystem's response, remains unexplored. The goal of this study is to aid software practitioners in understanding the reliability of dependency adoption trust signals, such as download counts and contributor activity, by analyzing multivocal literature on signal manipulation and practitioners’ responses.Coding 252 Google Search sources and 870 Reddit threads, we find that cheap trust signals collapse under three simultaneous forces: adversarial manipulation, gaming indistinguishable from legitimate behavior, and non-adversarial AI-driven inflation. Within our corpus, documented responses are more advice than action. Responses proposed substituting one cheap signal for another or aggregating multiple signals, which are now also gameable. Non-adversarial inflation, i.e., by the emergence of legitimate AI tooling, lacks documented actual behavior change in either corpus. The gap between known remedy and actual practice points toward a market for lemons: when faking signals costs less than earning them, good and bad dependencies become indistinguishable. Relying on individual practitioners to verify the cheap signals is not sustainable. Costlier signals, such as cryptographic attestation, should be made mandatory so that they become the default for all, not a voluntary choice for the few.
ACM Reference Format:
Ranindya Paramitha, Christian Kästner, and Laurie Williams. 2026. When Dependencies Become Lemons: A Multivocal Review of Cheap Trust Signal Collapse in the Software Supply Chain. In Conference on Software Supply Chain Offensive Research and Ecosystem Defenses (SCORED '26), October 06, 2026, Prague, Czech Republic. ACM, New York, NY, USA 11 Pages. https://doi.org/10.1145/3848003.3848016
1 Introduction
When adopting an open-source dependency, do you read the source code, or do you rely on signals such as stars and contributor activity to infer its trustworthiness? Prior empirical work confirms that practitioners do the latter [14, 30, 45], and until recently, that was reasonable. In May 2026, a rogue AI agent operating under a Fedora developer's compromised credentials spent weeks submitting patches and responding to reviewer objections with LLM-generated justifications [4, 5]. The motive remains unconfirmed because the behavior was indistinguishable from that of a legitimate contributor, regardless of intent, similar to the xz utils incident [9]. Even if this incident is not definitive evidence of adversarial intent, it illustrates a broader shift: trust signals for adopting dependencies have long been gamed, but AI is now eroding many signals at once, and fast. With AI, producing convincing stars, commit histories, documentation, and community endorsements at scale is now cheap. The cost gap between honest and malicious signal production is collapsing, pushing the open-source dependencies ecosystem toward a market for lemons, where developers cannot distinguish trustworthy packages from untrustworthy ones [1]. Prior work has documented the manipulation of individual signals: fake stars [15], inflated downloads [31], injected documentation [17], and maintainer social engineering [9]. Yet, no systematic consolidation across the full range of dependency adoption signals and the ecosystem's responses has been done.
The goal of this study is to aid software practitioners in understanding the reliability of dependency adoption trust signals, such as download counts and contributor activity, by analyzing multivocal literature on signal manipulation and practitioners’ responses. Our MLR [10] combines formal academic publications with practitioner sources, across eight trust signals: GitHub stars, download counts, documentation quality, AI-inflated contributor activity, adversarially mimicked contributor activity, platform-awarded achievement badges, issue response quality, and community endorsement. We coded the Google Search sources using a deductive two-pass scheme addressing two research questions:
RQ1: What mechanisms are documented as causing cheap trust signals in the software supply chain to collapse?
RQ2: What does the multivocal literature record as the ecosystem's response to this collapse, and where does that response fall short?
The coding captured the manipulation technique, adversarial intent, ecosystem response type, and changes in reliance on signals for each source. We assessed intercoder reliability by comparing first-author manual codings with LLM codings on a 40-source sample across three calibration rounds, achieving over 70% agreement across all RQ1 fields. We also independently analyzed the 252 Google Search sources and the 870 Reddit threads using LLM-assisted thematic coding [33]. This analysis produces separate codebooks of codes and practitioner quotes that provide qualitative support and direct practitioner voice for the quantitative patterns identified through the manual coding scheme.
Our analysis confirmed previous work that the economics of cheap trust signals have inverted: faking now costs less than earning. Legitimate AI tools, deliberate attackers, and honest actors can all produce identical signal outputs, making collapse a structural property of the signals themselves rather than purely a detection problem. Sophisticated attacks compound this by reconstructing the entire trust envelope simultaneously, rendering composite evaluation ineffective. The documented response is mostly advice without action: 54.6% of Google Search sources recommend what practitioners should do but document limited evidence of practitioners actually doing so. The recommended substitutes are predominantly cheap signals already documented as gameable, and signal inflation caused by legitimate AI tooling lacks documented responses that lead to actual behavior change.
In summary, our contributions are:
- A multivocal corpus of 252 Google Search sources and 870 Reddit threads on trust signal manipulation and ecosystem response across eight dependency adoption signals, with an available codebook and annotated dataset;
- Corpus-based findings on the mechanisms causing cheap trust signals to collapse, documenting ten manipulation mechanism categories across eight signals and distinguishing adversarial, ambiguous, and non-adversarial degradation vectors;
- Corpus-based findings on the ecosystem's documented responses to trust signal collapse, characterizing response types, trust direction changes, and proposed signal alternatives across eight signals;
- Role-based recommendations for practitioners, platform operators, tool builders, and policy makers, grounded in signaling theory [43], Goodhart's Law [13], and Akerlof's market for lemons [1].
We discuss the background and related work in Section 2 and the methodology in Section 3. We then present the results of the analysis in the results sections (§4–5). We acknowledge the study's limitations in Section 6 and conclude the paper with a discussion and implications in Section 7.
2 Background and Related Works
2.1 Trust and Signals in the Software Supply Chain
According to Mayer et al. [23], trust is the willingness of one party to accept vulnerability to the actions of another, based on positive expectations about that party's conduct. In the software supply chain, open-source software reuse scales through dependency: developers extend trust by incorporating code written by others, relying on the assumption that the dependency behaves as expected [29]. Modern applications routinely incorporate hundreds of transitive dependencies [42], making direct verification impractical and creating a structural reliance on observable signals as proxies for trustworthiness before adoption. Signaling theory [43] explains why these signals can be informative: a signal carries information only when the marginal cost of producing it is lower for high-quality producers than for low-quality ones, also known as the single-crossing condition. When this condition holds, a separating equilibrium exists in which trustworthy and untrustworthy dependencies are distinguishable, allowing downstream users to infer quality without direct inspection [43]. Practitioners consult these signals when evaluating dependencies, including stars, download counts, contributor activity, documentation quality, and community endorsements [7, 14, 30, 34, 45].
When low-quality producers can produce the signal at a cost that no longer separates them from the high-quality ones, the separating equilibrium collapses into a pooling equilibrium in which the signal carries no meaningful information [43]. We use “collapse” to describe a signal that no longer reliably proxies trustworthiness, i.e., it can be produced as cheaply by untrustworthy actors as by trustworthy ones. The market drifts toward the lemon equilibrium Akerlof predicted: downstream users cannot distinguish good dependencies from bad, and the ecosystem as a whole loses the trust that made cheap reuse possible [1]. Goodhart's Law [13] describes how this collapse is triggered: once practitioners rely on a metric (signal) to make decisions, it becomes worth gaming and thus stops measuring what it was supposed to measure. Together, three theoretical lenses: signaling costs, Goodhart's targeting dynamic, and adverse selection, ground this study's analysis and distinguish it from prior empirical work on how practitioners behave when trusting open-source dependencies [30, 37, 45].
2.2 Signal Gaming and Ecosystem Responses
Prior work has documented the manipulation of individual trust signals in isolation. Coordinated bot networks inflated star counts [15], automated install loops and mirror infrastructure inflated downloads [41], and AI-generated READMEs simulated project legitimacy [17]. Multi-year social engineering earned co-maintainer status [9], and planted user-generated content manipulated AI retrieval pipelines [47]. Each study examines a single signal, mechanism, or incident; this study contributes a cross-signal synthesis of manipulation mechanisms, intentions, and ecosystem response. Empirical studies of signal use [14, 30, 37, 45] document current adoption practices and, to our knowledge, have not yet examined responses to disclosed signal failure. Existing attack taxonomies [20, 26] focus on artifact-level compromises (code injection, credential theft, build-infrastructure attacks) and their technical safeguards. Trust signal manipulation, which targets perceived rather than actual project trustworthiness, falls largely outside their scope, and the two bodies of literature appear currently unconnected. Platform and regulatory responses appear in the literature (e.g., platform decisions about which signals to display [32]), but, to our knowledge, mostly as individual case studies rather than a full landscape. Whether such responses collectively address the collapse, and how widely they are adopted, remain open questions this study addresses.
2.3 Multivocal Reviews in Software Engineering
A Multivocal Literature Review (MLR) systematically includes both formal academic publications (white literature) and informal practitioner sources such as blog posts, forum threads, and vendor reports [10]. MLRs are particularly well-suited to topics in which practitioner knowledge is documented primarily outside academic venues. For trust signal manipulation, pricing data for fake-star services, incident reports, and platform/practitioners’ responses appear predominantly in grey literature. Prior MLRs in software engineering have applied the methodology to topics including DevSecOps practices [24, 48], non-technical debt [36], and software testing [11]. These MLRs establish grey literature as a valid and necessary source for capturing practitioner knowledge in software engineering. In the software supply chain security domain, existing studies [20, 35, 46], to our knowledge, have not extensively explored trust-signal manipulation and practitioner responses. This study applies the MLR methodology to the software supply chain trust-signal domain, combining 252 Google Search sources and 870 Reddit threads across eight signal categories to provide a cross-signal, cross-tier synthesis.
3 Methodology
We conducted a Multivocal Literature Review (MLR), which systematically includes both formal academic publications (white literature) and informal practitioner sources such as blog posts, forum threads, public videos, vendor reports, and grey literature [10]. We chose an MLR over a traditional systematic literature review to capture practitioners’ responses, which are documented predominantly outside academic venues. For example, pricing data for fake-star services, practitioner accounts of signal gaming, and platform responses appear more in grey literature than in white literature.
| Code | Longer explanation | # |
| S1a:stars | GitHub stars as popularity signal [7, 34, 45] | 40 |
| S1b:downloads | Download counts as popularity signal [30] | 46 |
| S2:documentation | documentation quality (README, API docs, in-repository examples) [34] | 14 |
| S3a:activity-legitimate | contributor activities (commit frequency and history) [14, 30, 45], specifically legitimate activity that can be inflated because of AI tools usage | 33 |
| S3b:activity-mimicry | contributor activities (commit frequency and history) [14, 45], specifically mimicry activity that inflates the numbers | 54 |
| S4:platform-awarded-achievements | achievement badges | 11 |
| S5:issue-response | issue response time and quality [30, 45] | 17 |
| S6:community-endorsement | Stack Overflow, Reddit, forum recommendations [30] | 37 |
| Total | 252 | |
3.1 Corpus Construction
To construct a corpus for our MLR, we first define the signals in scope, then search and retrieve sources using Google Search. We then applied inclusion and exclusion criteria to get the final corpus. We also performed an additional gray literature retrieval on Reddit using a script adapted from a publicly available tool [2].
Signals in Scope. We organized the corpus around eight trust signals that were identified through a preliminary review of the software engineering literature on dependency adoption decisions [7, 14, 30, 34, 45]. Table 1 summarizes the signals. The separation between S3a and S3b reflects a coding decision made during querying: sources documenting AI-driven activity inflation (non-adversarial) and sources documenting deliberate activity spoofing (adversarial) required separate treatment because their mechanisms and implications differ.
Search and Retrieval. For each of the eight signals, we identified candidate search vocabulary through an LLM-assisted exploratory pre-search (with claude-sonnet-4-6), following a consistent structure: signal name combined with a manipulation or fakery term and a platform or context qualifier (e.g., GitHub stars manipulation inflate popularity for S1a:stars). Some signals required multiple iterations before supply-chain-context vocabulary emerged. Using that vocabulary, we constructed a maximum of three each of (1) anchor queries, i.e., narrow queries that name a specific known incident/paper to find a specific source and snowball (backward/forward) from that source; and (2) seed queries, i.e., broad, single-concept queries to build a corpus across grey literature. We executed each anchor and seed query on Google Search and took all links on Google's first page, including academic papers, blog posts, social media discussions, and YouTube videos. We supplemented the corpus by (1) targeted browsing of practitioner platforms, including Hacker News and dev.to, Medium, and Stack Overflow; (2) snowballing from the anchor sources. We also retrieved vendor and institutional reports on open-source and software supply chain security from Sonatype [41] and Snyk [40]. We conducted retrieval between July 1st and 19th, 2026, yielding 321 candidate sources. We report all queries in the supplementary materials [28].
Inclusion and Exclusion. Sources were included if they met all of the following criteria: (1) the source discusses at least one of the eight trust signals by name or by clear functional description; and (2) the source is publicly accessible in English. Sources were excluded if they discussed software quality or security in general terms without reference to any of the eight signals. After applying the inclusion and exclusion criteria, we retained 252 sources for coding. We also applied a post hoc software supply chain relevance classification using an LLM-assisted classifier (claude-sonnet-4-6) to assess whether each source is related to the software supply chain (e.g., dependency adoption). We used this classification only for corpus characterization and did not use it to make inclusion decisions: we retained sources documenting signal collapse in non-software supply chain contexts because they provide the only available evidence for signals, particularly S3a:activity-legitimate, S4:platform-awarded-achievements, and S5:issue-response. The formal literature has not yet widely discussed manipulating those signals as a software supply chain concern. We retained sources reporting the same underlying incident separately when their text differed. Exact-duplicate texts (e.g., syndicated reposts) were retained only once. For sources discussing more than one trust signal, we assigned them to Table 1 based on their primary focus, i.e., the signal most extensively discussed. Secondary signal mentions were captured in the coding scheme's mechanism_tech_2 field.
Additional Gray Literature. We also separately retrieved 95,190 Reddit threads from 2023-2026; an LLM judged 870 as relevant to this study with high confidence, and each had a post score > 0. This retrieval uses a script adapted from a publicly available gray literature review tool [2].
Final Corpus. After collection and filtering, we have a final Google Search corpus comprising 252 sources across 8 signals. S3b:activity-mimicry is the largest category (54 sources), reflecting the volume of incident reporting around commit spoofing and social engineering. On the other hand, S2:documentation is the smallest (14 sources), a gap we acknowledge as a corpus limitation. Source tiers follow the MLR convention [10]: Tier 1 comprises peer-reviewed academic publications (n=49; 19.4%), Tier 2 comprises grey literature from identifiable organizations with editorial oversight (vendor reports, institutional publications, and journalistic sources; n=63; 25.0%), and Tier 3 comprises practitioner-authored grey literature without formal editorial review (blog posts, forum threads, and social media posts; n=140; 55.6%). The post hoc relevance classification found that 152 sources (60.3%) are directly related to software supply chain security, while 100 (39.7%) document the relevant signals in adjacent contexts without an explicit software supply chain framing. Additionally, we have 870 relevant Reddit threads from the gray literature review tool. Both corpora are made available in the replication package [28]. In the result, we refer to sources from Google Search as ⟨ DX⟩ and from the tool's Reddit threads as ⟨ RX⟩, with X as the ID number.
3.2 Analysis
We first developed a coding scheme and then coded the 252 Google Search sources. We also run a thematic analysis coding using a tool inspired by [33] on both the 252 Google Search sources and 870 Reddit threads separately.
Google Search Corpus Coding Scheme. We developed deductively a two-pass coding scheme addressing each research question separately. RQ1 coding captures the mechanism by which each signal is manipulated or structurally degraded; RQ2 coding captures the actors’ responses in the ecosystem. The coding scheme is summarized in Table 2. For RQ1, each source was first coded in the field rq1_applies (YES / PARTIAL / NO), which indicates whether the source documents a specific manipulation mechanism or only references signal unreliability in passing. For sources with rq1_applies YES / PARTIAL, we also code (1) mechanism_tech: primary/secondary manipulation technique; and (2) mechanism_adversarial: intent behind the mechanism. For RQ2, each source was first coded with rq2_applies (YES/NO), indicating whether the source contains a practitioner, platform, or researcher voice in the response. For the sources with rq2_applies YES, we also coded (1) statement_type: the type of the documented response, distinguishing advice from reported enacted actions); (2) trust_direction: the documented change in signal reliance; and (3) alt_signal: free-text specific alternative signal/s proposed in the source.
| Code | Explanation |
| RQ1 — Mechanism Technique (MT): manipulation method/s | |
| MT-BOT | Coordinated fake-account networks or automated non-AI scripts that generate stars, downloads, or activity signals at scale |
| MT-AI-AGENT | AI coding agents (e.g., Claude Code, Cursor) inflating commits, pull requests, or activity signals as a structural side-effect of normal development |
| MT-SPOOF | Falsification of commit metadata, authorship attribution, or timestamps to impersonate reputable contributors |
| MT-CRED | Credential or token theft enabling attackers to publish malicious package versions under a trusted maintainer identity |
| MT-SOC-ENG | Social engineering to acquire trust in a signal or actor, e.g., gaining trust as a maintainer or gaining trust for a specific package |
| MT-UGC-PLANT | Planting promotional text in user-generated content platforms (Reddit, Stack Overflow, forums) for both people and AI retrieval |
| MT-DOC-FAKE | AI-generated or injected README files, documentation, or in-repository content simulating project legitimacy |
| MT-PKG-INJ | Injection of malicious code into an existing package via a compromised release, typosquatting, or namespace confusion |
| MT-BADGE-GAME | Activity to unlock GitHub achievement badges or other platform-awarded trust markers |
| MT-HALLUC | Exploitation of LLM-hallucinated package names: registering non-existent packages that AI coding tools recommend |
| MT-OTHER | Documented manipulation mechanism not captured by the above categories |
| RQ1 — Mechanism Adversarial (MA): intent behind the mechanism | |
| MA-ADV | Deliberate deception with intent to mislead: the mechanism is specifically deployed to harm or deceive receivers |
| MA-AMB | Mechanism technique can be used for both legitimate and adversarial intent at the signal level: honest and dishonest actors produce identical outputs |
| MA-NON | Non-adversarial structural inflation: signal degradation as a side-effect of legitimate tooling with no deceptive intent |
| RQ2 — Statement Type (ST): epistemic status of the documented response | |
| A — Stated only | Advice, recommendation, or stated concern without any described enacted action |
| B — Revealed only | A specific action described by the source author without explicitly stated concern |
| C — Coupled | A described action explicitly linked to a stated concern by the source author |
| D — Analyst-inferred | The coder infers a response from indirect evidence; the source does not directly state a response |
| RQ2 — Trust Direction (TD): recorded change in signal reliance | |
| no change | Source acknowledges no change in signal use |
| signal abandoned | Source records ceasing use of the signal with no stated replacement |
| signal downweighted | Source records continued use of the signal with reduced weight or increased scrutiny, e.g., added verification or other signals as composite |
| signal reaffirmed | Source argues the signal remains useful or reliable despite documented manipulation |
| signal replaced | Source records switching to a different signal entirely, no longer consulting the original |
Google Search Corpus Coding Procedure proceeded in two phases. 1. Two coders coded a selected 40 sources. We pre-selected a sample of 40 sources, with a balanced number of sources per signal and document tier. These 40 sources are coded both manually by the first author and by a large language model (LLM) (claude-sonnet-4-6) via the Anthropic API for RQ1 and RQ2. We prompted the LLM with the full codebook and the extracted source text. We assessed intercoder reliability in this sample by comparing the first author's manual codings with LLM codings. We calibrate the LLM prompt over three rounds, and for the fields with agreement $> 70\%$ (all RQ1 coding fields), we use the LLM as a single coder in the next phase. 2. Single coding on the rest. In this phase, LLM coded the rest of the corpus for RQ1 (agreement on sample $> 70\%$), and the first author coded the rest for RQ2.
We report Krippendorff's alpha and Cohen's kappa (both at the nominal level) alongside percentage agreement, using percentage agreement as the primary threshold criterion: fields were accepted for single-coding when agreement exceeded 70%, consistent with recommendations for skewed-distribution coding tasks where kappa is artificially depressed by base-rate effects [6, 19]. All RQ1 closed-code fields exceeded the 70% threshold after three rounds of prompt calibration: rq1_applies (82.5% agreement; κ =0.492, α =0.491), mechanism_tech_1 (82.5%; κ =0.798, α =0.798), mechanism_tech_2 (70.0%; κ =0.456, α =0.444), and mechanism_adversarial (80.0%; κ =0.702, α =0.698). We note a methodological limitation in this reliability assessment: we used the same 40-source sample to calibrate the LLM prompt across three rounds and to estimate agreement. We did not use a separate held-out validation set, so the reported agreement may be optimistic relative to unseen sources. The first author coded RQ2 fields manually, as the LLM's reliability for trust_direction was insufficient (agreement $< 70\%$).
LLM-assisted Thematic Coding. For both the Google Search corpus and the 870 Reddit threads, we ran the LLM-assisted thematic coding tool (inspired by and built on Qiao et al.’s [33]) separately. The tool produced codebooks incrementally using two coder agents, one aggregator agent, and one reviewer agent. The coders assign codes, the aggregator aggregates similar codes, and the reviewer performs the final review before producing the incremental codebooks. The tool produces a codebook containing codes and quotes that support our findings.
4 RQ1 Results: Signal Collapse Mechanisms
Of the 252 articles in the corpus, 167 (66.3%) documented a specific manipulation mechanism. Table 3 shows that the mechanism landscape is heterogeneous. Stars are overwhelmingly gamed by coordinated bot networks (MT-BOT in 31 of 32 Google Search sources). Activity signals are gamed with both deliberate spoofing and legitimate AI inflation. AI-generated content mostly degrades documentation, while community endorsement is gamed for both AI retrieval and human persuasion. Three signals: activity-legitimate (S3a), badges (S4), and issue-response (S5) are documented almost entirely outside software supply chain-specific literature (9%, 0%, and 6% of the Google Search corpus are SSC-related, respectively), appearing instead in developer tooling and AI adoption research. Yet, the literature has previously found that developers use these signals when choosing dependencies [7, 14, 30, 34, 45]. Findings involving S3a, S4, and S5 should therefore be read as evidence from adjacent, AI-adoption-focused contexts rather than software-supply-chain-specific findings. We flag this distinction wherever we discuss these three signals below. This heterogeneity of mechanisms shows that no single intervention addresses the collapse across signals. The three findings below identify patterns that cut across this diversity.
Mechanism counts reflect primary codes only; sources may carry a secondary mechanism code.
| Signal | n | Mechanisms |
| S1a:stars | 32 | 31 (97%) MT-BOT, |
| 1 (3%) MT-BADGE-GAME | ||
| S1b:downloads | 25 | 9 (36%) MT-BOT, |
| 8 (32%) MT-CRED, | ||
| 6 (24%) MT-PKG-INJ, | ||
| 1 (4%) MT-HALLUC, | ||
| 1 (4%) MT-AI-AGENT | ||
| S2:documentation | 8 | 6 (75%) MT-DOC-FAKE, |
| 2 (25%) MT-HALLUC | ||
| S3a:activity-legitimate | 19 | 19 (100%) MT-AI-AGENT |
| S3b:activity-mimicry | 46 | 21 (46%) MT-SPOOF, |
| 9 (20%) MT-SOC-ENG, | ||
| 6 (13%) MT-DOC-FAKE, | ||
| 4 (9%) MT-CRED, | ||
| 4 (9%) MT-BOT, | ||
| 1 (2%) MT-PKG-INJ, | ||
| 1 (2%) MT-OTHER | ||
| S4:platform-awarded-achievements | 6 | 6 (100%) MT-BADGE-GAME |
| S5:issue-response | 6 | 3 (50%) MT-AI-AGENT, |
| 2 (33%) MT-PKG-INJ, | ||
| 1 (17%) MT-BOT | ||
| S6:community-endorsement | 25 | 13 (52%) MT-UGC-PLANT, |
| 4 (16%) MT-SOC-ENG, | ||
| 4 (16%) MT-CRED, | ||
| 4 (16%) MT-HALLUC |
Finding #1: Cheap trust signals in the software supply chain are collapsing: faking costs less than earning them, legitimate and adversarial actors produce identical signal outputs, and for some signals, the collapse is happening with no attacker involved at all.
Trust signals in the software supply chain were originally effective because producing them required genuine effort. Building a project that attracted real users/downloads (S1), maintaining it over time (S3), and earning community recognition (S6) all impose real costs on the trustee. This cost asymmetry is what made those signals informative: legitimate projects could produce the signals more cheaply than impostors, creating a separating equilibrium between trustworthy and untrustworthy packages [43]. Our corpora document that this asymmetry has collapsed.
First, the cost of adversarial manipulation has fallen to commodity levels. S1a:stars are cheap ⟨ D1.1, D1.3, D1.4, D1.8, D1.10, D1.11, D1.17, D1.32, R12, R41, R51, R95, R102, R185, R191, R204, R494, R713, R768, R816⟩ : they cost $0.03–$0.85 from publicly listed vendors; one Google Search source documents 63,872 suspected fake accounts through a single campaign. A Hacker News commenter described the collapse directly and independently named the Goodhart dynamic behind it ⟨ D1.31⟩. S1b:downloads are inflated through credential theft and automated install loops ⟨ D2.2, D2.3, D2.14, D2.18, D2.24, R494, R515, R549, R741, R806⟩. S2:documentation that once required sustained effort is now generated by AI in seconds ⟨ D3.3, D3.4, D3.8, D3.12, D3.14, D3.17, D3.22⟩. S3:activity is also inflated: a practitioner in r/cybersecurity documented a 2-month campaign using 270+ commits to simulate legitimate development history before deploying malicious code ⟨ R477⟩. This pattern is the same trust-building pattern previously associated with high-value infrastructure attacks, now economically viable against smaller targets.
Second, 38.3% of documented mechanisms in the Google Search corpus exploit techniques that are structurally indistinguishable from legitimate behavior at the signal level (MA-AMB). Soliciting stars from genuine community members (S1a), optimizing content for AI retrieval (S6), and using AI to generate documentation (S2) are actions honest project owners also perform. Thus, separating the adversarial and honest signals is difficult because the signals leave no trace of their motivation.
Third, 14.4% of mechanism-applicable Google Search sources (24 of 167) document non-adversarial structural inflation (MA-NON) with no deceptive actor involved. AI coding agents generate 275 million commits per week on GitHub, with commits rising 180% while releases rose only 30% ⟨ D5.5, D5.6, D5.9, D5.10, D5.13, D5.31, R52, R206, R346, R373, R455, R465, R551, R638, R671, R841, R842⟩, inflating activity signals (S3a, adjacent-context evidence) as a structural side-effect of legitimate development tooling. These sources show that signals for contributor activity (S3a), badges (S4), and issue response (S5) are collapsing even in the absence of any attacker. Together, these three directions mean that even a perfect detector that can identify every bot account, coordinated campaign, and stolen credential would still face 52.7% of the documented manipulation landscape in the Google Search corpus for which detection is not a meaningful concept. The signals are not failing because attackers are too sophisticated to be detected, but because the same observable properties of those signals can be produced by honest effort, legitimate tooling, and deliberate manipulation alike, leaving no signal-level trace of their motivation [1].
| Code | # | % |
| Statement type | ||
| A — Stated only | 89 | 54.6% |
| D — Analyst-inferred | 44 | 27.0% |
| C — Coupled | 26 | 16.0% |
| B — Revealed only | 4 | 2.5% |
| Trust direction | ||
| Signal downweighted | 89 | 54.6% |
| Signal replaced | 36 | 22.1% |
| Signal reaffirmed | 17 | 10.4% |
| No change | 3 | 1.8% |
| Signal abandoned | 1 | 0.6% |
| Trust direction not determinable | 17 | 10.4% |
| Proposed alternative signal/s (n=49) | ||
| Cheap observable signals (fork ratios, issue quality, commit history, contributor activity) | 32 | 65.3% |
| Expensive / hard-to-fake signals (commit signing, provenance, SBOM, attestation) | 17 | 34.7% |
Finding #2: The most sophisticated attacks do not manipulate a single signal; they reconstruct the entire appearance of a trustworthy project, rendering composite signal checks ineffective.
When individual signal manipulation risks detection, the documented attacker response is not to abandon the manipulation but to manipulate more signals. The secondary mechanism distribution provides empirical evidence for this escalation: MT-PKG-INJ appears as a secondary code in 14.4% of Google Search sources and consistently co-occurs with primary mechanisms, including MT-SOC-ENG and MT-DOC-FAKE, rather than appearing as a standalone technique. The following campaigns are examples with multiple gamed signals.
GitVenom [17] combined fabricated README files, spoofed commit histories, and package injection to simultaneously manipulate S2:documentation and S3b:activity-mimicry ⟨ D3.1, D3.2, D3.3, D3.4, D3.10, D3.11⟩. The ESLint compromise [16] manipulated three signals via a single campaign: credential theft (S3b), phishing-harvested maintainer identity (S3, S6), and malicious package publication (S1b) ⟨ D6.16, D6.17, D6.20, D6.22⟩. The xz utils attack [9] invested two years of genuine commit activity (S3b) and sustained community participation (S6) before deploying its payload ⟨ D6.1, D6.7, D6.8, R98, R100, R108, R110, R112, R157, R196, R220, R237, R331, R549, R593, R673⟩. The May 2026 Fedora incident extended this pattern to AI-assisted execution: an agent under compromised credentials simultaneously manipulated S3:activity, S5:issue-response, and S2:documentation with justifications that “eventually overwhelmed the maintainer into merging the fix” [4, 5]. A practitioner in r/netsec observes the same envelope-reconstruction logic applied to mobile libraries: Malicious SDKs [backdate] their commit history to look established, adding fake stars and forks, then getting recommended in top Android libraries’ blog posts ⟨ R541⟩, gaming S3:activity, S1a:stars, and S6:community-endorsement simultaneously. In each case mentioned above, the attacker did not game a single signal; they operated across every dimension that a composite evaluator would check.
5 RQ2 Results: Responses to Signal Collapses
Of the 252 sources in the Google Search corpus, 163 (64.7%) contain a practitioner, platform, or researcher voice on how the ecosystem has responded to trust signal manipulation. Table 4 shows the distribution of response types across three dimensions in the Google Search corpus: (1) statement type, which captures whether the response is advice only or describes an action actually carried out; (2) trust direction, which captures what the source records of the practitioner's reliance on the signal; and (3) proposed signal alternative. The four findings that follow build on this distribution to identify the structural gaps in the ecosystem's documented response.
Finding #3: The documented response to trust signal collapse is predominantly advice without action: 54.6% of Google Search sources contain advice about what practitioners should do, while fewer than 1 in 5 (18.4%) documents an action that was actually carried out.
Of the 163 Google Search sources with a documented response, 54.6% contain advice or stated concerns without any actual enacted action (statement type A). These documents contain researchers/ article writers recommending signal substitution/ practices, vendors advising composite evaluation, or practitioners expressing concern in forum threads. In the Google Search corpus, the advice clusters into four categories: composite evaluation (combining multiple signals), tooling adoption (automated scanners, dependency checkers, and SCA tools), process controls (manual code review before adoption and delayed updates), and platform escalation (abuse reporting and waiting for platform enforcement). All those advice tend to suggest adding verification around the signal without displacing the signal itself. An example from a practitioner on Reddit r/github: Just assume that anything on GitHub is malware unless you know and trust the repository owner, or you've done at least some basic sanity-checking of the code. Stars have never meant anything. ⟨ R191⟩. A further 27.0% of Google Search sources are analyst-inferred (type D): the coder reads a response from indirect evidence in the source rather than from an explicit practitioner statement, e.g., websites to get downloads count (S1b). Only 18.4% of Google Search sources document an action that was actually carried out (B (action only) + C (stated + action)). This pattern holds across signals: S2:documentation records 0% B or C responses in the Google Search corpus despite documenting the high experimental attack success rates in the corpus (84% via README injection ⟨ D3.17⟩). S5:issue-response also records no described actions at all in the Google Search corpus. The literature on responding to cheap signal collapse is more a literature of advice than of documented behavior change.
Finding #4: Documented responses show that practitioners reduce, rather than replace, reliance on trust signals, but the added verification overhead increases the cost of those signals.
When a response is documented, the dominant pattern is not exit or substitution but downweighting: continuing to consult the signal while trusting it less. Of the 146 Google Search sources with a determinable trust direction, 61.0% record signal downweighting, against 24.7% that describe signal replacement and 0.7% that describe abandonment. Rather than removing unreliable signals from the evaluation workflow, sources across both corpora advise adding verification layers around them: automated scanning ⟨ D2.2, D2.11, R2, R51, R62, R92, R104, R159, R177, R371, R532, R538, R541, R549, R554, R579, R626, R632, R659, R715, R716, R717, R721, R727, R738, R743, R752, R754, R757, R835, R869⟩, composite evaluation across multiple signals ⟨ D1.30, D2.3, D2.11, R613, R635, R713, R770, R771, R783, R826, R854⟩, delayed updates to observe community response ⟨ R593, R673, R757⟩, and manual inspection of contributor histories ⟨ D1.2, D1.13, R98, R156, R532, R613, R660, R696, R719, R757, R759, R870⟩.The cost of this overhead is documented directly: practitioners report spending more time evaluating dependencies than writing code, and institutional responses include maintaining internally audited mirrors at high organizational cost ⟨ D2.27, D9.1, D9.2, R824, R843, R858⟩. This verification overhead is caused by the same AI-driven volume that degrades the signals: If AI increases code volume by 10x, human review becomes a fatal bottleneck (r/LocalLLaMA ⟨ D5.12⟩). When the bottleneck is breached, security review is becoming an afterthought in AI-driven development (r/ExperiencedDevs ⟨ D5.30⟩). Thus, the signal remained cheap to fake but became expensive to trust, inverting the original transaction cost advantage of open-source reuse [3]: what began as a zero-verification adoption decision now requires verification infrastructure that rivals the cost of the dependency itself.
A minority of sources document the logical alternative to this cost escalation: bypassing signals entirely in favor of direct inspection, i.e., reading source code before adoption ⟨ D1.2, D3.4, D3.5, D3.11, D3.22, D6.3, R141, R383, R757⟩, auditing maintainer contribution histories across repositories ⟨ D6.44, R141, R757, R824⟩, or running packages in a sandbox before integration ⟨ D1.30, R371, R383, R532, R706⟩. A practitioner mentioned in r/opensource: Normally, the idea isn't that you trust open-source: you have all the code, you can look at it. ⟨ R383⟩. Appearing in only a minority of both corpora suggests that this approach remains a minority practice rather than a widely documented or institutionalized response, possibly due to its high cost. Among Google Search sources where a practitioner describes an actual action (B or C), the same conservatism holds: signal replacement and downweighting split nearly evenly in type C sources, and abandonment appears in only 1 of 30 described-action sources. Signal reaffirmation is documented in 10.4% of Google Search sources that mention the persistent use of signals, though most are analyst-inferred rather than author-stated, suggesting that continued use is more often observed than actively defended. The corrupted signals are not discarded; they are retained, adding verification overhead and leaving the trust evaluation infrastructure largely intact while reliability declines and costs rise.
Finding #5: The proposed responses to signal collapse: substituting one signal for another and aggregating several together, are largely self-defeating: the proposed substitutes are themselves documented cheap gameable signals, and aggregating signals offers only short-term protection against a patient attacker.
Of the 163 Google Search sources with a documented response, 49 (30.1%) propose a specific alternative signal, 65.3% of which are cheap, observable metrics: fork-to-star ratios, issue quality, and commit frequency. This substitution response is directly visible in the Google Search corpus: S3:activity is the most commonly proposed substitute for S1a:stars ⟨ D1.2, D1.4, D1.10, D1.13, D1.22, D1.27, D1.28, D1.30, R137, R141, R191, R372, R537, R748, R757, R824, R866⟩, e.g., look at commits/contributors instead of stars. The proposed substitutes are already failing by the same mechanisms as the signal they replace. The aggregation response ⟨ D1.22, D1.24, D1.28, D1.30, D2.3, D2.35, D3.31, R613, R715, R770, R771, R783, R854⟩, e.g., checking S1a:stars, S2:documentation, S3:activity, and S6:community endorsement together, rests on the assumption that manufacturing multiple signals simultaneously is prohibitively costly. Finding 2 refutes this assumption: the same corpora that advise composite evaluation also document coordinated campaigns that reproduce the full signal envelope simultaneously, which defeat the composite check by construction. Aggregation raises the cost of manipulation in the short term but does not change the structural properties of the signals being aggregated.
Only 34.7% of Google Search sources propose alternative signals with cryptographic infrastructure: commit signing, SBOM, SLSA attestation, Sigstore provenance, that would structurally resist manipulation even with a higher cost. These signals are also proposed by some practitioners in Reddit ⟨ R81, R93, R98, R286, R425, R455, R477, R488, R505, R510, R514, R543, R605, R660, R784, R803⟩. A practitioner mentioned using verifiable trust signals — not stars or hype. The signals include OSSF Scorecard, build provenance (SLSA), signed commits, license transparency, and maintenance patterns. ⟨ R803⟩. Commit signing is the single most frequently proposed alternative (8 Google Search sources), yet is adopted by only 10% of GitHub repositories [39], leaving the most structurally sound proposed remedy as rare in practice as it is sound in principle. The gap between proposal and adoption suggests that cryptographic infrastructure, while theoretically sound, faces barriers to uptake.
Finding #6: Non-adversarial signal inflation (i.e., by legitimate AI tooling) has elicited few documented responses with actual behavior change, none institutional, suggesting the ecosystem's response infrastructure has not yet adapted to this vector.
The Google Search corpus contains 24 sources in which signal degradation is classified as non-adversarial (MA-NON), e.g., activity inflation caused by legitimate AI coding agents and CI/CD infrastructure, and downloads inflation caused by mirror systems operating without deceptive intent. In one of these sources, a package maintainer, independently investigating download statistics, found that most people downloading my package were things like ‘z3c.pypimirror/1.0.15.1’ and ‘pep381client’ (StackOverflow ⟨ D2.24⟩). This mirror infrastructure inflates counts before any adversarial actor acts. Of the 24 Google Search sources classified as MA-NON, 33% have no documented response of any kind. The 67% that do contain a response are predominantly general advice (type A, n=9) or analyst inferences (type D, n=4), with only 3 documenting actual behavior change. The contrast with the adversarial subset is direct: Google Search sources in which MT-BOT appears as a primary or secondary mechanism (n=55) elicit concrete advice responses: abuse-reporting pipelines, automated detection tools, and platform governance escalation. The detection infrastructure documented in both corpora, e.g., StarScout's lockstep signature analysis ⟨ D1.1, D1.11, R715⟩, ghost-account ratio heuristics ⟨ D1.12, D1.17, R715⟩, and behavioral fingerprinting ⟨ D8.6, D8.13, R770⟩, requires an adversarial actor to detect. Non-adversarial inflation produces activity signatures indistinguishable from genuine high-productivity development, leaving no signal-level trace that existing tooling is designed to flag. This limitation reflects a measurement constraint theorized directly in the corpus: when we detect agentic activity, we can never be sure of the proportion of the activity that is due to the agent, due to the Peril of Partial Observability ⟨ D5.15⟩. The response gap is therefore not a matter of practitioner awareness but of infrastructure: the ecosystem's verification tooling was designed for a threat model that excludes legitimate tools as a degradation vector.
6 Limitations
We report limitations using established criteria for qualitative trustworthiness [22] to help readers calibrate their inferences.
Corpus completeness and subjectivity. Retrieval relied on Google Search rather than dedicated academic databases (e.g., Google Scholar, Scopus) to prioritize grey literature and practitioner discourse, likely contributing to the low share of Tier 1 sources (19.4%). A complementary database search is future work. The Google Search corpus is also bounded by the retrieval strategy: sources not indexed by Google Search or the practitioner platforms we queried are automatically excluded. Non-English-language practitioner communities and private organizational grey literature are underrepresented. The corpus reflects a retrieval window ending July 19th, 2026; given the rapid evolution of this landscape, findings on tool names, pricing, and adoption rates may become outdated.
We retrieved the 870 Reddit threads using an automated tool applying LLM-based relevance filtering; we excluded threads judged borderline relevant, regardless of content. The corpus covers threads from 2023 to 2026 and is bounded by subreddit coverage: communities not indexed by the retrieval tool, non-English subreddits, and deleted or private threads are absent. Google Search results are also personalized and ranked dynamically based on account state, location, and query history. We conducted retrieval from a single account and geographic location without controlling for these factors, so we cannot guarantee exact reproduction of the corpus with the same queries. The reported queries (supplementary materials [28]) document search intent but not a fully reproducible retrieval procedure. On subjectivity, the corpus consists predominantly of experiential and self-reported accounts rather than structured evaluations, filtered through each source's own framing and incentives. The coding captures what sources record as mechanisms and responses, not independently verified ground truth. We also do not independently verify or quantify the cost asymmetry between honest production and manipulation for each signal. Our “collapse” coding relies on sources’ own qualitative or reported cost claims rather than an original cost-comparison study.
Signal coverage. In the Google Search corpus, the S2:documentation (n=14) and S4:platform-awarded-achievements (n=11) are thin relative to other signals. Signal-specific findings for these two categories are less generalizable than those for S1a, S1b, and S3b.
Coding reliability. Intercoder reliability was assessed by comparing first-author manual codings against LLM codings on a 40-source sample after three rounds of prompt calibration. All RQ1 closed-code fields exceeded 70% agreement. rq1_applies showed weaker agreement (κ =0.492), but it more likely affects the denominator's precision than the reported percentages. We acknowledge the subjectivity of single-coder judgment for the trust_direction field (RQ2); however, the narrow decision space limits this subjectivity. Multiple LLM agents coded the Reddit corpus without manually validating individual codes. The resulting codebook reflects machine-identified codes rather than first-author-verified codes. However, we manually verified the included Reddit IDs/quotes to ensure they are relevant before incorporating them into the paper.
To code mechanism intent, we assigned the MA-NON code (non-adversarial mechanism) when the source explicitly attributed a mechanism to non-deceptive origins (e.g., mirror infrastructure, legitimate AI tooling). We did not independently verify actor intent, and we coded sources without such explicit framing as ambiguous (MA-AMB) instead. This reliance on source-reported framing, rather than independently verified intent, is a construct validity limitation.
Construct validity and Generalisability. The RQ2 coding captures what the literature records as ecosystem responses, rather than directly observed actions. Sources describing responses are filtered through their authors’ framing choices and may not reflect the full range of practitioners’ behavior. The Google Search corpus comprises eight signals selected based on prior empirical work on dependency adoption decisions. Other observable signals that practitioners could consult, e.g., license type, organizational affiliation, vulnerability scan results, are outside the scope. The findings characterize the range of documented mechanisms and responses observed across both corpora, not the full population distribution. The coding scheme does not distinguish academic from grey-literature sources when reporting mechanisms or responses. Reporting tier distribution alone (§3.1) is currently sufficient for this paper's purpose, i.e., establishing the corpus's multivocal composition per MLR convention [10]. A tier-by-tier comparison may be a useful direction for future work. Quantitative findings (percentages, counts) describe the Google Search corpus and should not be read as ecosystem-wide prevalence.
7 Discussions, Implications, and Conclusions
The findings paint a coherent picture of cheap trust signal collapses across eight signals used in the software supply chain. The documented response is predominantly advice without enacted action, and the proposed substitutes recycle other cheap signals that are also failing. This collapse describes an ecosystem drifting toward the condition Akerlof predicted for any market in which quality signals lose their informational content: a market for lemons [1]. In this section, we discuss why the present trajectory is unsustainable, why the two most commonly documented response strategies (signal substitution and manipulation detection) cannot fully break the cycle, and why the structurally sound alternatives identified in the literature are known but not yet adopted at scale.
7.1 Why the Current Trajectory Is Unsustainable
The findings provide empirical evidence that the trust signal collapse is not a future risk but a present trajectory, visible in the response patterns documented in the corpus
Finding 4 shows that 61.0% of the Google Search sources with a determinable trust direction record signal downweighting, suggesting that informed actors are quietly reducing reliance without completely exiting. This response is rational when the signals are gameable, yet verifying everything is not possible. Another part of Finding 4 shows that 10.4% of documented trust directions in the Google Search corpus are reaffirming signals, suggesting that uninformed/unaware actors have not yet updated their prior strategies for choosing dependencies and still rely on gameable signals. These two patterns are not independent: they are the same lemon dynamic at different stages of awareness. Together, those responses describe an ecosystem in which the most informed participants are quietly reducing reliance on cheap signals while the least informed continue to rely on them. Many stated-only sources advise platform abuse reporting, flagging, and detection tools to raise awareness, but whether this translates into adopted practice is precisely the gap Finding 3 documents: the advice exists, the behavior change does not yet follow at scale.
Separately, Finding 1 documents that mimicry has become cheap enough to industrialize, openly market, and calibrate against published detection signatures. This mimicry is known in biology as Batesian mimicry: when cheap mimics free-ride on an honest signal until it inflates and loses its discriminating power entirely [38, 43]. The consequence is rising costs: reorganization under signal collapse means privatizing the verification cost that the signal ecosystem once distributed [3]. Finding 4 documents this rising cost directly, including institutional mirrors maintained at high organizational cost. This rising cost suggests that the ecosystem could not self-correct through individual exits even when practitioners are aware of the collapse. The net value of open-source reuse erodes as verification overhead accumulates without a structural resolution.
Implication for Platform Operators. PyPI's removal of download count displays [32] is the only documented instance of a platform retiring a gameable signal rather than continuing to surface it (Finding 3). Extending this platform-level signal retirement to other signals and registries could be the structural action the corpus most directly supports.
7.2 Why Signal Substitution and Aggregation Cannot Break the Cycle
Finding 5 documents that the literature's two proposed responses are to substitute a failing signal with a different one, or aggregate several signals together. Both responses have the same structural vulnerability. Substitution fails because the proposed alternatives are also predominantly cheap, gameable signals, and aggregation fails because Finding 2 shows that patient attackers can reproduce the multiple signals simultaneously. To understand why both substitution and aggregation are structurally insufficient, we examine the conditions identified in the signaling literature under which signals can survive manipulation pressure [38, 43].
Shared interest keeps signals honest when the signaler's payoff is coupled to the receiver's welfare. In software, this condition holds within funded maintainer teams and organizations with liability exposure, but evaporates the moment the dependency graph becomes anonymous and transitive. Genuinely costly signals impose disproportionate costs on low-quality producers, but various mechanisms documented in RQ1 (§4), including AI, violate this condition for cheap signals. Examples include a thoughtful README, a high-volume commit history, or a contextually appropriate issue response (any signal whose cost of producing plausible-looking information is now nearly zero) [13, 43]. The substitution response in Finding 5 is this dynamic applied recursively: S3:activity is proposed as a substitute for S1a:stars, while both corpora document that S3:activity is collapsing for identical reasons. Under Goodhart's Law [13], any signal that becomes a target ceases to be a good measure: once practitioners rely on a signal for adopting dependencies, the signal becomes worth faking, its cost falls, and it stops separating trustworthy packages from untrustworthy ones. The collapse, which rendered the original signal unreliable, also occurs for the substitute. Aggregation does not escape this logic: combining signals that can each be individually manufactured offers only short-term protection, and Finding 2 documents that sophisticated attackers already manufacture all components simultaneously.
Detection and punishment deter mimicry when the probability of being caught, multiplied by the cost of being caught, is high. In open-source ecosystems, both terms collapse. The probability of being caught is getting lower as 38.3% of documented mechanisms in the Google Search corpus are indistinguishable from legitimate behavior (Finding 1). The cost of being caught is reduced as identity is disposable: an exposed actor can create a fresh pseudonym at zero cost (as in xz utils attack [9]), so punishment does not accumulate.
What survives this analysis is a narrow but constructive residual: signals whose production is causally bound to the quality they certify; equivalent to indices rather than signals in the biological literature [38]. A cryptographic signature cannot be produced without the private key; a reproducible build cannot be forged without controlling the source. These signals are costly and cannot be eroded by AI; they require producers to do the real thing. Finding 5 documents that these are the only proposed alternatives that would structurally resist the substitution collapse, appearing in 34.7% of proposed alternatives but adopted in only 10% of repositories, even for the most commonly proposed option.
Implications for Practitioners. Adopting signals whose production is causally bound to the quality they certify: commit signing, SBOM, and provenance attestation impose costs that cannot be eroded by AI. Those signals require cryptographic infrastructure rather than the production of plausible-looking information. Where these signals are not yet available, sustained personal relationships with maintainers (e.g., known contributors and organizations with public accountability) represent the shared-interest mechanism that both theory and the corpus identify as more manipulation-resistant.
7.3 Why Detection Cannot Break the Cycle Either
Signal substitution and aggregation cannot compensate because AI has collapsed the cost of producing plausible-looking information. A natural follow-up is whether better detection can help: if cheap signals cannot be replaced, perhaps manipulated ones can be identified and discounted. Finding 1 documents why this response also faces structural limits. First, 38.3% of documented mechanisms in the Google Search corpus (MA-AMB) use techniques indistinguishable from legitimate behavior, e.g., soliciting stars from real users and AI-generated documentation are all actions honest project owners also perform, leaving no signal-level trace of intent [43]. Second, 14.4% of mechanisms (MA-NON) involve no adversarial actor at all: AI coding agents inflate activity signals as a side-effect of legitimate development, and mirror systems inflate download counts without deceptive intent. Detection infrastructure designed to identify manipulation lacks a mechanism to address the collapse caused by adopting legitimate tools. Finding 6 documents that non-adversarial signal inflation lacks documented responses with actual behavior change, showing that the response infrastructure was built for a different threat model.
Implications for Tool Builders. Automated verification tools reduce manual verification cost and are widely documented as a concrete response (Finding 3). However, existing tools are predominantly calibrated for adversarial manipulation. The corpora document that even measuring the scale of non-adversarial AI-driven inflation is currently difficult: standard attribution methods recover only 3.3% of AI coding agent commits and miss 79% of AI agent activity ⟨ D5.2, D5.4, R638⟩. This struggle suggests that detection infrastructure designed for intentional manipulation may be poorly positioned to address non-adversarial signal degradation (Finding 6). A complementary class of tooling that measures signal reliability rather than signal manipulation may represent a productive direction that the corpus points toward. These tools should be able to flag statistical anomalies (e.g., in commit-to-release or download-to-dependent ratios) regardless of adversarial intent.
Implications for Platform Operators. The non-adversarial vector has no platform-level documented response in the corpus. The most intuitive remedy is transparent labeling of AI agent activity, i.e., distinguishing AI-generated from human contributions in the signal display. Recent work shows AI coding agents exhibit detectable behavioral fingerprints (F1=97.2% across five agents [12]), suggesting platform-level attribution is feasible. Conventions like Co-authored-by tags and kernel attribution guidelines [44] are early steps, but no registry or hosting platform yet discloses AI contribution rates as part of its signal infrastructure. This approach would not detect manipulation but would remove the ambiguity that makes non-adversarial inflation invisible to downstream users.
Implications for Researchers. The non-adversarial vector (MA-NON) is documented in 24 sources but elicits only 3 described behavior changes, all individual adaptations rather than institutional responses (Finding 6). The impact of AI agent adoption on S4:platform-awarded-achievements and S5:issue-response remains largely unexplored. The corpora document these signals inflating but not whether or how practitioners adjust their reliance in response. Empirical studies of how practitioners read and respond to AI-inflated signals are the most direct future work this corpus surfaces.
7.4 Why the Known Remedies are Not Being Adopted
Finding 5 documents that the structurally sound alternatives, i.e., cryptographic attestation, provenance signing, and reproducible builds, appear in 34.7% of proposed responses but are adopted by only 10% of repositories, even for the most commonly cited option. The previous discussion established what these alternatives are and why they would work. Yet, we have not discussed why the adoption gap persists when practitioners already know the remedy. The answer is not ignorance: the corpus documents awareness without adoption across multiple signals and multiple years (Finding 3).
The barrier is structural: 10% attestation adoption does not restore the separating equilibrium. Instead, this adoption rate creates a two-tier market where sophisticated practitioners use costlier signals while most cannot distinguish attested from unattested packages [1]. A mandate also carries a distributional cost: attestation would disproportionately burden unfunded, hobby maintainers, some of whom may exit rather than comply [27]. This cost could be mitigated with tiered thresholds or subsidized tooling. A middle tier also exists between cheap signals and full attestation, e.g., allowlists, SCA tooling, vendor risk assessments, which future work should characterize. Even where adopted, attestation has network effects: its value is realized only once absence becomes a red flag [8]. Early adopters bear the cost while ecosystem-level benefit stays unrealized. This is why the same alternatives have been proposed for years with scarce adoption: recommendations alone don't change incentives [27]. Coordinated change requires coercion, historically resolved by changing the default for all participants at once [8]. The supply chain equivalent (EU Cyber Resilience Act, PyPI's trusted publishing) remains limited in reach. From an Arrow perspective [3], the goal is restoring shared infrastructure, not maximizing individual effort.
Implication for Policy Makers. The theoretical analysis above explains why the adoption gap documented in Finding 5 has persisted despite repeated recommendations. In adjacent domains, this problem was resolved by making the costlier signal the platform baseline rather than a voluntary option, e.g., Sender Policy Framework (SPF)/ DomainKeys Identified Mail (DKIM) for email authentication [18]. The software supply chain equivalent is platform-level enforcement of signed provenance for packages above a usage threshold. This enforcement makes the use of costlier signals no longer a recommendation but a precondition for registry publication or inclusion, which changes the default for all participants simultaneously rather than relying on individual opt-in. Policy makers could extend the scope of mandate-level instruments beyond federal contractors by broadening coverage to widely adopted open-source dependencies.
7.5 To Conclude: Where the Ecosystem Stands
We opened by asking whether practitioners read the source code or rely on signals. Both corpora confirm the latter, and those signals are collapsing as AI erodes the cost of producing them honestly versus faking them. The software supply chain is drifting toward the condition Akerlof predicted for any market where quality signals lose their informational content: buyers cannot distinguish good from bad, good sellers cannot credibly signal their quality, and the market drifts toward lemons [1]. This trajectory is visible in the industrialized economics of signal manipulation, the structural indistinguishability of honest and dishonest signals, and the gap between what the literature advises and what practitioners adopt. Signaling theory offers a clear exit: shift trust away from cheap, gameable signals toward signals that AI cannot cheaply generate, i.e., cryptographic indices whose production is causally bound to the quality they certify [38, 43], institutional attestation [25], and accountable identity [21]. The ecosystem can either take that exit through the institutional enforcement that Olson [27] predicts is necessary, or continue accumulating verification overhead around gameable signals. This response would determine whether open-source reuse retains the low-cost trust advantage that made it the lubricant of modern software development [3].
Acknowledgments
This work was supported and funded by the National Science Foundation Grant No. 2207008. Any opinions expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.
References
- George A. Akerlof. 1970. The Market for “Lemons”: Quality Uncertainty and the Market Mechanism. 84, 3 (1970), 488–500.
- Anonymous. 2026. Replication Package for 3100 Opinions on Code Review in an AI World: Building Causal Theory from Practitioner Discourse. anonymous.4open.science . Grey literature review tool.
- Kenneth J Arrow. 1974. The limits of organization. WW Norton & Company.
- Bobby Borisov. 2026. Fedora Account Compromise Raises AI Agent Supply Chain Concerns. https://linuxiac.com/fedora-account-compromise-raises-ai-agent-supply-chain-concerns/. Accessed: 2026-09-15.
- Joe Brockmeier. 2026. AI Agent Runs Amok in Fedora and Elsewhere. lwn.net .
- Jacob Cohen. 1960. A coefficient of agreement for nominal scales. 20, 1 (1960), 37–46.
- Laura Dabbish, Colleen Stuart, Jason Tsay, et al. 2012. Social coding in GitHub: transparency and collaboration in an open software repository. 1277–1286.
- Joseph Farrell and Garth Saloner. 1985. Standardization, Compatibility, and Innovation. The RAND Journal of Economics 16, 1 (1985), 70–83.
- Andres Freund. 2024. Backdoor in Upstream XZ/liblzma Leading to SSH Server Compromise. Openwall OSS Security Mailing List. Posted March 29, 2024. openwall.com.
- Vahid Garousi, Michael Felderer, and Mika V Mäntylä. 2019. Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. 106 (2019), 101–121.
- Vahid Garousi and Mika V Mäntylä. 2016. When and what to automate in software testing? A multi-vocal literature review. 76 (2016), 92–117.
- Taher A Ghaleb. 2026. Fingerprinting AI Coding Agents on GitHub. arXiv preprint arXiv:2601.17406 (2026).
- Charles A. E. Goodhart. 1975. Problems of Monetary Management: The U.K. Experience. In Papers in Monetary Economics, Vol. 1. Reserve Bank of Australia, Sydney, 1–20.
- Sivana Hamer, Nasif Imtiaz, Mahzabin Tamanna, et al. 2025. Trusting code in the wild: Exploring contributor reputation measures to review dependencies in the Rust ecosystem. (2025).
- Hao He, Haoqin Yang, Philipp Burckhardt, et al. 2026. Six Million (Suspected) Fake Stars on GitHub: A Growing Spiral of Popularity Contests, Spam, and Malware.
- Henry, ESLint Team. 2018. Postmortem for Malicious Packages Published on July 12th, 2018. eslint.org/blog . Accessed: 2026-07-18.
- Kaspersky. 2025. Fake GitHub Projects Distribute Stealers in GitVenom Campaign. securelist.com .
- Scott Kitterman. 2014. Sender Policy Framework (SPF) for Authorizing Use of Domains in Email, Version 1. RFC 7208. RFC Editor. rfc-editor.org .
- Klaus Krippendorff. 1980. Content Analysis: An Introduction to Its Methodology. Sage Publications, Beverly Hills, CA.
- Piergiorgio Ladisa, Henrik Plate, Matias Martinez, et al. 2023. Sok: Taxonomy of attacks on open-source software supply chains. IEEE, 1509–1526.
- Chris Lamb and Stefano Zacchiroli. 2021. Reproducible builds: Increasing the integrity of software supply chains. IEEE Software 39, 2 (2021), 62–70.
- Yvonna S. Lincoln and Egon G. Guba. 1985. Naturalistic Inquiry. Sage Publications, Beverly Hills, CA.
- Roger C Mayer, James H Davis, and F David Schoorman. 1995. An integrative model of organizational trust. 20, 3 (1995), 709–734.
- Håvard Myrbakken and Ricardo Colomo-Palacios. 2017. DevSecOps: a multivocal literature review. Springer, 17–29.
- Zachary Newman, John Speed Meyers, and Santiago Torres-Arias. 2022. Sigstore: Software signing for everybody. 2353–2367.
- Marc Ohm, Henrik Plate, Arnold Sykosch, and Michael Meier. 2020. Backstabber's knife collection: A review of open source software supply chain attacks. Springer, 23–43.
- Mancur Olson. 1965. The Logic of Collective Action: Public Goods and the Theory of Groups. Harvard University Press, Cambridge, MA.
- Ranindya Paramitha, Christian Kästner, and Laurie Williams. 2026. Supplementary Materials for When Dependencies Become Lemons: A Multivocal Review of Cheap Trust Signal Collapse in the Software Supply Chain. Zenodo link.
- David Lorge Parnas. 1972. On the criteria to be used in decomposing systems into modules. Commun. ACM 15, 12 (1972), 1053–1058.
- Ivan Pashchenko, Duc-Ly Vu, and Fabio Massacci. 2020. A qualitative study of dependency management and its security implications. 1513–1531.
- Ron Popov. 2026. Download Pumping: New npm Deception Technique for Supply Chain Attacks. www.tenable.com/blog .
- Python Packaging Authority. 2026. Analyzing PyPI Package Downloads. packaging.python.org .
- Tingrui Qiao, Caroline Walker, Chris Cunningham, et al. 2025. Thematic-LM: a LLM-based multi-agent system for large-scale thematic analysis. 649–658.
- Huilian Sophie Qiu, Yucen Lily Li, Susmita Padala, et al. 2019. The signals that potential contributors look for when choosing open-source projects. 3, CSCW (2019), 1–29.
- Beatriz M Reichert and Rafael R Obelheiro. 2024. Software supply chain security: a systematic literature review. 46, 10 (2024), 853–867.
- Hina Saeeda, Muhammad Ovais Ahmad, and Tomas Gustavsson. 2024. A Multivocal Literature Review on Non-Technical Debt in Software Development: An Insight into Process, Social, People, Organizational, and Culture Debt. 18, 1 (2024), 240101.
- Rami Sammak, Anna Lena Rotthaler, Harshini Sri Ramulu, et al. 2023. Developers’ approaches to software supply chain security: An interview study. 56–66.
- William A. Searcy and Stephen Nowicki. 2005. The Evolution of Animal Communication: Reliability and Deception in Signaling Systems. Princeton University Press, Princeton, NJ.
- Anupam Sharma, Sreyashi Karmakar, Gayatri Priyadarsini Kancherla, et al. 2025. On the Prevalence and Usage of Commit Signing on GitHub: A Longitudinal and Cross-Domain Study. 360–370.
- Snyk. 2024. 2024 Open Source Security Report: Slowing Progress and New Challenges for DevSecOps. snyk.io/blog . Accessed: 2026-07-18.
- Sonatype. 2026. 2026 State of the Software Supply Chain Report. Technical Report. Sonatype. Accessed: 2026-06-16.
- César Soto-Valero, Nicolas Harrand, Martin Monperrus, et al. 2021. A comprehensive study of bloated dependencies in the maven ecosystem. 26, 3 (2021), 45.
- Michael Spence. 1973. Job Market Signaling. 87, 3 (1973), 355–374.
- The Linux Kernel Development Community. 2026. AI Coding Assistants. docs.kernel.org . Accessed: 2026-07-18.
- Dominik Wermke, Noah Wöhler, Jan H Klemmer, et al. 2022. Committed to trust: A qualitative study on security & trust in open source software projects. IEEE, 1880–1896.
- Laurie Williams, Giacomo Benedetti, Sivana Hamer, et al. 2025. Research Directions in Software Supply Chain Security. ACM Trans. Softw. Eng. Methodol. 34, 5, Article 146 (2025), 38 pages.
- Tingwei Zhang, Harold Triedman, and Vitaly Shmatikov. 2026. Deep-Research Agents Can Be Poisoned via User-Generated Content. arXiv preprint arXiv:2605.24245 (2026).
- Xiaofan Zhao, Tony Clear, and Ramesh Lal. 2024. Identifying the primary dimensions of DevSecOps: A multi-vocal literature review. 214 (2024), 112063.
This work is licensed under a Creative Commons Attribution 4.0 International License.
SCORED '26, Prague, Czech Republic
© 2026 Copyright held by the owner/author(s).
ACM ISBN 979-8-4007-3009-2/2026/10.
DOI: https://doi.org/10.1145/3848003.3848016