koala73/worldmonitor · error · Error

[createProLaunchBroadcast] PRO_LAUNCH_PHYSICAL_ADDRESS is…

Error message

[createProLaunchBroadcast] PRO_LAUNCH_PHYSICAL_ADDRESS is still a placeholder ("${PRO_LAUNCH_PHYSICAL_ADDRESS}"). Set the real CAN-SPAM postal address in convex/broadcast/proLaunchEmailContent.ts before sending.

What it means

Error "[createProLaunchBroadcast] PRO_LAUNCH_PHYSICAL_ADDRESS is still a placeholder ("${PRO_LAUNCH_PHYSICAL_ADDRESS}"). Set the real CAN-SPAM postal address in convex/broadcast/proLaunchEmailContent.ts before sending." thrown in koala73/worldmonitor.

Solutions

  1. Edit PRO_LAUNCH_PHYSICAL_ADDRESS in convex/broadcast/proLaunchEmailContent.ts to the real CAN-SPAM postal address, then regenerate content and retry
  2. Keep a pre-launch checklist item asserting the address is not the placeholder before any broadcast create or send
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at convex/broadcast/sendBroadcast.ts:81 when the library encounters an invalid state.

Common situations: See trigger scenarios.


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

Appendix: source

Thrown at convex/broadcast/sendBroadcast.ts:81

    nameSuffix: v.optional(v.string()),
  },
  handler: async (_ctx, { segmentId, nameSuffix }) => {
    const apiKey = process.env.RESEND_API_KEY;
    if (!apiKey) {
      throw new Error("[createProLaunchBroadcast] RESEND_API_KEY not set");
    }

    // Hard-gate: refuse to ship the placeholder physical address.
    // CAN-SPAM requires a valid postal address in every commercial
    // email footer; sending the literal "physical address TBD" string
    // is non-compliant and embarrassing. Edit
    // `PRO_LAUNCH_PHYSICAL_ADDRESS` in proLaunchEmailContent.ts to the
    // real postal address before invoking this action.
    if (
      PRO_LAUNCH_PHYSICAL_ADDRESS.includes("TBD") ||
      PRO_LAUNCH_PHYSICAL_ADDRESS.includes("placeholder")
    ) {
      throw new Error(
        `[createProLaunchBroadcast] PRO_LAUNCH_PHYSICAL_ADDRESS is still a placeholder ("${PRO_LAUNCH_PHYSICAL_ADDRESS}"). ` +
          "Set the real CAN-SPAM postal address in convex/broadcast/proLaunchEmailContent.ts before sending.",
      );
    }

    const name =
      nameSuffix && nameSuffix.length > 0
        ? `PRO Launch — ${nameSuffix}`
        : `PRO Launch — ${new Date().toISOString().slice(0, 10)}`;

    const res = await fetch(`${RESEND_API_BASE}/broadcasts`, {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        Authorization: `Bearer ${apiKey}`,
        "User-Agent": USER_AGENT,
      },
      body: JSON.stringify({

View on GitHub (pinned to eeab0a219f)