<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" 
	>
<channel>
	<title>
	Comments on: LH Javascript Error Log	</title>
	<atom:link href="https://lhero.org/portfolio/lh-javascript-error-log/feed/" rel="self" type="application/rss+xml" />
	<link>https://lhero.org/portfolio/lh-javascript-error-log/</link>
	<description>Digital Sovereignty for everyone</description>
	<lastBuildDate>Tue, 20 Oct 2026 05:17:21 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>
		By: Peter Shaw		</title>
		<link>https://lhero.org/portfolio/lh-javascript-error-log/#comment-1537585</link>

		<dc:creator><![CDATA[Peter Shaw]]></dc:creator>
		<pubDate>Tue, 20 Oct 2026 05:17:21 +0000</pubDate>
		<guid isPermaLink="false">https://lhero.org/?p=3559#comment-1537585</guid>

					<description><![CDATA[Shorter MCP ability descriptions. The opening sentence of get-errors and get-error-stats now says what the ability does and returns in under 125 characters, because discover-abilities lists only that sentence. The detail follows unchanged. Wording only: no change to behaviour, inputs or outputs.]]></description>
			<content:encoded><![CDATA[<p>Shorter MCP ability descriptions. The opening sentence of get-errors and get-error-stats now says what the ability does and returns in under 125 characters, because discover-abilities lists only that sentence. The detail follows unchanged. Wording only: no change to behaviour, inputs or outputs.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Peter Shaw		</title>
		<link>https://lhero.org/portfolio/lh-javascript-error-log/#comment-1537381</link>

		<dc:creator><![CDATA[Peter Shaw]]></dc:creator>
		<pubDate>Thu, 15 Oct 2026 21:37:21 +0000</pubDate>
		<guid isPermaLink="false">https://lhero.org/?p=3559#comment-1537381</guid>

					<description><![CDATA[Removes the class_exists() guards wrapped around the plugin&#039;s own class declarations (the main plugin class, the table class and the admin list table). The guards protected nothing, since WordPress loads each plugin file once and the includes are loaded with require_once, and on this server an unextended class wrapped this way can be bound at compile time, making the guard skip the plugin&#039;s setup silently with no error, as happened to LH Tasks in September 2026. Behaviour is unchanged. The class_exists() checks for other plugins&#039; classes (WP_List_Table, LH Beacon) stay.]]></description>
			<content:encoded><![CDATA[<p>Removes the class_exists() guards wrapped around the plugin&#8217;s own class declarations (the main plugin class, the table class and the admin list table). The guards protected nothing, since WordPress loads each plugin file once and the includes are loaded with require_once, and on this server an unextended class wrapped this way can be bound at compile time, making the guard skip the plugin&#8217;s setup silently with no error, as happened to LH Tasks in September 2026. Behaviour is unchanged. The class_exists() checks for other plugins&#8217; classes (WP_List_Table, LH Beacon) stay.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
