Conversation
…ttings tab SystemTask::completeJob() was overwriting engine_data with only the result array, losing the task_type metadata that TaskScheduler originally stored. The get_last_runs() SQL query uses JSON_EXTRACT on task_type to find jobs, so it only found failed jobs (where failJob() re-added task_type) and missed all successful runs. Both completeJob() and failJob() now merge into existing engine_data instead of overwriting. Also adds a new Auth Providers tab to the Settings page — a single view to see all registered auth providers with connection status, config fields, and connect/disconnect actions. Includes REST endpoint GET /auth/providers, TanStack Query hooks, and card-based React UI.
Homeboy Results —
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fix system task status display:
SystemTask::completeJob()was overwritingengine_datawith only the result array, losing thetask_typefield thatTaskScheduler::schedule()originally stored. Theget_last_runs()SQL query usesJSON_EXTRACT(engine_data, '$.task_type')to find matching jobs — so it could only find failed jobs (wherefailJob()re-addedtask_type) and completely missed all successful runs. BothcompleteJob()andfailJob()now merge results into existingengine_datainstead of overwriting.Add Auth Providers tab to the Settings page — a single view to manage all registered auth providers with connection status, configuration, and connect/disconnect actions. Previously this was only accessible per-handler from the pipeline page.
Changes
Bug fix: SystemTask engine_data preservation
inc/Engine/AI/System/Tasks/SystemTask.php—completeJob()andfailJob()now read existingengine_dataviaretrieve_engine_data()and merge the result/error data into it, preserving scheduler metadata (task_type,context,scheduled_at)New: Auth Providers Settings Tab
inc/Api/Auth.php— NewGET /datamachine/v1/auth/providersendpoint returning all registered providers with type, status, config fields, callback URL, and account detailsinc/Core/Admin/Settings/assets/react/queries/authProviders.js— TanStack Query hooks (useAuthProviders,useSaveAuthConfig,useDisconnectAuth)inc/Core/Admin/Settings/assets/react/components/tabs/AuthProvidersTab.jsx— Card-based UI with inline status badges, config forms, callback URL display, and disconnect actionsinc/Core/Admin/Settings/assets/react/SettingsApp.jsx— Register new tabinc/Core/Admin/Settings/assets/css/settings-page.css— Full responsive styles for auth provider cards