koala73/worldmonitor · error · ConvexError

REPLAY_CONFLICT

Error message

REPLAY_CONFLICT

What it means

Error "REPLAY_CONFLICT" thrown in koala73/worldmonitor.

Source

Thrown at convex/companyMonitoring/companies.ts:123

    ownerUserId: v.string(),
    clientRequestId: v.string(),
    company: monitoredCompanyInputValidator,
  },
  handler: async (ctx, args) => {
    const account = await requireProvisionedAccount(ctx, args.ownerUserId);
    const clientRequestId = normalizeRequestId(args.clientRequestId);
    const company = normalizeMonitoredCompanyInput(args.company as MonitoredCompanyInput);
    const directFingerprint = await fingerprint({ version: "cm-direct-v1", company });

    const replay = await ctx.db
      .query("companyMonitoringCompanies")
      .withIndex("by_account_directRequestId", (q) =>
        q.eq("ownerAccountId", account.logicalAccountId).eq("directRequestId", clientRequestId),
      )
      .unique();
    if (replay) {
      if (replay.directFingerprint !== directFingerprint) {
        throw new ConvexError("REPLAY_CONFLICT");
      }
      return { status: "replayed", companyId: replay.companyId };
    }

    const noop = await findNoopByCustomerReference(
      ctx,
      account.logicalAccountId,
      company.customerReference,
    );
    if (noop) return { status: "noop", companyId: noop.companyId };

    const companyCount = account.companyCount ?? 0;
    if (companyCount >= (account.companyLimit ?? COMPANY_LIMIT)) {
      throw new ConvexError("COMPANY_LIMIT_REACHED");
    }

    const companyId = await insertNormalizedCompany(ctx, account, company, {
      directRequestId: clientRequestId,

View on GitHub (pinned to ffec79ac33)

When it happens

Trigger: Thrown at convex/companyMonitoring/companies.ts:123 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of koala73/worldmonitor@ffec79ac33 (2026-08-12). Data as JSON: /api/errors/fb77308e6c2942fd. Report an issue: GitHub.