Commit Graph

119 Commits (jtr/fix-public-exceptions-http-codes)

Author SHA1 Message Date
Marcel Klehr d04d575ed3
Merge branch 'master' into feat/taskprocessing/user-facing-error-message
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:13:39 +07:00
Marcel Klehr 3ee6999682 fix: Use substr to cut error messages
This allows for cutting them to longer lengths

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-30 10:07:57 +07:00
Marcel Klehr 7f15598083 fix: address review comments
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-20 15:59:25 +07:00
Marcel Klehr 6a1501a7d6 fix: address review comments
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-20 15:59:25 +07:00
Marcel Klehr 044e92bf4e feat(TaskProcessing): Introduce ITriggerableProvider
Signed-off-by: Marcel Klehr <mklehr@gmx.net>

# Conflicts:
#	lib/private/TaskProcessing/Db/TaskMapper.php
2025-10-20 15:59:25 +07:00
Marcel Klehr 9df303f876 fix: address review comments
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-20 15:54:10 +07:00
Marcel Klehr 3f527661b1 fix: Create new class instead of extending existing class
to make it easier to use this across nextcloud versions

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-15 11:20:00 +07:00
Marcel Klehr 7373f11af6 feat(TaskProcessing): user-facing error messages
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 16:53:41 +07:00
Marcel Klehr be8e168f38 fix: Address psalm issues and review comments
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 15:51:31 +07:00
Marcel Klehr 16da8bbc8a fix(TaskProcessingApiController): Implement getNextScheduledTasks for next_batch endpoint
in order to avoid hitting the DB with multiple 1 row requests

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-14 11:50:29 +07:00
Marcel Klehr ea8ab8e192
Merge pull request #55646 from nextcloud/feat/taskprocessing/is-internal
enh(TaskProcessing): Introduce internal task types
2025-10-14 08:25:00 +07:00
Marcel Klehr 13eb2d1cbd feat(TaskProcessing): Introduce internal task types
which are not shown in the assistant UI

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-13 11:07:40 +07:00
Marcel Klehr a6f899f925 fix(TaskProcessing): Increase MAX_TASK_AGE to 6 months
to comply with the EU AI act

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-10-06 16:44:53 +07:00
Marcel Klehr fe54914ef9 fix(TaskProcessing): Cache task types by
user language

fixes https://github.com/nextcloud/assistant/issues/357

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-09-17 14:16:01 +07:00
Julien Veyssier 8c447eaba6
feat(taskprocessing): add manager method to get the list of available task type IDs
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-09-05 11:37:34 +07:00
Julien Veyssier aa2ca86fb3
feat(taskprocessing): avoid generator cascade
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:22 +07:00
Julien Veyssier cc295f2452
feat(taskprocessing): use Generator::getReturn to get the list of deleted tasks in the cleanup command
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +07:00
Julien Veyssier 19801f7ec4
feat(taskprocessing): move cleanup method to private taskprocessing manager, use it in the cleanup bg job and implement a cleanup command
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +07:00
Julien Veyssier 8c52b6c0fe
feat(taskprocessing): add cleanup flag to tasks to decide if they should be cleaned up automatically
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-07 15:12:21 +07:00
Julien Veyssier be7ef439cf
fix(taskprocessing): move LAZY_CONFIG_KEYS constant to the private namespace
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-04 10:11:24 +07:00
Julien Veyssier 2e3fa51132
feat(taskprocessing): load and store some config keys lazily
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-08-04 10:11:24 +07:00
Lukas Schaefer 4731ecf4d4
Merge branch 'master' into feat/task/analyze-image 2025-07-08 08:35:04 +07:00
Julien Veyssier 2da3f450fa
feat(TaskProcessing): add agency audio-to-audio task type
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-07-07 15:29:55 +07:00
Julien Veyssier af059cbf61
feat(TaskProcessing): add audio-to-audio chat task type
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
2025-07-07 11:39:47 +07:00
Lukas Schaefer 20a779e4aa
feat: support multiple images
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-07-03 11:01:10 +07:00
Jana Peper 603522a59c test: fix tests
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-07-03 10:25:19 +07:00
Jana Peper f8886fe27a feat: add toggle for AI guest restriction
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-07-03 10:25:19 +07:00
Lukas Schaefer 3e24c40939
feat(TaskProcessing): Add AnalyzeImage TaskType
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-07-02 09:18:53 +07:00
Lukas Schaefer 99e8849b6c
feat(TaskProcessing): Add TextToSpeech provider
Signed-off-by: Lukas Schaefer <lukas@lschaefer.xyz>
2025-04-26 00:46:23 +07:00
Oleksander Piskun c23ab0d1f7 fix(taskprocessing): use the event for AppAPI to get list of AI providers
Signed-off-by: Oleksander Piskun <oleksandr2088@icloud.com>
2025-04-09 15:47:48 +07:00
Côme Chilliet 85fbd3eb0a
fix: Work around psalm taint false-positive by not using var_export
var_export is listed as a taint sink because it may output stuff
 depending on the parameters. It was not the case here, but we can
 simply json_encode the result by passing it as context to the logger
 method rather than using var_export.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-17 15:24:08 +07:00
