Skip to main content

AI Agent Tool DB Inventory

Auto-generated by backend/scripts/inventory-ai-tool-writes.ts. Do not edit by hand. Re-run the script after any change under backend/src/ai/tools/.

Why this exists​

Layer-2 of the AI tool architectural cleanup. The script statically scans every file under backend/src/ai/tools/**/*.ts and lists every Prisma write, read, escape-hatch ($transaction / $queryRaw / etc.), and client import. The result is the complete bypass surface — what the AI agent panel touches directly today.

The punch list (files with WRITE or ESCAPE hits) is what Layer-3 extraction needs to migrate to domain/agentOps/* so the canonical services own these invariants instead of the tools reimplementing them.

Summary​

  • Scanned files: 6
  • Total hits: 51
    • Mutating (WRITE): 1
    • Read (findUnique/findMany/...): 47
    • Escape-hatch ($transaction/$queryRaw/...): 0
    • Imports of the prisma client: 3
  • Files needing Layer-3 extraction: 1

Punch list (files with mutating DB access)​

FileWritesEscape-hatch ($tx/$queryRaw)
src/ai/tools/agentTools.ts10

Full hit list​

FileLineKindReceiverEntityMethodSource
src/ai/tools/accountTools.ts10IMPORTprisma(import)(import)import { prisma } from '../../services/database.js';
src/ai/tools/accountTools.ts32READprismauserfindUniqueconst user = await prisma.user.findUnique({
src/ai/tools/accountTools.ts45READprismaorderaggregateconst pendingBets = await prisma.order.aggregate({
src/ai/tools/accountTools.ts127READprismauserfindUniqueconst userByWallet = await prisma.user.findUnique({
src/ai/tools/accountTools.ts146READprismauserfindUniqueconst targetUser = await prisma.user.findUnique({
src/ai/tools/accountTools.ts157READprismauserfindUniqueconst user = await prisma.user.findUnique({
src/ai/tools/agentTools.ts40IMPORTprisma(import)(import)import { prisma } from '../../services/database.js';
src/ai/tools/agentTools.ts76READprismauserfindUniqueconst user = await prisma.user.findUnique({
src/ai/tools/agentTools.ts83READprismaagentfindUniqueconst agent = await prisma.agent.findUnique({
src/ai/tools/agentTools.ts142READprismauserfindUniqueconst exists = await prisma.user.findUnique({
src/ai/tools/agentTools.ts262READprismauserfindManyconst players = await prisma.user.findMany({
src/ai/tools/agentTools.ts334READprismaagentfindUniqueconst rootAgent = await prisma.agent.findUnique({
src/ai/tools/agentTools.ts344READprismaagentfindUniqueconst a = await prisma.agent.findUnique({
src/ai/tools/agentTools.ts358READprismaagentfindManyconst childAgents = await prisma.agent.findMany({
src/ai/tools/agentTools.ts368READprismauserfindManyconst childPlayers = await prisma.user.findMany({
src/ai/tools/agentTools.ts390READprismauserfindFirstconst selfUser = await prisma.user.findFirst({
src/ai/tools/agentTools.ts477READprismatakeBalancefindUniqueprisma.takeBalance.findUnique({
src/ai/tools/agentTools.ts481READprismaagentfindUniqueprisma.agent.findUnique({
src/ai/tools/agentTools.ts485READprismauserfindUniqueprisma.user.findUnique({
src/ai/tools/agentTools.ts520READprismauserfindManyconst players = await prisma.user.findMany({
src/ai/tools/agentTools.ts538READprismatakeBalancefindManyconst takeRows = await prisma.takeBalance.findMany({
src/ai/tools/agentTools.ts651READprismauserfindManyconst downlinePlayers = await prisma.user.findMany({
src/ai/tools/agentTools.ts680READprismamarketExposurefindManyconst v1Rows = await prisma.marketExposure.findMany({
src/ai/tools/agentTools.ts750READprismaorderfindManyconst labelOrders = await prisma.order.findMany({
src/ai/tools/agentTools.ts926READprismauserfindManyconst players = await prisma.user.findMany({
src/ai/tools/agentTools.ts966READprismaorderfindManyconst orders = await prisma.order.findMany({
src/ai/tools/agentTools.ts1070READprismauserfindFirstconst player = await prisma.user.findFirst({
src/ai/tools/agentTools.ts1262READprismauserfindUniqueconst player = await prisma.user.findUnique({
src/ai/tools/agentTools.ts1336READprismauserfindManyconst players = await prisma.user.findMany({
src/ai/tools/agentTools.ts1354READprismacommissionRecordfindManyconst records = await prisma.commissionRecord.findMany({
src/ai/tools/agentTools.ts1487READprismauserfindManyconst players = await prisma.user.findMany({
src/ai/tools/agentTools.ts1509READprismacommissionRecordfindManyconst records = await prisma.commissionRecord.findMany({
src/ai/tools/agentTools.ts1536READprismaorderfindManyconst orderMeta = await prisma.order.findMany({
src/ai/tools/agentTools.ts1708READprismauserfindManyprisma.user.findMany({
src/ai/tools/agentTools.ts1718READprismaagentfindMany: prisma.agent.findMany({
src/ai/tools/agentTools.ts1742READprismatransferSettlementfindManyconst settlements = await prisma.transferSettlement.findMany({
src/ai/tools/agentTools.ts1834READprismatakeBalancefindUniqueconst takeRow = await prisma.takeBalance.findUnique({
src/ai/tools/agentTools.ts1937READprismauserfindUniqueconst callerUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts1947READprismatakeBalancefindUniqueconst takeRow = await prisma.takeBalance.findUnique({
src/ai/tools/agentTools.ts2067READprismauserfindUniqueconst callerUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2159READprismauserfindUniqueconst callerUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2273READprismauserfindUniqueconst credUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2333READprismauserfindUniqueconst callerUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2342READprismauserfindUniqueconst credUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2352WRITEprismauserupdateawait prisma.user.update({
src/ai/tools/agentTools.ts2435READprismauserfindUniqueconst current = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2499READprismauserfindUniqueconst callerUser = await prisma.user.findUnique({
src/ai/tools/agentTools.ts2822READprismauserfindManyconst downlinePlayers = await prisma.user.findMany({
src/ai/tools/betTools.ts11IMPORTprisma(import)(import)import { prisma } from '../../services/database.js';
src/ai/tools/betTools.ts173READprismauserfindUniqueconst user = await prisma.user.findUnique({
src/ai/tools/betTools.ts427READprismaorderfindManyconst orders = await prisma.order.findMany({