February 15, 20260.1.31Jugg.ai
v0.1.31 — feat(billing): add billing guard to competitorMonitor cron
Release v0.1.31: Billing Guard for Competitor Monitor Cron
February 15, 2026
What changed
- The
competitorMonitordaily cron now checks billing status viacanRunPipelineForProjectbefore triggering competitor analysis for each project - Projects with
no_balance,suspended,cancelled, orproject_not_foundbilling status are skipped - The function now returns
{ projectsTriggered: triggered }reflecting only successfully triggered projects, not total active projects - Added test suite covering all rejection reasons and mixed scenarios
Why it matters
Previously, the competitor monitor would fire off analysis pipelines for all active projects regardless of billing status. This wasted resources and could cause downstream billing errors. The cron now follows the same billing guard pattern already used by autoBuilder and manualAutoBuildRunner.
Technical notes
- Change is in
src/inngest/pipeline.tsinside thecompetitorMonitorfunction - No new dependencies — reuses the existing
canRunPipelineForProjectimport - Tests added at
tests/inngest/competitor-monitor-billing.test.ts
Release Notes
Successfully merged PR #83 and published release v0.1.31.
PR #83: "feat(billing): add billing guard to competitorMonitor cron"
- Merged via squash merge (SHA: 702f1dad)
- Adds billing status checks to the daily competitorMonitor cron, preventing competitor analysis pipelines from being triggered for projects with insufficient credits or billing issues (no_balance, suspended, cancelled, project_not_found)
- Follows the same billing guard pattern already used by autoBuilder and manualAutoBuildRunner
- Includes comprehensive test coverage for all rejection scenarios
Release: v0.1.31
- Tag: v0.1.31
- URL: https://github.com/Jugg-ai/Jugg-ai.jugg-ai/releases/tag/v0.1.31