<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>v1 (PoW) on QRL.dev</title>
		<link>https://qrl.dev/tags/v1/</link>
		<description>Recent content in v1 (PoW) on QRL.dev</description>
		<generator>Hugo</generator>
		<language>en-gb</language>
		
		
		
		
			<lastBuildDate>Sun, 27 Sep 2026 09:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://qrl.dev/tags/v1/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Know what your node is running</title>
				<link>https://qrl.dev/posts/docker-observability/</link>
				<pubDate>Sun, 27 Sep 2026 09:00:00 +0000</pubDate>
				<guid>https://qrl.dev/posts/docker-observability/</guid>
				<description>&lt;p&gt;A running container answers one question: did the process start? It does not tell you which image is running, where its data lives, or whether the application is ready. Those distinctions matter when you are debugging a local node.&lt;/p&gt;&#xA;&lt;p&gt;This note is an inspection checklist for an existing development container. The examples use &lt;code&gt;qrl-node&lt;/code&gt; as its name; replace that with your own. It is not an installation recipe.&lt;/p&gt;&#xA;&lt;h2 id=&#34;start-with-the-image&#34;&gt;Start with the image&lt;/h2&gt;&#xA;&lt;p&gt;Inspect both the configured image reference and the immutable image ID. A tag is convenient, but the image ID helps establish what was actually used on this machine.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Keep the wallet boundary small</title>
				<link>https://qrl.dev/posts/wallet-boundaries/</link>
				<pubDate>Sat, 26 Sep 2026 09:00:00 +0000</pubDate>
				<guid>https://qrl.dev/posts/wallet-boundaries/</guid>
				<description>&lt;p&gt;A wallet interface has two very different jobs: helping someone understand a transaction, and authorising that transaction. Treat them as separate parts of the application.&lt;/p&gt;&#xA;&lt;h2 id=&#34;separate-the-states&#34;&gt;Separate the states&lt;/h2&gt;&#xA;&lt;p&gt;A transaction preview should describe what the user is about to do without needing access to secret material. The signing layer should receive a clearly defined request only after confirmation.&lt;/p&gt;&#xA;&lt;div class=&#34;code-block not-prose&#34;&gt;&lt;div class=&#34;code-caption&#34;&gt;&lt;span&gt;typescript&lt;/span&gt;&lt;button type=&#34;button&#34; class=&#34;btn btn-ghost btn-xs copy-code&#34; aria-label=&#34;Copy code&#34;&gt;Copy&lt;/button&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-typescript&#34; data-lang=&#34;typescript&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;// Illustrative UI model; not a QRL signing API.&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;type&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;TransactionReview&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;recipient&lt;/span&gt;: &lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;amountDisplay&lt;/span&gt;: &lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nx&#34;&gt;feeDisplay&lt;/span&gt;: &lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kr&#34;&gt;type&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;ReviewState&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;editing&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;reviewing&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;transaction&lt;/span&gt;: &lt;span class=&#34;kt&#34;&gt;TransactionReview&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;o&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;submitted&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;transactionHash&lt;/span&gt;: &lt;span class=&#34;kt&#34;&gt;string&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;p&gt;Keep display formatting separate from the integer amounts used by the underlying protocol. A human-readable amount is not a validated transaction value.&lt;/p&gt;</description>
			</item>
			<item>
				<title>An explorer is a debugging tool</title>
				<link>https://qrl.dev/posts/explorer-links/</link>
				<pubDate>Fri, 25 Sep 2026 09:00:00 +0000</pubDate>
				<guid>https://qrl.dev/posts/explorer-links/</guid>
				<description>&lt;p&gt;“Something went wrong” is hard to investigate. A transaction reference, an observation time, and the expected outcome give another developer a place to begin.&lt;/p&gt;&#xA;&lt;h2 id=&#34;capture-the-context&#34;&gt;Capture the context&lt;/h2&gt;&#xA;&lt;p&gt;When recording a blockchain observation, write down the network, the identifier you looked up, and what the explorer showed at that moment. Distinguish an absent record from an error fetching that record.&lt;/p&gt;&#xA;&lt;div class=&#34;code-block not-prose&#34;&gt;&lt;div class=&#34;code-caption&#34;&gt;&lt;span&gt;json&lt;/span&gt;&lt;button type=&#34;button&#34; class=&#34;btn btn-ghost btn-xs copy-code&#34; aria-label=&#34;Copy code&#34;&gt;Copy&lt;/button&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;network&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;record the network&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;transaction&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;record the transaction hash&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;observedAt&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;record the UTC observation time&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;expected&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;describe the expected result&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;actual&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;describe the observed result&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;p&gt;This is a suggested issue-report structure, not an explorer API response.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Find the right cryptography library</title>
				<link>https://qrl.dev/posts/cryptography-libraries/</link>
				<pubDate>Thu, 24 Sep 2026 09:00:00 +0000</pubDate>
				<guid>https://qrl.dev/posts/cryptography-libraries/</guid>
				<description>&lt;p&gt;Before adding a cryptography dependency, establish which protocol and runtime your application targets. A familiar repository name is not enough to show that a library is appropriate for your application.&lt;/p&gt;&#xA;&lt;h2 id=&#34;start-with-the-protocol&#34;&gt;Start with the protocol&lt;/h2&gt;&#xA;&lt;p&gt;QRL v1 uses XMSS. Its one-time signature state is an application concern as well as a cryptographic one. Read the library documentation and the wallet’s state-management approach before integrating signing.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://github.com/theQRL/qrllib&#34;&gt;qrllib repository&lt;/a&gt; is the QRL core library. The organisation also maintains &lt;a href=&#34;https://github.com/theQRL/go-qrllib&#34;&gt;go-qrllib&lt;/a&gt;, described as a Go implementation of the QRL cryptographic library.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
