Daniel Salazar
16652347c6
test: add tests for HomepageController ( #3010 )
...
Covers the early-return guard when the homepage service is unwired,
shell rendering at /, /settings, /dashboard, /action, /@:username,
canonical_url + meta inheritance from gui_params, /app/:name (404 +
shell, embedded app metadata, JSON / object metadata, malformed JSON),
and /show/* launching the explorer with the trimmed path.
Closes #2973
2026-05-07 21:41:16 -07:00
Daniel Salazar
5f28b988ec
test: add tests for SystemController ( #3009 )
...
Covers /healthcheck (live status, 503 on failure, fallback when service
unavailable), /version (semver parsing, env defaults), /contactUs
(validation, persistence, email best-effort, default support address),
/whoarewe, /lsmod (interface grouping + driverName fallback), and the
prepareShutdown drain-flag flip.
Closes #2971
2026-05-07 21:40:27 -07:00
Daniel Salazar
160631b158
test: add tests for OIDCController ( #3008 )
...
Covers the provider listing route, the auth-start redirect (404 / 400 /
500 / 302), all three callback flows (login / signup / revalidate)
including state validation, suspended accounts, unconfirmed-email
linking refusal, redirect_uri origin clamping, and the
revalidate-done landing page. Routes are collected via PuterRouter and
invoked with stubbed services that return prefab data.
Closes #2966
2026-05-07 21:38:47 -07:00
Daniel Salazar
3ab9923f0c
fix: ai provider integration tests ( #3011 )
...
* fix: ai provider integration tests
* change name for ai test
2026-05-07 21:38:40 -07:00
Daniel Salazar
cc799e069f
test: add unit tests for fileInput driver utility ( #3007 )
...
Covers `loadFileInput` (validation, data-URL decoding, FS-path resolution,
maxBytes enforcement, ACL gating) and `inferFilenameFromUrlOrPath`. Stubs
stores/fsService with prefab data so tests don't require a real server.
Closes #2957
2026-05-07 21:38:27 -07:00
Daniel Salazar
9a7d3bac5f
test: add tests for DesktopController ( #3006 )
...
Covers /set-desktop-bg (partial updates, null clearing, type validation),
/update-taskbar-items (JSON serialization), /set_layout (layout
allowlist, ownership gate, path/uuid resolution), and /set_sort_by
(sort_by/sort_order allowlists, default ordering). Routes are
collected via PuterRouter and driven with stub stores returning
prefab fsentry rows.
Closes #2970
2026-05-07 21:37:34 -07:00
Daniel Salazar
0a9a4f629d
test: add tests for StaticPagesController ( #3005 )
...
Covers /robots.txt (bot disallow + sitemap), /sitemap.xml (docs +
approved-listing apps), /unsubscribe (missing/invalid uuid, idempotent
re-runs), and /confirm-email-by-token (token mismatch, already-confirmed
short-circuit, duplicate-email rejection, success path with verified-
group promotion + best-effort side channels). Stub stores hold prefab
user rows; the DB stub returns canned EXISTS / SELECT results.
Closes #2975
2026-05-07 21:36:50 -07:00
Daniel Salazar
32c2c0c1a5
test: add tests for AppController ( #3004 )
...
Covers /apps, /apps/nameAvailable, /rao, /apps/:name (single + batch),
/query/app (max-entries cap, marketplace shape, hidden-app gating), and
/app-icon (default fallback, data-URL decoding, MIME allowlist, CDN
redirect). Routes are collected via PuterRouter; AppDriver is injected
through the shared `driversContainers` registry, and stub stores return
prefab app rows.
Closes #2969
2026-05-07 21:35:49 -07:00
Daniel Salazar
508d652194
test: add tests for StaticAssetsController ( #3003 )
...
Covers each config-gated branch (client_libs_root, puterjs_root,
gui_assets_root, builtin_apps) using real temp directories so the
existsSync checks see real files instead of mocked module behavior.
Asserts both registration outcomes (which routes appear, on which
subdomains) and the file resolution rules for the puter.js / puter.dev.js
fallback.
Closes #2974
2026-05-07 21:35:17 -07:00
jelveh
471ba94ba2
Update index.js
2026-05-07 20:04:43 -07:00
jelveh
66e24a07d4
Update console banner and messaging
2026-05-07 19:49:01 -07:00
jelveh
5ffac54c86
experimental cute CTA
2026-05-07 19:39:06 -07:00
ProgrammerIn-wonderland
c5b12b61d9
Unconditionally send Access-Control-Allow-Private-Network, fix LNA fix in GUI ( #2954 )
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
2026-05-07 16:38:04 -07:00
Daniel Salazar
8d5e9ef9cf
fix: types for open ai driver ( #2950 )
...
* fix: types for open ai driver
* fix: add extra time to tests
* fix: test
* fix: together ai tests
* fix: tests
2026-05-07 14:48:47 -07:00
Daniel Salazar
25fe9a3cdf
fix: add coverage reports for changes ( #2949 )
...
* tests: ai integraton tests
* fix: add coverage reports for this too
2026-05-07 13:55:09 -07:00
Daniel Salazar
05425d20a7
chore: cleanup types for tests ( #2948 )
2026-05-07 13:40:58 -07:00
Nariman Jelveh
ff10e47d67
Show fullscreen overlay when signup is blocked ( #2947 )
2026-05-07 11:37:23 -07:00
Daniel Salazar
6c19dfbafd
fix: linux build ( #2946 )
2026-05-07 11:23:10 -07:00
Nariman Jelveh
360cbf48af
feat: support code in puter.signup.validate error responses ( #2945 )
...
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
Extensions listening on the `puter.signup.validate` event can now set a
`code` field (in addition to `message`) when blocking signups. The code
is forwarded through HttpError and appears in the JSON error response,
giving clients a stable, machine-readable signal to act on.
Covers both the AuthController (password signup) and OIDCService paths.
Adds tests for the new field.
2026-05-07 10:11:08 -07:00
Daniel Salazar
bbe93defe9
tests: add some more driver tests ( #2944 )
2026-05-07 10:04:39 -07:00
Reynaldi Chernando
5e01c13b31
Fix duplicate textract result ( #2943 )
2026-05-07 09:15:28 -07:00
Daniel Salazar
4b37f35803
test: tests for fs endpoints ( #2942 )
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
2026-05-06 22:55:53 -07:00
Daniel Salazar
775c9c49e2
test: add harness and some examples ( #2941 )
...
* test: add harness and some examples
* feat: tests ran on pr
2026-05-06 22:43:22 -07:00
Nariman Jelveh
e35260924e
Scope .myapps-search to input and tweak UI styles
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
2026-05-06 17:59:54 -07:00
Nariman Jelveh
90aad8918c
Support light/dark sidebar logo
2026-05-06 17:54:37 -07:00
Nariman Jelveh
46974beba1
Replace gradients with flat colors in system buttons
2026-05-06 17:47:45 -07:00
Shruc
5e9dc33be1
expose costs in ai chat response ( #2921 )
...
* expose costs
* microcents
2026-05-06 15:59:16 -07:00
Daniel Salazar
1e271f188e
fix: bring back old app names functionality and fix build ( #2937 )
2026-05-06 15:48:25 -07:00
jelveh
f333597754
Update IPC.js
2026-05-06 15:40:38 -07:00
jelveh
3b33d16356
Merge branch 'main' of https://github.com/HeyPuter/puter
2026-05-06 15:33:21 -07:00
jelveh
2289d61d3c
Update UIPrompt.js
2026-05-06 15:33:13 -07:00
Daniel Salazar
8e02f38bad
fix: templates ( #2936 )
2026-05-06 15:31:41 -07:00
angelinazzz1809
5b65a6bc78
Update UIPrompt.js ( #2930 )
...
In the app environment, the prompt input was initialized using `options.value`, so `defaultValue` was not reflected.
This change ensures that `defaultValue` is used when provided, while keeping backward compatibility with `options.value`.
2026-05-06 15:27:28 -07:00
ProgrammerIn-wonderland
872d2c01d4
Add support for log in with Apple ( #2935 )
...
* Add experimental login with Apple support
* Fix revalidate URL
* Fix OIDC provider revalidate in whoami as well
2026-05-06 16:47:24 -04:00
jelveh
b7f199ddbc
Normalize string options to object
2026-05-06 11:59:28 -07:00
jelveh
906c00af97
Support options.defaultColor in color picker
2026-05-06 11:48:47 -07:00
Shruc
f00d52f879
per model allowed params on replicate image, normalize ratio ( #2898 )
...
* replicate allowed params, normalize ratio
* update docs
2026-05-06 14:16:30 -04:00
Devendra Reddy Pennabadi and devareddy05
7a1a885e89
fix: inline http(s) image URLs for Moonshot vision models ( #2929 ) ( #2931 )
...
Co-authored-by: devareddy05 <pdevendrareddy@guidewire.com >
2026-05-06 13:53:52 -04:00
Daniel Salazar
ff8c275317
chore: package-lock.json ( #2934 )
2026-05-06 10:52:22 -07:00
Devendra Reddy Pennabadi and devareddy05
b3bf979cac
fix: support defaultValue in showColorPicker app env ( #2895 ) ( #2932 )
...
Co-authored-by: devareddy05 <pdevendrareddy@guidewire.com >
2026-05-06 10:46:32 -07:00
Reynaldi Chernando
eb9e316ed5
Update Z.AI vision model id to z-ai/z-ai for consistency ( #2928 )
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
2026-05-06 02:41:04 -04:00
Daniel Salazar
224ea5f7f8
fix: extensions ( #2926 )
2026-05-05 20:55:53 -07:00
Daniel Salazar
c1dacab4c2
extension events after boot fixes ( #2925 )
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
Notify HeyPuter / notify (push) Has been cancelled
release-please / release-please (push) Has been cancelled
2026-05-05 17:42:55 -07:00
Daniel Salazar
8d0b8d4905
fix: app errors ( #2924 )
2026-05-05 17:20:31 -07:00
jelveh
e7190f442e
Update README.md
2026-05-05 16:49:01 -07:00
Nariman Jelveh
95e1b7d171
New README.md ( #2915 )
...
Docker Image CI / build-and-push-image (push) Has been cancelled
* Update README branding, screenshot, and links
* Update README: rephrase intro and add goals
* Update README.md
* Update README.md
* Rename self-hosting docs and add Windows installer
* Update self-hosting headings and README link
* Update README.md
* Update README.md
* Update README.md
26.05
2026-05-05 16:35:07 -07:00
Daniel Salazar
f9ac017faf
fix: fsEntry and tscofnig ( #2923 )
2026-05-05 16:18:09 -07:00
Daniel Salazar
4252b7f76f
fix: email ( #2922 )
2026-05-05 15:21:15 -07:00
Daniel Salazar
58a7459e45
fix: broken apps in self hosted ( #2920 )
2026-05-05 12:45:17 -07:00
ProgrammerIn-wonderland
5dd601a90b
add back web input into OCR ( #2919 )
2026-05-05 14:44:54 -04:00