Mining Type Constructs Using Patterns in AI-Generated Code
For software developers and researchers, this work highlights the need for careful type safety verification when using AI-generated code, revealing a discrepancy between AI's type usage and human oversight.
This study presents the first empirical analysis of how AI agents use type constructs in TypeScript projects, finding that AI agents are 9x more likely to use the 'any' keyword and use advanced type constructs more often than humans, yet their pull requests have 1.8x higher acceptance rates.
Artificial Intelligence (AI) increasingly automates various parts of the software development tasks. Although AI has enhanced the productivity of development tasks, it remains unstudied whether AI essentially outperforms humans in type-related programming tasks, such as employing type constructs properly for type safety, during its tasks. Moreover, there is no systematic study that evaluates whether AI agents overuse or misuse the type constructs under the complicated type systems to the same extent as humans. In this study, we present the first empirical analysis to answer these questions in the domain of TypeScript projects. Our findings show that, in contrast to humans, AI agents are 9x more prone to use the 'any' keyword. In addition, we observed that AI agents use advanced type constructs, including those that ignore type checks, more often compared to humans. Surprisingly, even with all these issues, Agentic pull requests (PRs) have 1.8x higher acceptance rates compared to humans for TypeScript. We encourage software developers to carefully confirm the type safety of their codebases whenever they coordinate with AI agents in the development process.