inference-bot
|
2625a6cc83
|
Add listmonk newsletter sync (subscribe on provision, unsubscribe on deactivate)
|
2026-09-16 15:44:56 -06:00 |
|
inference-bot
|
ca3eeccc48
|
Add Reply-To: info@inference.coop on all outgoing email (sendmail pins From to portal.app@)
|
2026-09-15 09:11:44 -06:00 |
|
inference-bot
|
1312df4131
|
Add rate limiting (slowapi) to control-plane endpoints: admin, broker, webhook, /v1/models
|
2026-09-14 20:58:13 -06:00 |
|
inference-bot
|
505f3d9f48
|
Security cleanup: remove dead OPENCOLLECTIVE_SECRET + migrate-teams endpoint + unused helpers; default firstPayment=False
|
2026-09-14 18:39:28 -06:00 |
|
inference-bot
|
1a3c6027bd
|
Migrate admin endpoints from token-in-URL to X-Admin-Token header
|
2026-09-14 18:05:58 -06:00 |
|
inference-bot
|
fabd5a37ae
|
Admin overview: add activated (inviteAccepted) field
|
2026-09-14 17:00:54 -06:00 |
|
inference-bot
|
8e4bf64199
|
Admin overview: include username (resolved from Cloudron user list)
|
2026-09-14 16:53:34 -06:00 |
|
inference-bot
|
9da67a9021
|
Add /admin/overview endpoint (member list + spend + co-op aggregates)
|
2026-09-14 16:39:54 -06:00 |
|
inference-bot
|
841eb70e4d
|
Stream (don't buffer) the chat response so members see tokens immediately
|
2026-09-14 15:15:58 -06:00 |
|
inference-bot
|
87374dfeab
|
Broker usage: add reset_at (credit renewal date)
|
2026-09-14 14:28:16 -06:00 |
|
inference-bot
|
0453cee019
|
Broker usage: add per-model token/spend breakdown + total_tokens + email
|
2026-09-14 14:18:59 -06:00 |
|
inference-bot
|
60d1bf2328
|
Fix injector ReadTimeout (600s read timeout); switch default model to deepseek-v4-1-flash
|
2026-09-14 14:11:15 -06:00 |
|
inference-bot
|
3024bfec74
|
Broker: resolve username->email via Cloudron user list (proxyAuth injects username, not email)
|
2026-09-14 12:59:42 -06:00 |
|
inference-bot
|
a46c016817
|
Add /broker/usage (spend vs balance) + fix broker to use member balance
|
2026-09-14 10:46:47 -06:00 |
|
inference-bot
|
71d63955b3
|
Flexible balance: per-member balance (DB) synced to team budget; keys inherit team; add /admin/set-balance top-up endpoint
|
2026-09-14 10:41:26 -06:00 |
|
inference-bot
|
b0c68c5dda
|
Add broker: member-managed API keys (create/list/revoke) scoped to team, BROKER_SECRET-authenticated
|
2026-09-14 09:43:38 -06:00 |
|
inference-bot
|
2ac821087e
|
Teams migration: per-member LiteLLM team + fresh sk- key (fixes hash-key bug breaking chat for 3 members)
|
2026-09-14 09:14:26 -06:00 |
|
inference-bot
|
8dfd666912
|
Add cloudron_update_profile helper; fill empty displayName on existing users during provisioning
|
2026-09-13 15:45:01 -06:00 |
|
inference-bot
|
473f1b2da8
|
Fix fetch_members GraphQL (email needs inline fragment); add fail-safe against empty-member-list deactivation
|
2026-09-13 13:33:30 -06:00 |
|
inference-bot
|
4f4ea79c3b
|
Add MANUAL_MEMBERS allowlist: exempt founder-tier members from sweep deactivation
|
2026-09-11 19:39:39 -06:00 |
|
inference-bot
|
7971a36544
|
Add ToS/Privacy links to welcome email footer
|
2026-09-11 17:45:48 -06:00 |
|
inference-bot
|
cc39f5ae79
|
Remove OAuth flow (join/oauth endpoints, pending_members, dead helpers); provision via webhook + own email
|
2026-09-11 14:17:08 -06:00 |
|
inference-bot
|
eaeda98bac
|
Provision on webhook (firstPayment) with own welcome email + invite_link; drop OAuth dependency
|
2026-09-11 14:07:51 -06:00 |
|
inference-bot
|
14e838a798
|
Style welcome email to match landing page (centered card, logo, green button)
|
2026-09-11 13:52:21 -06:00 |
|
inference-bot
|
c1866df2a4
|
Add email notifications (sendmail) + membership sweep (scheduler): welcome email on webhook, reconcile endpoint, daily sweep
|
2026-09-11 13:45:18 -06:00 |
|
inference-bot
|
12d36b8244
|
Add /admin/provision endpoint; include glm-5-3-flash in member keys
|
2026-09-10 11:53:45 -06:00 |
|
inference-bot
|
b87a057354
|
Gate membership on email (via admin personal token) instead of slug — fixes guest contributors
|
2026-09-10 11:52:50 -06:00 |
|
inference-bot
|
f55008f46c
|
Add guest-account guidance to /join and 'Not a member yet' pages
|
2026-09-10 09:26:16 -06:00 |
|
inference-bot
|
5d3ace8fe8
|
Fix Loomio sync: use portal DB (OC returns email:null); add manual sync endpoint
|
2026-09-09 14:34:30 -06:00 |
|
inference-bot
|
5490eeb2fc
|
Annotate /v1/models with OpenWebUI web_search capability (default-on)
|
2026-09-06 22:27:06 -06:00 |
|
inference-bot
|
80ac982055
|
Support OpenWebUI: verify X-OpenWebUI-User-Jwt (HS256) or fall back to X-User-Email + portal secret
|
2026-09-06 21:51:25 -06:00 |
|
inference-bot
|
57991cd9f7
|
Add Loomio membership sync (reconcile group to active OC members via /api/b2/memberships)
|
2026-09-06 14:24:53 -06:00 |
|
inference-bot
|
5c28176d30
|
Gate on live OC membership list (authoritative) instead of fragile webhook pending table
|
2026-09-05 22:48:58 -06:00 |
|
inference-bot
|
b58a975518
|
Gate OAuth on pending membership (payment check) + fix slug extraction for member.created events
|
2026-09-05 22:45:35 -06:00 |
|
inference-bot
|
e291406b0b
|
Implement deactivation: move lapsed members to 'inactive' group (keep data), map webhook slug→email
|
2026-09-05 22:40:11 -06:00 |
|
inference-bot
|
051f898667
|
Don't force a username — let Cloudron let the user choose it during setup
|
2026-09-05 22:27:58 -06:00 |
|
inference-bot
|
6257c89800
|
Make key creation idempotent (reuse existing key by alias)
|
2026-09-05 22:24:43 -06:00 |
|
inference-bot
|
f3cc8e1d89
|
Run as root so the app can write SQLite to the root-owned /app/data volume
|
2026-09-05 22:21:42 -06:00 |
|
inference-bot
|
ef467423ac
|
Fix set-active endpoint (PUT /users/:id/active) + add invite email
|
2026-09-05 22:19:58 -06:00 |
|
inference-bot
|
808357215d
|
Add OAuth 'connect your account' flow: /join page, /oauth/start, /oauth/callback (provisions member)
|
2026-09-05 22:09:56 -06:00 |
|
inference-bot
|
ce7d9f3220
|
Harden portal: shared-secret auth for key injector + token-authenticated webhook URL
|
2026-09-05 21:42:27 -06:00 |
|
inference-bot
|
d6605992bc
|
Add /v1/models endpoint (no per-user auth) for LibreChat model discovery
|
2026-09-04 17:33:01 -06:00 |
|
inference-bot
|
ee265ee18f
|
Add SQLite store for email→key mapping; fix key/list (returns token strings); flat 5 budget
|
2026-09-04 17:28:46 -06:00 |
|
inference-bot
|
c1efd39c5c
|
Assign members to Cloudron 'members' group via PUT /users/:id/groups (verified endpoint)
|
2026-09-04 17:16:18 -06:00 |
|
inference-bot
|
7b84025e60
|
Verify integration points: OC webhook events (order.processed/new member), Cloudron user payload
|
2026-09-04 17:10:41 -06:00 |
|
inference-bot
|
451fb561bc
|
Scaffold member portal: OC webhook + Cloudron user mgmt + LiteLLM key injection
|
2026-09-04 17:06:27 -06:00 |
|