Project Hub rename, Moonraker printer queue card, Prusa monitor-only guards, PrusaConnect UI#21
Project Hub rename, Moonraker printer queue card, Prusa monitor-only guards, PrusaConnect UI#21
Conversation
…control guards Agent-Logs-Url: https://github.com/akinbender/MakerPrompt/sessions/27f94188-df70-497d-b60d-fc1355a18a66 Co-authored-by: akinbender <40242943+akinbender@users.noreply.github.com>
…ncy, unused inject Agent-Logs-Url: https://github.com/akinbender/MakerPrompt/sessions/27f94188-df70-497d-b60d-fc1355a18a66 Co-authored-by: akinbender <40242943+akinbender@users.noreply.github.com>
…comment Agent-Logs-Url: https://github.com/akinbender/MakerPrompt/sessions/27f94188-df70-497d-b60d-fc1355a18a66 Co-authored-by: akinbender <40242943+akinbender@users.noreply.github.com>
|
@copilot omg i how is the situation with prusaconnect and one interface providing access to multiple printers.. in a session we applied a fix and i wanted to test now.. but no change on the ui to connect.. only prusalink.. |
Agent-Logs-Url: https://github.com/akinbender/MakerPrompt/sessions/6d78f34c-b92d-460e-b6f5-75ec6ee4e7a0 Co-authored-by: akinbender <40242943+akinbender@users.noreply.github.com>
The root cause was that What changed:
Now when you click the printer button in the header you'll see all your saved printers and can add a new PrusaConnect one. The |
Pre-show-and-tell bugfixes: rename the project-based file organizer from "Print Queue" to "Project Hub", surface Moonraker's printer-side queue in the ControlPanel, stop rendering unsupported control widgets for PrusaLink/PrusaConnect, and wire PrusaConnect into the connection UI.
Project Hub
PrintQueue_Title→ "Project Hub"; newPageTitle_ProjectHubresource key/projecthubpage (farm-mode only) wrapping<PrintQueue />NavMenu: "Project Hub" link (folder icon) added below "Fleet" in farm modeIPrinterCommunicationServicecapability flagsTwo new default interface members — no changes required in existing backends unless overriding:
Moonraker printer queue card
MoonrakerApiService.GetPrinterQueueAsync()calls/server/print_queueand returnsList<PrintQueueEntry>. WhenSupportsPrinterQueueis true,ControlPanelrenders a live "Printer Queue" card. Refresh is wired throughRunAsyncfor toast-on-failure.Prusa monitor-only guards
All motion/jog, temperature-set, fan-set, extrude, speed/flow-set, and calibration sections in
ControlPanelare wrapped with@if (SupportsDirectControl). PrusaLink and PrusaConnect now render temperature/fan/speed readouts only — nothing that would throwNotSupportedException.PrusaConnect connection UI
MainLayout.razor: replaced<NavTop />with<NavPrinters />, wiring the multi-printer management toolbar into the header. The printer button opens a modal listing all saved printers with connect/disconnect/add/edit/delete controls.PrinterConnectionModal.razor: PrusaConnect is no longer excluded from the "Add Printer" modal used by the Dashboard and Fleet pages. UUID + API key fields are shown and URL validation is skipped (PrusaConnect uses the cloud API, not a local URL).Original prompt
Commit Changes and Delegate: "Delegate to cloud agent"
[Chronological Review: The conversation began with the user requesting small bug fixes before a show and tell, specifically renaming a print queue component to a project hub and ensuring the printer dashboard shows its own print queue. The user then mentioned fixing a Prusa issue and the potential need for a supports-printqueue flag. The user confirmed successful builds and tests, outlined specific UI changes for the Fleet sidebar and Control Panel, and highlighted issues with the PrusaConnect interface. The user requested to start implementation and finally commanded to commit changes and delegate to a cloud agent.] [Intent Mapping: 1. "lets do small bugfixes before that." - User wants to address minor issues before a presentation. 2. "rename that as a project hub" - User wants to change the print queue component's name. 3. "fix the prusa issue pls" - User requests a fix for a specific issue related to Prusa printers. 4. "if a supports-printqueue flag is needed" - User is considering the implementation of a new feature. 5. "dotnet build MakerPrompt.sln — zero errors" - User confirms successful build. 6. "dotnet test — all unit tests green" - User confirms all unit tests passed. 7. "Fleet sidebar: 'Project Hub' visible" - User specifies a UI requirement. 8. "Moonraker → ControlPanel: Printer Queue card with live list" - User outlines functionality for the printer dashboard. 9. "distinguish between prusaconnect and prusalink" - User wants to clarify features based on printer connections. 10. "Start implementation" - User initiates the coding process. 11. "Commit Changes and Delegate: 'Delegate to cloud agent'" - User requests to save changes and hand off to a cloud agent.] [Technical Inventory: - Technologies: .NET, Razor - Frameworks: MakerPrompt - Architectural Decisions: Separation of project hub and printer queue functionalities, handling of different printer connection types.] [Code Archaeology: - File: MainLayout.razor - Purpose: Layout management for the MakerPrompt application. - Recent Changes: Renaming components, implementing UI changes for the Fleet sidebar and Control Panel, addressing Prusa connection issues.] [Progress Assessment: - Completed Tasks: Successful build and passing unit tests. - Partially Complete Work: UI changes and implementation of the project hub and printer queue features are in progress.] [Context Validation: All necessary context for continuing work on the project hub and printer queue features is captured.] [Recent Commands Analysis: - Last Agent Commands: "dotnet build MakerPrompt.sln", "dotnet test", "Start implementation", "Commit Changes and Delegate: 'Delegate to cloud agent'" - Tool Results Summary: Successful build with zero errors, all unit tests passed, UI changes specified for Fleet sidebar and Control Panel. - Pre-Summary State: The agent was actively working on implementing the requested changes and preparing to delegate the task to a cloud agent. - Operation Context: These commands were executed to ensure the application was functioning correctly and to prepare for the upcoming show and tell presentation.]1. Conversation Overview: - Primary Objectives: - "lets do small bugfixes before that." - User wants to address minor issues before a presentation. - "rename that as a project hub" - User wants to change the print queue component's name. - "fix the prusa issue pls" - User requests a fix for a specific issue related to Prusa printers. - "if a supports-printqueue flag is needed" - User is considering the implementation of a new feature. - "Start implementation" - User initiates the coding process. - "Commit Changes and Delegate: 'Delegate to cloud agent'" - User requests to save changes and hand off to a cloud agent. - Session Context: The conversation focused on implementing bug fixes and UI changes in the MakerPrompt application, particularly around printer functionalities. - User Intent Evolution: The user transitioned from discussing general bug fixes to specifying detailed requirements for UI changes and functionality, culminating in a request to start implementation and delegate tasks.- Technical Foundation:
- .NET: Used for building the MakerPrompt application.
- Razor: Framework for creating dynamic web pages in the application.
- Codebase Status:
- File Name: MainLayout.razor
- Purpose: Layout management for the MakerPrompt application.
- Current State: Changes to rename components and implement UI updates are in progress.
- Key Code Segments: Specific UI elements for the Fleet sidebar and Control Panel.
- Dependencies: Relies on the overall structure of the MakerPrompt application.
- Problem Resolution:
- Issues Encountered: Need to address the Prusa connection issue and clarify printer functionalities.
- Solutions Implemented: Successful build and passing unit tests indicate that foundational issues are resolved.
- Debuggin...
Created from VS Code.