Lucas Smith
653ab3678a
feat: better ratelimiting ( #2520 )
...
Replace hono-rate-limiter with a Prisma/PostgreSQL bucketed counter
approach that works correctly across multiple instances without sticky
sessions.
- Add RateLimit model with composite PK (key, action, bucket) and atomic
upsert
- Create rate limit factory with window parsing, bucket computation, and
fail-open
- Define auth-tier and API-tier rate limit instances
- Add Hono middleware, rateLimitResponse helper, and tRPC
assertRateLimit helper
- Wire rate limit headers through AppError constructor (was declared but
never assigned)
- Apply rate limits to auth routes (email-password, passkey), tRPC
routes
(2FA email, link org account), API routes, and file upload endpoints
- Add cleanup cron job for expired rate limit rows (batched delete every
15 min)
- Remove hono-rate-limiter dependency
2026-02-20 12:23:02 +11:00
Lucas Smith
006b1d0a57
feat: per-recipient envelope expiration ( #2519 )
2026-02-20 11:36:20 +11:00
Lucas Smith
2e3d22c856
fix: use instance-specific emails for service accounts ( #2502 )
2026-02-16 11:52:19 +11:00
Lucas Smith
0f8b7670f4
fix: correct path prefix check for static assets caching ( #2433 )
2026-01-29 16:05:08 +11:00
David Nguyen
1b0df2d082
feat: add license integration ( #2346 )
...
Changes:
- Adds integration for the license server.
- Prevent adding flags that the instance is not allowed to add
2026-01-29 13:30:48 +11:00
Lucas Smith
2ee6b90c99
fix: add debug logging for ai streaming ( #2275 )
2025-12-04 10:03:29 +11:00
Lucas Smith
7a94ee3b83
feat: add ai detection for recipients and fields ( #2271 )
...
Use Gemini to handle detection of recipients and fields within
documents.
Opt in using organisation or team settings.
Replaces #2128 since the branch was cursed and would include
dependencies that weren't even in the lock file.
https://github.com/user-attachments/assets/e6cbb58f-62b9-4079-a9ae-7af5c4f2e4ec
2025-12-03 23:39:41 +11:00
Lucas Smith
11a56f3228
chore: telemetry ( #2240 )
2025-11-25 16:01:31 +11:00
Lucas Smith
0663605ffd
fix: handle loading files in embedded authoring update flows ( #2218 )
2025-11-20 15:07:41 +11:00
Lucas Smith
68a3608aee
fix: handle bracket notation arrays ( #2178 )
...
Co-authored-by: David Nguyen <davidngu28@gmail.com >
2025-11-12 16:38:06 +11:00
Lucas Smith
48626b9169
fix: support utf8 filenames download ( #2145 )
2025-11-07 23:41:31 +11:00
David Nguyen
88371b665a
fix: set correct envelope item cache url ( #2144 )
2025-11-07 16:50:58 +11:00
David Nguyen
d05bfa9fed
feat: add envelopes api ( #2105 )
2025-11-07 14:17:52 +11:00
Ephraim Duncan
35250fa308
feat: server port configurable via PORT env ( #2097 )
2025-10-27 17:24:24 +11:00
Lucas Smith
f15c0778b5
fix: authoring token arg and null email settings
2025-10-21 10:42:44 +11:00
David Nguyen
7f09ba72f4
feat: add envelopes ( #2025 )
...
This PR is handles the changes required to support envelopes. The new
envelope editor/signing page will be hidden during release.
The core changes here is to migrate the documents and templates model to
a centralized envelopes model.
Even though Documents and Templates are removed, from the user
perspective they will still exist as we remap envelopes to documents and
templates.
2025-10-14 21:56:36 +11:00
Lucas Smith
20c8969272
fix: get real ip for rate limit key
2025-06-27 22:17:02 +10:00
David Nguyen
e07a497b69
feat: api logging by pino ( #1865 )
...
experiemental
2025-06-27 21:44:51 +10:00
David Nguyen
dc2042a1ee
fix: rate limit api endpoints ( #1863 )
...
Rate limit API endpoint
2025-06-27 18:50:22 +10:00
David Nguyen
e6dc237ad2
feat: add organisations ( #1820 )
2025-06-10 11:49:52 +10:00
David Nguyen
ad520bb032
fix: remove oauth from embeds
2025-02-27 14:08:59 +11:00
David Nguyen
6474b4a524
fix: add preferred team middleware
2025-02-26 19:42:42 +11:00
David Nguyen
50a41d0799
fix: pdf viewer and embeds
2025-02-20 15:06:36 +11:00
David Nguyen
250381fec8
fix: billing
2025-02-20 12:17:55 +11:00
David Nguyen
63e2ef0abf
fix: static caching
2025-02-19 21:35:35 +11:00
David Nguyen
ac30654913
fix: add auth session lifetime
2025-02-19 18:04:36 +11:00
David Nguyen
a319ea0f5e
fix: add public profiles tests
2025-02-19 16:07:04 +11:00
David Nguyen
5fc724b247
fix: rework sessions
2025-02-17 22:46:36 +11:00
David Nguyen
1ed1cb0773
chore: refactor sessions
2025-02-16 00:44:01 +11:00
David Nguyen
8d5fafec27
feat: add static cache
2025-02-15 00:08:36 +11:00
David Nguyen
ebc2b00067
fix: add sign up hook
2025-02-13 20:21:23 +11:00
David Nguyen
383b5f78f0
feat: migrate nextjs to rr7
2025-02-13 14:10:38 +11:00