Côme Chilliet a3685551f7
fix: Replace isInstalled calls with isEnabledForAnyone or isEnabledForUser
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-02-13 10:19:19 +07:00
Marcel Klehr 319a4d2df8 fix(TaskProcessing\Manager): Always use distributed cache and use PHP serialize
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-02-04 13:04:43 +07:00
Marcel Klehr f127ab10da
fix: lib/private/TaskProcessing/Manager.php
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-02-04 13:03:59 +07:00
Marcel Klehr 49a52126ab fix(TaskProcessing\Manager): Always use distributed cache and use PHP serialize
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-02-04 12:54:13 +07:00
Marcel Klehr a6100021e3 fix(TaskProcessing): Cache providersById in getPreferredProviders
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-24 16:45:43 +07:00
Marcel Klehr c1db2eb0a9 fix: copypasta
Co-authored-by: Julien Veyssier <julien-nc@posteo.net>
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-24 16:45:43 +07:00
Marcel Klehr c489d7d8a5 fix(taskprocessing): cache provider settings in distributed cache as well
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-24 16:45:43 +07:00
Marcel Klehr d956e4a2ca fix(TaskProcessing\Manager): Cache the result of parsing JSON
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-24 16:45:43 +07:00
Marcel Klehr 0006bb8586 fix(taskprocessing): Cache result of getAvailableTaskTypes between requests
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-24 16:45:43 +07:00
Marcel Klehr 4fc0369984 fix(TaskProcessing): Catch JSON encode errors in Manager#setTaskResult
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-01-23 11:41:06 +07:00
Jana Peper 056daf2592 feat: add proofread task type
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-20 10:22:30 +07:00
Jana Peper ee31b3bbe5 fix: error handling for wrong json values
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-18 18:32:34 +07:00
Jana Peper d87302c651 feat: add error flags for json_decode
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-18 18:32:34 +07:00
Marcel Klehr 79023b9f3e fix(taskrpocessing): Cache result of getAvailableTaskTypes
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-12-18 18:32:34 +07:00
Jana Peper 40fc07b543 fix: always regenerate availabe task types
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-18 18:32:34 +07:00
Jana Peper 76d058f4c8 fix: show all types when no preferences saved
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-18 18:32:34 +07:00
Jana Peper 8cac92665d feat: filter disabled apps in task types requests
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2024-12-18 18:32:34 +07:00
Marcel Klehr e5ce55551d feat(TaskProcessing): More task types
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-12-09 14:10:59 +07:00
Marcel Klehr d2df0f42f1 fix(TaskProcessing\Manager): Don't provoke PHP notice in setTaskResult
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2024-10-02 08:38:20 +07:00