Skip to content

Conversation

Copy link

Copilot AI commented Oct 23, 2025

Overview

This PR implements RSS feed functionality for SSW Rules, addressing the first requirement from issue #1936. Users can now subscribe to recent rule changes via an RSS feed at /rss.xml.

What's Changed

Added an RSS feed that provides the 50 most recently updated rules, allowing users to:

  • Subscribe via RSS readers (Feedly, Inoreader, etc.)
  • Set up email notifications through Power Automate or similar tools
  • Integrate rule updates into custom workflows and dashboards

Implementation Details

RSS Feed Features

  • Feed URL: /rss.xml (generated at build time)
  • Content: 50 most recently updated rules, sorted by last update date
  • Filtering: Automatically excludes archived rules
  • Metadata: Each entry includes:
    • Rule title and description
    • Last update date and time
    • Author who made the update
    • Direct link to the rule

Technical Approach

  • Uses [email protected] to generate RSS 2.0 compliant feed
  • Pulls data from history.json (git commit history) and rule markdown files
  • Feed is generated during the Gatsby build process for optimal performance
  • Follows Dublin Core metadata standards for proper RSS reader compatibility

Files Added

  • _docs/RSS-Feed.md: User-facing documentation
  • _docs/RSS-Feed-Implementation-Summary.md: Technical implementation details
  • _docs/rss-feed-example.xml: Example RSS feed output
  • scripts/validate-rss-config.js: Validation script to ensure configuration correctness

Files Modified

  • gatsby-config.js: Added RSS feed plugin configuration
  • package.json: Added gatsby-plugin-feed dependency
  • yarn.lock: Updated with new dependency

Quality Assurance

  • ✅ All code passes ESLint linting (0 errors, 0 warnings)
  • ✅ CodeQL security scan passed (0 vulnerabilities)
  • ✅ Configuration validated with custom validation script
  • ✅ No security vulnerabilities in dependencies
  • ✅ Minimal, focused changes - only what's necessary for the feature

Testing

Run the validation script to verify RSS configuration:

node scripts/validate-rss-config.js

After deployment, the RSS feed will be available at:

Next Steps

This addresses requirement #1 from the issue. The remaining requirements are:

Example Usage

Users can subscribe to the feed in their favorite RSS reader or set up automated notifications:

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>SSW Rules - Recent Updates</title>
    <description>Stay updated with the latest changes to SSW Rules</description>
    <item>
      <title>Do you know the best practices for AI prompts?</title>
      <description>Learn the best practices for writing effective AI prompts...</description>
      <link>https://www.ssw.com.au/rules/best-practices-for-ai-prompts</link>
      <dc:creator>John Smith [SSW]</dc:creator>
      <pubDate>2025-10-23T15:30:00.000Z</pubDate>
    </item>
    <!-- ... up to 50 recent updates ... -->
  </channel>
</rss>

Closes #1936 (requirement #1)

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • analytics.gatsbyjs.com
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby-telemetry/lib/send.js (dns block)
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby/cli.js clean (dns block)
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby/cli.js build --prefix-paths --log-pages (dns block)
  • oembed.com
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby/cli.js build --prefix-paths --log-pages (dns block)
  • unpkg.com
    • Triggering command: /usr/local/bin/node scripts/postinstall.js (dns block)
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby/cli.js build --prefix-paths --log-pages (dns block)
  • www.ssw.com.au
    • Triggering command: /usr/local/bin/node /home/REDACTED/work/SSW.Rules/SSW.Rules/node_modules/gatsby/cli.js build --prefix-paths --log-pages (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>✨ Provide functionality to see recent rules changes via RSS feeds</issue_title>
<issue_description>@bradystroud @adamcogan @wicksipedia @calumjs @JackLeerson
Users of SSW Rules cannot see the recent changes to the rules website. To fix this we should

  1. Setup an RSS feed for recent updates to rules (as per query on the file history in the github repo)

  2. Create a Done Video on how to subscribe to the RSS feed using Power Automate so that you receive email updates when rules change. (this will replace the emailing PBI)

  3. Create an SSW Rules - Recent Changes Widget
    • To make it easy to see which rules have changed recently, add a widget on the side of the rules website.
    • Hottest Rules: Review the related PBI Feature - Sorting options for rules: hot, new, top, my bookmarks · Issue Feature - Sorting options for rules: hot, new, top, my bookmarks #266 · SSWConsulting/SSW.Rules (github.com)

Figure: The recent rules widget
Figure: The recent rules widget

Figure: The Recent Changes Widget will go on the right hand side
Figure: The Recent Changes Widget will go on the right hand side

</issue_description>

<agent_instructions>for now just implement the RSS feed feature</agent_instructions>

Comments on the Issue (you are @copilot in this section)

Fixes #438


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI changed the title [WIP] Add functionality to see recent rules changes via RSS feeds ✨ Add RSS feed for recent rules updates Oct 23, 2025
Copilot AI requested a review from bradystroud October 23, 2025 22:53
Copilot finished work on behalf of bradystroud October 23, 2025 22:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ Provide functionality to see recent rules changes via RSS feeds

2 participants