tanishqgandhi1908 opened a new pull request, #7144:
URL: https://github.com/apache/texera/pull/7144

   ### What changes were proposed in this PR?
   
   Adds a "Create Model" button to the Models page and the modal behind it, so 
creating a model no longer requires curl. The form takes name, description, 
framework and format dropdowns, and visibility/downloadable toggles; on success 
it navigates to the new model's detail page.
   
   This is the first of two PRs covering model creation and upload. It 
deliberately ships create only — after this you can create a model and manage 
its metadata (rename, description, visibility, sharing, delete), but not yet 
upload weights to it. The upload half follows in the next PR.
   
   
   ### Any related issues, documentation, discussions?
   
   Part of #6499 (Add model management UI). Umbrella: #6494.
   
   Stacked on the multipart-engine refactor PR.
   
   ### How was this PR tested?
   
   New user-model-creator.component.spec.ts — 10 cases. Three cover 
sanitizeModelName directly, including one that pins the underscore difference 
from the dataset sanitizer. The rest cover the component: the four fields 
render with no version-description field; the framework and format dropdown 
options equal MODEL_FRAMEWORKS and MODEL_FORMATS exactly, so drift from 
ModelResource's whitelist fails at test time rather than becoming a 400 at 
create time; an empty required name calls nothing; a successful create sends 
the sanitized name plus both toggle values and closes with the result; a 
sanitized name reports the rename in the toast; a server error surfaces its 
message, closes with null, and clears the spinner; and cancel closes without 
touching the backend.
   
   user-model.component.spec.ts gains 3 cases for the button wiring — the modal 
opens with the right component and no footer, a non-null close navigates to 
USER_MODEL/:mid, and a dismissal navigates nowhere.
   
   103 tests pass across the 6 affected spec files. The dataset creator's own 
spec and user-dataset.component.spec.ts pass untouched. tsc --noEmit, eslint 
and prettier are clean.
   
   cd frontend && npx ng test --watch=false --include 
src/app/dashboard/component/user/user-model/user-model-creator/user-model-creator.component.spec.ts
   
   Manually verified with gui.tabs.models_enabled = true: creating a model 
lands on its detail page; My Model!! is sanitized to my-model with the rename 
reported in the toast; churn_predictor keeps its underscore; a duplicate name 
surfaces the server error; cancel creates nothing.
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Code (Claude Opus 5)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to