Fix publish flow and consolidate My Tools view

- Make publish endpoint idempotent: return success if same content
  already exists instead of VERSION_EXISTS error (fixes retry issues)
- Always refresh tools page after publish dialog closes
- Consolidate My Tools page to group versions by tool name
- Show version count and list instead of separate rows per version
- Sum downloads across all versions for accurate totals

Co-Authored-By: Claude Opus 4.5 <[email protected]>
This commit is contained in:
rob
2026-01-16 23:17:55 -04:00
co-authored by Claude Opus 4.5
parent 16de3e371c
commit 74b5124360
4 changed files with 60 additions and 7 deletions
+5 -2
View File
@@ -648,8 +648,11 @@ class ToolsPage(QWidget):
tool_name = self._current_tool.name # Save before refresh clears it
from ..dialogs.publish_dialog import PublishDialog
dialog = PublishDialog(self, self._current_tool)
if dialog.exec():
self.refresh() # Refresh to show updated publish state indicator
result = dialog.exec()
# Always refresh after dialog closes - tool config may have been updated
# even if user canceled (e.g., server processed request before client timeout)
self.refresh()
if result:
self.main_window.show_status(f"Published '{tool_name}'")
def _sync_tool_status(self):