Skip to content

Conversation

@rdar-lab
Copy link

@rdar-lab rdar-lab commented Jan 2, 2026

Register Octo File Guard Plugin

* Initial plan

* Add Octo Fire Guard plugin registration

Co-authored-by: rdar-lab <36108848+rdar-lab@users.noreply.github.com>

* Update author for Octo Fire Guard plugin

* Enhance documentation for Octo Fire Guard plugin

Added images and clarified test button functionalities in the Octo Fire Guard plugin documentation.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rdar-lab <36108848+rdar-lab@users.noreply.github.com>
Copy link
Contributor

@jneilliii jneilliii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any glaring issues with this plugin but want to get @foosel 's feedback on any additional warnings that might need to be included on the plugin listing since this kind of gives the idea of safety and might not necessarily be a guarantee (ie OctoPrint not running to monitor faulty printer).

@jacopotediosi
Copy link
Contributor

Hello @rdar-lab,

I noticed that your plugin is similar to the ThermalRunaway plugin but with some additional features - good job!

I briefly reviewed your repo, and below are my suggestions:

  • In your repository, the initial release has not been published. It is important to remember to publish releases, because they are the mechanism you chose to manage plugin updates (see your implementation of the function get_update_information).

  • In your current code, any authenticated user can call the API command test_emergency_actions and trigger an emergency stop of prints, even without having the CONTROL Permission. I suggest adding a check to restrict usage of this API to users who have the appropriate permission (e.g., if Permissions.CONTROL.can():).

  • I also noticed that in your JavaScript code you use the PNotify function several times. OctoPrint currently ships with PNotify version 3, which by default does not perform HTML encoding of notification titles and text. Although I see that you are not currently inserting untrusted data into notifications, to prevent potential XSS vulnerabilities - including in anticipation of future code changes - I recommend setting the text_escape and title_escape attributes to true in all PNotify calls, unless you explicitly need to insert HTML. Alternatively, you can use the ._escape() function from the Lodash library (already imported by OctoPrint) when concatenating data.

Additionally, next time please follow the Pull Request template, as it helps reviewers save time.

Thank you again for your contribution 😄

Added a warning about the plugin's limitations and safety.
@rdar-lab
Copy link
Author

rdar-lab commented Jan 3, 2026

@jneilliii I added a warning message about this concern
@jacopotediosi thanks for the review comments, I have fixed all of them

@rdar-lab
Copy link
Author

rdar-lab commented Jan 3, 2026

  • You have read the "Registering a new Plugin" guide.
  • You want to and are able to maintain the plugin you are registering, long-term.
  • You understand why the plugin you are registering works.
  • You have read and acknowledge the Code of Conduct.

What is the name of your plugin?

Octo Fire Guard

What does your plugin do?

An OctoPrint plugin that monitors printer temperatures in real-time to prevent fire hazards. The plugin watches both hotend and heatbed temperatures and triggers emergency shutdown procedures when configurable thresholds are exceeded.

Where can we find the source code of your plugin?

https://github.com/rdar-lab/octo-fire-guard/

Was any kind of genAI (ChatGPT, Copilot etc) involved in creating this plugin?

Yes!
The plugin was created using vibe coding with Github Copilot

Is your plugin commercial in nature?

No

Does your plugin rely on some cloud services?

No

Comment on lines +42 to +48

> [!WARNING]
> **⚠️ THIS PLUGIN IS A SAFETY FEATURE, NOT A REPLACEMENT FOR PROPER PRINTER SUPERVISION ⚠️**
>
> **This plugin does not guarantee safety and should not be relied upon as the sole fire prevention mechanism. Always monitor your printer during operation. OctoPrint may not be running, the plugin may malfunction, or other failure modes may occur that prevent the plugin from responding to dangerous conditions.**

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When compiling the page with jekyll, this warning is not rendered properly:

Image

Likely plugins.octoprint.org currently doesn't support GitHub flavored Markdown admonition syntax (yet?).

@jacopotediosi
Copy link
Contributor

Aside from my review comment above, everything else looks good to me now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

4 participants