KernelDeimos
cbde123aa1
fix(backend): undo part of 35461a0
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
It turns out this part of `35461a0` was not necessary to fix this issue,
and the code is still more correct if it falls true when the token's
authorizor has a permission granted.
2026-02-03 15:46:30 -05:00
KernelDeimos
8cd0a7f76b
dev(backend): clear cache when revoking tokens
2026-02-03 15:46:30 -05:00
KernelDeimos
5fd1e9b6a6
dev(puter.js): add revokeReadURL
2026-02-03 15:46:30 -05:00
KernelDeimos
3ffe8eaf30
dev(backend): add revoke_access_token endpoint
2026-02-03 15:46:30 -05:00
Daniel Salazar
0234e34b46
Reapply: reverted redis migration changes ( #2403 )
2026-02-03 11:25:28 -08:00
Daniel Salazar
baceb05b48
Revert "feat: replace serializible caches with redis instead of kvjs 🚀 ( #2381 )"
...
This reverts commit 7a47047c0d .
2026-02-03 12:43:00 -05:00
Daniel Salazar
a4b90083e0
Revert "fix: missing redis changes ( #2401 )"
...
This reverts commit 07a389798d .
2026-02-03 12:43:00 -05:00
Daniel Salazar
07a389798d
fix: missing redis changes ( #2401 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-02-03 02:55:44 -08:00
Daniel Salazar
7a47047c0d
feat: replace serializible caches with redis instead of kvjs 🚀 ( #2381 )
...
* wip: redis move
* fix: redis in extensions
* fix: bad isEMpty assignment
* fix: bad redis client config
* wip
* fix: redis keys cache
* fix: redis batch delete
* fix: change bulk cache times to allow for more instaces
* fix: broken tests
2026-02-03 02:18:31 -08:00
KernelDeimos
5250671b01
fix: range headers in file.js
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
Range header support was mostly incorrect, which brought to surface
undefined behavior in OnlyOffice which resulted in a request hanging.
This was the cause of the `pdf-editor` app hanging for a while when
opening it with a new file.
2026-02-02 20:08:02 -05:00
Daniel Salazar
e2e4794bbc
fix: alerting for metering ( #2399 )
2026-02-02 15:38:45 -08:00
Neal Shah
fa76c21300
WebDAV post migration fixes ( #2398 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-02-02 11:48:16 -08:00
jelveh
7aedeae991
Pass redirect_url to UIWindowSessionList
2026-02-02 09:24:21 -08:00
Neal Shah
bf233c8fe0
Add X-EXPECTED-ENTITY-LENGTH for HTTP/2 connections on webdav for predictive file length ( #2396 )
2026-02-02 07:52:56 -08:00
Neal Shah
3d34b36159
Add more coersions to responses toolcalling support ( #2395 )
2026-02-02 07:45:56 -08:00
jelveh
6bd64808df
Add redirect_url handling and adjust auth flow
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
Set and propagate a redirect_url for auth flows and use it when navigating after login/signup to avoid leaking sensitive data.
2026-02-02 00:16:35 -08:00
Neal Shah
7cce0705d3
Add back worker redeploy notification ( #2394 )
2026-02-01 21:57:23 -08:00
Daniel Salazar
afbb76f95f
fix: ai metering ( #2393 )
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
* fix: expose getUserService in extension typings
* fix: ai metering
2026-02-01 18:14:14 -08:00
Nariman Jelveh
b15b466d36
Update TabAccount.js
2026-02-01 17:48:57 -08:00
Neal Shah
5216cccbce
More Anthropic tool calling coercions ( #2392 )
2026-02-01 17:29:22 -08:00
Neal Shah
9e9a7b4dcf
Fix tests for ChatAPIService ( #2391 )
...
* Fix tests for chatapiservice
* Anthropic Claude Provider fixes for toolcalling in OpenAI completions compatible service
2026-02-01 17:04:16 -08:00
Neal Shah
3a0f466ef6
OpenAI chat interface API concept ( #2390 )
2026-02-01 15:46:23 -08:00
Nariman Jelveh
6fbe83d982
Show cancelled state in auth window
...
When the user clicks Cancel in the authorization window, the code now disables action buttons and replaces the window body with a cancellation UI (header with icon, title, description and a message). Added corresponding English i18n keys (authorization_cancelled, authorization_cancelled_desc, authorization_cancelled_message) to provide localized text for the new cancelled state.
2026-02-01 15:34:02 -08:00
Neal Shah
be290e2d3c
fix typo gemini service ( #2389 )
2026-02-01 14:24:48 -08:00
Nariman Jelveh
a92bbc4ec2
Disable dragging for AuthMe window
2026-02-01 13:43:46 -08:00
Nariman Jelveh
1e6521927f
Add UIWindowAuthMe authorization dialog
...
Introduce a new UIWindowAuthMe component that displays a security-focused consent dialog for redirecting to third-party URLs with the user's auth token. Adds related i18n strings and integrates the dialog into initgui, replacing the previous UIAlert confirm flows; when approved (resolves true) the token is appended to the redirect URL and navigation proceeds. Changes: adds src/gui/src/UI/UIWindowAuthMe.js, updates src/gui/src/i18n/translations/en.js, and imports/uses the new dialog in src/gui/src/initgui.js.
2026-02-01 13:26:13 -08:00
Nariman Jelveh
4b8c46efc8
Add UI to view and copy auth token
...
Introduce a new UIWindowCopyToken component to display the user's auth token with a copy-to-clipboard button and confirmation message. Integrate the token UI into the account dashboard (TabAccount) by adding an auth token card and click handler to open the window. Add corresponding i18n keys (auth_token, token_copied, copy_token_message, copy_token_description) and import the new window in initgui. Also wire the global action 'copyauth' to show the token dialog and adjust session/login flow so the session list/login windows respect the action (avoid auto-reload when showing the token dialog). Minor UI string cleanup to use i18n('approve') directly.
2026-02-01 13:02:25 -08:00
Nariman Jelveh
bfea66a1d6
Serve HTML success page on auth callback
...
Replace the plain text response with a styled HTML confirmation page for the local authentication callback. The handler now sets Content-Type to text/html and returns a responsive, animated "Authentication Successful" page (with checkmark graphic and Puter branding) while preserving the existing token extraction from the callback URL's search params.
2026-02-01 12:34:26 -08:00
Neal Shah
22606f29b2
getAuthToken on node package ( #2388 )
2026-02-01 12:03:30 -08:00
Nariman Jelveh
97cf80b068
Support authme action from URL query
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
Read the 'action' value from URL query params and handle a new 'authme' action. When 'authme' is present, prompt the user to approve redirecting to the provided redirectURL; if approved, append the current auth token as a 'token' query parameter and navigate to that URL. The prompt is shown in two places (after auth data is updated and before loading the desktop) to cover different entry flows. Also removed a stray blank line.
2026-02-01 11:51:29 -08:00
Daniel Salazar
114fbff2cd
fix: expose getUserService in extension typings ( #2385 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-31 13:19:28 -08:00
Daniel Salazar
7a9302f479
[PUT-487] fix: set max-min on app-user-count queries 🐛 ( #2384 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-31 00:52:53 -08:00
Neal Shah
af62835d48
video model costs ( #2383 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-30 12:03:36 -05:00
Neal Shah
aa508a74dc
puter x-expected-entity-length for site ( #2379 )
2026-01-30 11:34:32 -05:00
Daniel Salazar
e1b52a9828
cleanup: remove informationService in favour of existing helper methods and logic ( #2374 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-29 17:25:28 -08:00
velzie and Neal Shah
1e1de413c5
Add canonical puterId to image provider models ( #2322 )
...
* add canonical puterId to image provider models
* return fully qualified puterIds in AIImageGenerationService.list()
* add aliases to openai image models
---------
Co-authored-by: Neal Shah <30693865+ProgrammerIn-wonderland@users.noreply.github.com >
2026-01-29 14:47:51 -05:00
Daniel Salazar
de14bf7273
fix: match override properly ( #2373 )
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-28 22:45:11 -08:00
Devansh Dubey and Reynaldi Chernando
fecd67a196
fix(resume-analyzer): add preprocessing for DOCX and TXT files ( #2359 )
...
* Update ai-resume-analyzer.html
* Cleanup comments and update to haiku 4.5
---------
Co-authored-by: Reynaldi Chernando <reynaldichernando@gmail.com >
2026-01-29 13:38:35 +07:00
Daniel Salazar
5a8e9063ec
fix: map again ( #2372 )
2026-01-28 22:34:45 -08:00
Daniel Salazar
4aa2039956
fix: cost mapping for together ai from openai sdk ( #2371 )
2026-01-28 22:20:59 -08:00
Daniel Salazar
40f805f64b
[PUT-475] fix togetherai chat being broken + deprioritize them 🐛 ( #2369 )
2026-01-28 22:04:06 -08:00
Daniel Salazar
6daac664c6
fix: remove rate limit await on writes ( #2368 )
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
* otel: logs and spans for dynamo db
* fix: imports
* fix: add more logging
* fix: import paths
* fix: console log
* fix: better logs
* fix: logging
* fix: remove rate limit await on writes
* cleanup, remove uneeded spans in ddb client
2026-01-28 16:13:53 -08:00
KernelDeimos
35461a0345
fix: app-under-user access token ACL
...
There were a couple issues with ACL where access would be denied to app
tokens within access tokens, caused by:
- incorrect recursion: only `false` was considered when in fact the
result from the recursive call is appropriate
- files without a known path are incorrectly handled, which can happen
when iterating over parent directories
2026-01-28 16:00:01 -05:00
Arya Dasgupta and Reynaldi Chernando
0028b41fe3
docs: add example for streaming with function calling ( #2365 )
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
* docs: add example for streaming with function calling
* Minor fix and add example to playground
---------
Co-authored-by: Reynaldi Chernando <reynaldichernando@gmail.com >
2026-01-28 18:01:28 +07:00
jelveh
fc8117df1e
add login indicator with animated spinner
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
2026-01-27 23:39:18 -08:00
Daniel Salazar
89c49902b6
otel: add spans to all kv methods ( #2358 )
2026-01-27 19:16:04 -08:00
Daniel Salazar
4183d5de06
[PUT-466] fix: count request costs in openrouter models with request cost present ( #2356 )
2026-01-27 18:32:43 -08:00
Daniel Salazar
cc5285f88a
fix: only rate limit login when failed ( #2355 )
2026-01-27 18:24:05 -08:00
KernelDeimos
e7443338fb
fix: more reliable 404 responses for .api endpoint
...
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test-backend (24.x) (push) Has been cancelled
test / API tests (node env, api-test) (24.x) (push) Has been cancelled
test / puterjs (node env, vitest) (24.x) (push) Has been cancelled
This fix avoids some situations where a non-existing route hangs instead
of responding with 404.
2026-01-27 15:46:28 -05:00
KernelDeimos
a8dc62ef80
fix: header resend issue with catch-all handler
...
WebDAVService catches `/*`, which shouldn't be a problem because it is
on the `dav.` subdomain - however, other middlewares were being invoked
before the subdomain check. Thanks to the `'route'` parameter for the
`next` function we can handle subdomain checks in a more reliable way
2026-01-27 15:46:28 -05:00