Roadmap
May 18, 2026 · View on GitHub
DevPinger ships a focused V1 today and layers a private "Cloud" edition
on top for paid Pro features. This public repo is MIT and contains the
full GitHub + Jira product plus the preorder/landing infrastructure
needed to run the public smoke-test. Pro-tier billing enforcement
(subscriptions, plan-gating, /billing UI) lives in a separate private
repo and imports @devpinger/* from here.
V1 (this repo) — shipped
- GitHub OAuth source (PRs, reviews, comments, issues, releases, CI)
- Jira Cloud OAuth source (issues, comments, transitions, worklogs)
- Telegram destination (managed
@dev_pinger_bot) - Inline actions: approve, request changes, comment, reply, merge, close, reopen, assign, transition
- Filtering: mute by source / repo / project / event type, plus self-suppression of the user's own actions
- Snooze (1h / 4h / 1d), recent events, stats
- Plans schema (
free/personal/pro/team) withnoopPlanGate— V1 ships with no Pro-tier enforcement - Preorder landing infrastructure —
preorderstable, Stripe webhook forcheckout.session.completedevents from the $9 lifetime Payment Link,landing_subscriberstable for email signups, public landing endpoints (/v1/landing/*,/v1/stripe/webhook). Used to validate demand before V2.
V1.5 — Microsoft Teams source
Teams is intentionally deferred from V1 because Application permissions need tenant admin consent (doesn't work in a multi-tenant SaaS), and Delegated permissions via OAuth add 50–70% complexity to a V1 scope. Lands as the next source adapter once V1 stabilises.
V2 (private devpinger-cloud repo)
Adds the paid layer without forking V1. Imports @devpinger/* from
this repo and extends it through the existing extension points:
- Stripe billing — checkout, webhooks,
stripePlanGateenforcingPLAN_LIMITS;/upgradeand/billingbot commands - AI digests — daily / weekly summaries (Anthropic),
@devpinger/aipackage - Email destination — verified address, daily digest delivery
- Web destination — inbox UI hosted at app.devpinger.com
- Additional sources — GitLab, Sentry, Linear
Migrations are additive: V2 adds 0001_billing.sql, 0002_digest.sql,
etc. on top of V1's existing migrations. V2 schema additions
(subscriptions, invoices, plan-enforcement state) live in the private
repo's migration set — the public preorders table records only one-time
preorder receipts and is independent from V2 recurring billing.
V3 (private repo continued)
- Team workspaces — shared dashboards, seat management, admin controls (Team plan, $39/mo)
- BYOK — bring your own Anthropic key for AI digests
- More sources — Bitbucket, PagerDuty, Stripe-as-source, npm / PyPI / Docker Hub release tracking
- WhatsApp destination
Extension points (V1 surface)
Anything below is implemented in V1 and is the contract V2/V3 builds on. Forking V1 is never required:
createApp({ extensions })inapps/server/src/server.tsacceptsregisterRoutes,planGate,sources,destinationssourceRegistry/destinationRegistryinapps/server/src/registries.tsare open forregister()PlanGateinterface in@devpinger/core— public shipsnoopPlanGate, private shipsstripePlanGate- Env-schema merge:
envSchema.merge(z.object({...}))for private env vars - Bot commands extend through the same
Botinstance — private registers/upgrade,/billing, etc. aftercreateAppreturns - I18n:
createTranslator(messages)takes a flat dictionary; the private repo composes V1 keys with its own via plain object spread before passing them in
What lives where
Public (this repo, MIT):
- Full GitHub + Jira product (ingest, actions, notifications, GDPR)
- Plan-schema scaffolding with
noopPlanGate(no Pro enforcement) - Preorder landing surface:
preorderstable,STRIPE_WEBHOOK_SECRETenv,/v1/stripe/webhookforcheckout.session.completed, the/v1/landing/*endpoints. These exist so the public managed deploy can accept one-time $9 lifetime preorders.
Private (devpinger-cloud repo, closed):
- Recurring Stripe billing — customers, subscriptions, invoices,
webhook handlers for
invoice.*/customer.subscription.* stripePlanGatethat enforcesPLAN_LIMITS(replacesnoopPlanGate)/billing/*HTTP routes and/upgrade//billingbot commands- AI digest code (
@devpinger/ai,ANTHROPIC_API_KEY) - Email transports for digests and password-reset-style flows
- Team / workspace tables (Team plan, $39/mo)
The line: one-time preorder logic is public because it's the smoke test for a managed service. Recurring billing and Pro-tier enforcement ship private.