BINFR-6408: Add pull/push view-bookmarks commands#372
BINFR-6408: Add pull/push view-bookmarks commands#372Manjinder Singh (manjindersingh98) wants to merge 7 commits into
Conversation
Add `pull view-bookmarks` and `push view-bookmarks` commands to transfer view (board) bookmarks between teams, mirroring the existing analysis bookmarks implementation but targeting the blueprint BookmarksTransferController import/export endpoints (/blueprint/api/bookmarks). Includes-AI-Code: true Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Pull request overview
Adds new CLI support for transferring view (board) bookmarks via blueprint bookmark import/export endpoints, mirroring the existing analysis bookmarks flow.
Changes:
- Introduces
pull view-bookmarksandpush view-bookmarkscommands under a newsrc/commands/view/module. - Implements
ViewBookmarksManager+ factory/service to call/blueprint/api/bookmarks/export|importand write/readstudio_view_bookmarks_<boardId>.json. - Updates the user guide with usage examples for the new commands.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| src/commands/view/view-bookmarks.manager.ts | Adds blueprint bookmarks export/import manager (pull/push URLs, file naming, multipart body). |
| src/commands/view/view-bookmarks.manager-factory.ts | Creates/configures the manager, including defaults and file existence validation. |
| src/commands/view/view-bookmarks-command.service.ts | Exposes pull/push methods used by the CLI command handlers. |
| src/commands/view/module.ts | Registers pull view-bookmarks and push view-bookmarks commands and options. |
| docs/user-guide/studio-commands.md | Documents the new view bookmarks commands with example invocations. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Can you also please handle the suggestions from Sonar? I think they make sense |
Cover the new pull/push view-bookmarks module, command service, manager, and manager-factory (100% line/branch coverage) to satisfy SonarCloud coverage on new code. Includes-AI-Code: true Co-authored-by: Cursor <cursoragent@cursor.com>
|
|
general question: Manjinder Singh (@manjindersingh98) is this endpoint already configured to be accessible via the gateway? otherwise this command won't work |
|
|
||
| viewBookmarksManager.type = type; | ||
| if (filename !== null) { | ||
| viewBookmarksManager.fileName = this.resolveFilePath(filename); |
There was a problem hiding this comment.
fileName
If we assign a path to this property then it should be called filePath imo



Ticket
https://celonis.atlassian.net/browse/BINFR-6408
Summary
pull view-bookmarksandpush view-bookmarkscommands to transfer view (board) bookmarks between teams.BookmarksTransferControllerimport/export endpoints (/blueprint/api/bookmarks/export|import).src/commands/view/(auto-discovered byModuleHandler): manager, manager-factory, command-service, and module registration.docs/user-guide/studio-commands.md.Details
pull view-bookmarks --id <boardId> [--type USER|SHARED|ALL]->GET /blueprint/api/bookmarks/export?boardId=<id>&type=<type>(defaults toUSER), writesstudio_view_bookmarks_<id>.json.push view-bookmarks --id <boardId> -f <file>->POST /blueprint/api/bookmarks/import?boardId=<id>(multipartfile).Test plan
npm run buildcompiles cleanlypull view-bookmarks --help/push view-bookmarks --helpshow expected optionsIncludes-AI-Code: true
Made with Cursor
Note
Low Risk
Follows the established analysis-bookmarks pattern with new blueprint endpoints; scope is CLI asset transfer and covered by unit tests, with no auth or core platform changes in this diff.
Overview
Adds content-cli support to pull and push view (board) bookmarks between teams, parallel to the existing analysis bookmarks flow but wired to blueprint
/blueprint/api/bookmarks/exportandimport.New
pull view-bookmarkstakes a board--idand optional--type(USERdefault,SHARED, orALL), downloads JSON asstudio_view_bookmarks_<boardId>.json.push view-bookmarksposts that file as multipart to the target board. Implementation lives undersrc/commands/view/(module registration, command service, manager + factory onBaseManager), with user-guide docs and Jest coverage; test setup aliasesnode:fsto the existingfsmock.Reviewed by Cursor Bugbot for commit 9c26621. Bugbot is set up for automated code reviews on this repo. Configure here.