-
Notifications
You must be signed in to change notification settings - Fork 413
feat(ui+backend): complete Bulk Import implementation (200 cap) #798
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com>
|
Review and rebase in progress, please do not make further changes. |
crivetimihai
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rebased, merged, tested
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PR Testing Summary
- make serve – ✅ Pass
- make test – ✅ Pass (75%,
2135 passed,15 skipped,599 warningsin 194.55s) - make autoflake isort black flake8 – ✅ No errors
- make pylint – ✅ Pass (
Your code has been rated at 10.00/10) - make smoketest – ✅ Pass (
Smoketest passed!) - make doctest – ✅ Pass (45%,
491 passed,6 skipped,68 warningsin 29.17s)
✅ Bulk Import functionality is working fine.
Tests Performed
- Paste JSON option – Verified with example JSON input.
- Upload file option – Verified with example JSON file.
- Existing tool name – Tested handling of duplicate tool names.
- Invalid tool names – Tested cases where the tool name starts with a number, contains only numbers, or includes special characters.
Example JSON contained 10 tools, but only 8 tools were successfully registered.
Observations
- Missing Tools – Tools such as
Tool_CandTool_Hwere not registered, and no error message was displayed. - Error Handling – Integrity errors (e.g., duplicate
name) are not surfaced in the UI. - Validation Errors – Validation issues are not consistently shown in the UI or backend logs.
- Registration Summary – UI does not display the number of tools successfully registered.
- Unregistered Tool Details – Tools that fail to register should provide error details (both in UI and logs) so users can identify which tools failed and why, and developers can analyze the root cause later.
- Add Server, Add Gateway, and Add Tool – All functionalities are working as expected.
) * fix(ui/bulk-import): align UI with bulk import API Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> * Rebase Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> * Fix HTML Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> --------- Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> Co-authored-by: Vicky <vicky.kuo.contact@gmail.com> Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
) * fix(ui/bulk-import): align UI with bulk import API Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> * Rebase Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> * Fix HTML Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> --------- Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> Co-authored-by: Vicky <vicky.kuo.contact@gmail.com> Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
) * fix(ui/bulk-import): align UI with bulk import API Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> * Rebase Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> * Fix HTML Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> --------- Signed-off-by: Vicky Kuo <vicky.kuo.contact@gmail.com> Signed-off-by: Mihai Criveti <crivetimihai@gmail.com> Co-authored-by: Vicky <vicky.kuo.contact@gmail.com> Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
Original ticket PR #739 only delivered modal wiring and documented a draft schema; this PR completes the UI to match the finalized backend. It delivers end-to-end support for importing multiple tools via JSON file upload or paste, enforcing validation rules, and handling partial success cases.
Key Changes
Frontend (admin.html / JS)
Added Bulk Import modal with:
Backend
POST /admin/tools/importConfiguration
Environment variables required:
Validation Rules
Testing Scenarios