Commit Graph
89014 Commits
Author SHA1 Message Date
John Chilton f8decd4785 WIP: allow collection inputs to YAML tools. 2026-02-12 15:58:16 -05:00
John Chilton 5b5bb422bc YAML tools specify a minimum profile of 24.2 so test requests load. 2026-02-12 15:58:16 -05:00
John Chilton 3c5e3c955e Allow YAML-based tools to produce output collections. 2026-02-12 15:58:16 -05:00
John Chilton 8d84e3dd11 YAML test for collection WIP. 2026-02-12 15:58:16 -05:00
John Chilton abbc3e1dc4 Do not allow the legacy tool submission with user tools from tests. 2026-02-12 15:58:16 -05:00
John Chilton 85d5d17321 claude infrastructure for managing test tools. 2026-02-12 15:58:16 -05:00
John Chilton 8276031c43 Failing gx_boolean_user.yml tool to develop against. 2026-02-12 15:58:16 -05:00
John Chilton fbeb0963cd Does this change make sense in light of select handling changes that seem to be working? 2026-02-12 15:58:16 -05:00
John Chilton 1bb986cdb1 Add a function tests for multiple selects from user tools. 2026-02-12 15:58:16 -05:00
John Chilton c55864e862 Persist validated job tool state. 2026-02-12 15:58:16 -05:00
John Chilton 12fb8c9f1e Migration for job.tool_state. 2026-02-12 15:58:16 -05:00
John Chilton dddcf09855 [WIP] track abstract inputs type in tool source interface. 2026-02-12 10:50:13 -05:00
John Chilton 8e208fcf39 Small tweaks to tool loading in celery task for downstream. 2026-02-12 10:50:13 -05:00
John Chilton 8b662c4f3f Refactor path for loading user defined tools for consistency. 2026-02-12 10:50:13 -05:00
John Chilton e71741e264 fix: don't let yaml tool source parsing change yaml tool source serialization 2026-02-12 10:50:13 -05:00
John Chilton cc89081927 Modeling and validation of YAML tool test cases. 2026-02-12 10:50:13 -05:00
John Chilton 10197f9ba9 Test serialization roundtrip (discovered bugs in YAML parsing). 2026-02-12 10:50:02 -05:00
John ChiltonandClaude Opus 4.5 769f553a0a Another pass at fixing redundant work during tool loading.
Allow passing pre-parsed parameters to parse_tool_test_descriptions()
to avoid re-calling input_models_for_tool_source() when the caller
already has the parameters.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-12 10:50:02 -05:00
davelopez db43f2dbc4 Merge branch 'release_26.0' into dev 2026-02-12 16:00:31 +01:00
davelopez 37e6fece3a Adapt FormNumber test to vitest 2026-02-12 15:58:54 +01:00
davelopez 73d6689e79 Merge branch 'release_25.1' into release_26.0 2026-02-12 15:54:51 +01:00
davelopez 27b97f2735 Merge branch 'release_25.0' into release_25.1 2026-02-12 15:46:55 +01:00
Marius van den Beek c4ab865ce6 Merge pull request #21819 from davelopez/25.0_fix_form_number_negative_handling
[25.0] Fix form number negative handling
2026-02-12 14:51:08 +01:00
Aysam Guerler 83fa837a33 Merge pull request #21775 from guerler/form.000
Convert FormDisplay to Composition API
2026-02-12 16:06:52 +03:00
guerler 34e8dd1bce Adjust test names 2026-02-12 13:50:01 +03:00
guerler 289cd51bc4 Adjust prop name 2026-02-12 12:13:18 +03:00
guerler 41e3ef2728 Display form data extension consistently below input element 2026-02-12 11:50:23 +03:00
guerler c4ad3af05d Restore tool footer pseudo class for selenium test 2026-02-12 11:50:23 +03:00
guerler 66bc01a3b0 Use g-button for form collapse button 2026-02-12 11:50:23 +03:00
guerler d1f550c074 Fix inconsistent repeat block button group 2026-02-12 11:50:23 +03:00
guerler cc09861efa Adjust unit test 2026-02-12 11:50:23 +03:00
guerler 1b77457509 Use consistent header section for requirments instead of card style 2026-02-12 11:50:23 +03:00
guerler d4e3290fed Use consistent margins for tool card footer button 2026-02-12 11:50:23 +03:00
guerler ebd4086c38 Fix inconsistent g-button group style 2026-02-12 11:50:23 +03:00
guerler 3d8a3ef83d Resolve inconsistent header button heights and highlighting 2026-02-12 11:50:23 +03:00
guerler bef2cc3ca3 Rename to rejectEmptyRequiredInputs 2026-02-12 11:50:23 +03:00
guerler 9df97ca0de Avoid defaulting to null where undefined is sufficient 2026-02-12 11:49:57 +03:00
guerler e45683ee14 Default to undefined id 2026-02-12 11:49:57 +03:00
Aysam GuerlerandDavid López c5586d72ba Update client/src/components/Form/FormDisplay.test.js
Co-authored-by: David López <46503462+davelopez@users.noreply.github.com>
2026-02-12 11:49:56 +03:00
Aysam GuerlerandDavid López 4f94928dfd Update client/src/components/Form/FormDisplay.test.js
Co-authored-by: David López <46503462+davelopez@users.noreply.github.com>
2026-02-12 11:49:56 +03:00
guerler 3553dba004 Avoid value mutation 2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 858dbe2078 Fix vue-tsc type errors for consumer compatibility
- Allow null in FormInputNode.help for FormEntry compatibility
- Change stepsNotMatchingRequest from number[] to string[]
- Remove index signature from FormInputNode, cast in syncServerAttributes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 3cd9e2e18f Convert useFormState and FormDisplay to TypeScript
- Rename useFormState.js → useFormState.ts with typed interfaces
  (FormInputNode, FormData, FormIndex, FormMessages, UseFormStateReturn)
