<feed xmlns='http://www.w3.org/2005/Atom'>
<title>hakurei/internal/app/state, branch develop</title>
<subtitle>low-level userspace tooling for Rosa OS</subtitle>
<id>http://src.rosa.moe/hakurei/atom/internal/app/state?h=develop</id>
<link rel='self' href='http://src.rosa.moe/hakurei/atom/internal/app/state?h=develop'/>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/'/>
<updated>2025-10-28T19:33:13Z</updated>
<entry>
<title>internal/outcome: rename from app</title>
<updated>2025-10-28T19:33:13Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-28T19:32:43Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=a0b4e47acc228e48165966d8e139277b8f6f450e'/>
<id>urn:sha1:a0b4e47acc228e48165966d8e139277b8f6f450e</id>
<content type='text'>
This is less ambiguous, and more accurately describes the purpose of the package.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: improve store internals</title>
<updated>2025-10-28T18:21:00Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-28T14:04:17Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=65342d588ff061d2130e6379d86a26be90c908ae'/>
<id>urn:sha1:65342d588ff061d2130e6379d86a26be90c908ae</id>
<content type='text'>
This fully exposes the store internals for #19 and are final preparations for removing the legacy store interface.

This change also fixes a potential deadlock in the handle initialisation mkdir failure path. This however is never reachable in hakurei as the store is never accessed concurrently.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: improve handles internals</title>
<updated>2025-10-28T13:00:54Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-26T15:43:33Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=5e5826459ed744fc0bd717e0136614365c7a96f3'/>
<id>urn:sha1:5e5826459ed744fc0bd717e0136614365c7a96f3</id>
<content type='text'>
This replaces the Store interface with something better reflecting the underlying data format for #19. An implementation of Store is provided on top of the new code to ease transition.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: use absolute pathnames</title>
<updated>2025-10-25T18:41:19Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T18:39:51Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=4a463b7f032961323baa0c5cc4bac0594a90ec42'/>
<id>urn:sha1:4a463b7f032961323baa0c5cc4bac0594a90ec42</id>
<content type='text'>
This is less error-prone and fits better into internal/app which already uses check.Absolute for all pathnames.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: acquire big lock for toplevel operations</title>
<updated>2025-10-25T18:27:56Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T18:27:56Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=dacd9550e0f696d8e6723a304ba056502109201f'/>
<id>urn:sha1:dacd9550e0f696d8e6723a304ba056502109201f</id>
<content type='text'>
This avoids getting into an inconsistent state for simultaneous calls to List and Do on a previously unknown identity.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state/data: check full entry behaviour</title>
<updated>2025-10-25T16:49:14Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T16:49:14Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=86f4219062ae4787ac9478b025abf8416e5593a2'/>
<id>urn:sha1:86f4219062ae4787ac9478b025abf8416e5593a2</id>
<content type='text'>
This eventually gets relocated to internal/app.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: include et header</title>
<updated>2025-10-25T13:01:26Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T13:01:26Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=fe2929d5f7249f8593923446e1c327bf503cc8a0'/>
<id>urn:sha1:fe2929d5f7249f8593923446e1c327bf503cc8a0</id>
<content type='text'>
This is the initial step of implementing #19.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: use internal/lockedfile</title>
<updated>2025-10-25T12:29:24Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T12:28:49Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=470e545d2761b77f95147f61f633f4d629750ee7'/>
<id>urn:sha1:470e545d2761b77f95147f61f633f4d629750ee7</id>
<content type='text'>
This is a pretty solid implementation backed by robust tests, with a much cleaner interface.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: export correct backend value</title>
<updated>2025-10-25T12:11:05Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T12:11:05Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=8d3381821f2a8d257a4c55c0dd311019bd0e78eb'/>
<id>urn:sha1:8d3381821f2a8d257a4c55c0dd311019bd0e78eb</id>
<content type='text'>
This references the underlying multiBackend due to a typo, making the whole dance with c a noop.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
<entry>
<title>internal/app/state: fixed size et-only header</title>
<updated>2025-10-25T10:15:06Z</updated>
<author>
<name>Ophestra</name>
<email>cat@gensokyo.uk</email>
</author>
<published>2025-10-25T10:15:06Z</published>
<link rel='alternate' type='text/html' href='http://src.rosa.moe/hakurei/commit/?id=4f41afee0f6408f17d23460266e3d27998448985'/>
<id>urn:sha1:4f41afee0f6408f17d23460266e3d27998448985</id>
<content type='text'>
This header improves the robustness of the format and significantly reduces cleanup overhead.

Signed-off-by: Ophestra &lt;cat@gensokyo.uk&gt;
</content>
</entry>
</feed>