- Convert FormDisplay.vue props to interface Props with withDefaults
- Add typed defineEmits for onChange, onValidation, stop-flagging
- Add type assertions for untyped utilities.js return values
- Add default parameter values to visitInputs/visitAllInputs for TS compat

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 dbfe138f0e Fix onChange stale emission, filter attributes, audit set() usage
Bug fix: onChange previously called buildFormData() which mutated
formData.value before the comparison, making the condition always
false. Now buildFormData is pure (returns params without side effects),
and onChange follows compare → assign → emit ordering.

syncServerAttributes now filters client-owned fields (value, error,
warning) from the server node before assigning to input.attributes.
This enforces the separation between server state (attributes) and
client state (clone properties).

set() audit: only used where properties are genuinely new on freshly
cloned objects (error/warning in cloneInputs, attributes in
syncServerAttributes). Subsequent mutations use plain assignment since
properties already exist and are reactive.

Additional changes:
- Initialize warning=null alongside error in cloneInputs
- Document bootstrap emission as intentional pre-watcher behavior
- Note flush:"sync" as a performance consideration
- Note getCurrentInstance as a Vue 2.7 constraint
- Document inferred-defaults-vs-user-intent as known debt with test

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
guerler fa3300134a Add comments and limitations for follow-ups 2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 de64755680 Convert FormDisplay to Composition API using useFormState
Rewrites FormDisplay.vue from Options API to <script setup> backed
by the useFormState composable. All watchers use flush: "sync" to
preserve the synchronous timing of the original Options API watchers.
Uses Vue.set() (imported as set) for reactive property additions on
cloned input nodes, which is required for Vue 2.7 reactivity.

External API (props/events) is unchanged — all 13 consumers work
without modification.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 b477fcb11e Add useFormState composable for form state management
Extracts form state logic (cloning, indexing, attribute sync, errors,
warnings, validation) into a pure composable with no DOM dependencies.
Uses visitAllInputs for attribute sync so inactive conditional cases
receive fresh server attributes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
guerlerandClaude Opus 4.6 417d30b78a Add visitAllInputs traversal for all conditional cases
visitInputs only visits the active conditional case, which is correct
for building submission data but not for syncing server attributes.
visitAllInputs walks every conditional branch so that attribute sync
covers inactive cases too, fixing stale data_column options when
switching conditionals.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 11:49:56 +03:00
David López deb5c06a8d Merge pull request #21820 from itisAliRH/btable-to-gtable-upload
Migrate Upload Components from BTable to GTable and Enhance Table Styling
2026-02-12 09:40:36 +01:00
mvdbeek 6f0873ccdc Merge branch 'release_26.0' into dev 2026-02-12 09:16:51 +01:00