<feed xmlns='http://www.w3.org/2005/Atom'>
<title>hutch.git/README.md, branch v3.8.0</title>
<subtitle>ios client for sourcehut. swiftui.
</subtitle>
<id>http://git.krz.sh/krz/hutch.git/atom?h=v3.8.0</id>
<link rel='self' href='http://git.krz.sh/krz/hutch.git/atom?h=v3.8.0'/>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/'/>
<updated>2026-07-16T05:42:38+00:00</updated>
<entry>
<title>fix: push mailing lists locally, fix upload menu, drop the events feed</title>
<updated>2026-07-16T05:42:38+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-07-16T05:42:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=77cd5b5e56ec054b451a6165162fef655873a5d6'/>
<id>urn:sha1:77cd5b5e56ec054b451a6165162fef655873a5d6</id>
<content type='text'>
Opening a mailing list from More → Projects still blanked. The cause was not in
handleTabNavigation: the row called openMailingList and then dismiss(), so a
path rebuild and a pop of this very view raced each other. Projects already
lives in the More tab, so there is nothing to navigate to — push
MailingListDetailView directly, which also lands back on the project rather than
on Mailing Lists. Sources and trackers keep routing, because they really do land
in other tabs.

The upload controls did nothing. Two .confirmationDialog modifiers on one view
leave one silently dead, and this view already had one for delete, so the tag
picker never presented. It is a Menu now, which also puts the tags one tap away
instead of two.

The ticket activity feed is removed. todo.sr.ht's root events resolver joins
event.participant_id, which references participant(id), against
participant.user_id — different id spaces — so it returns an empty list for
every user. The rows exist; that join cannot find them. Ticket.events is
unaffected because it filters on ticket_id, which is why ticket timelines work.
No client can fix this, and a screen that is permanently empty while blaming the
token's scopes is worse than no screen. Recorded in SCOPE.md with the query.
</content>
</entry>
<entry>
<title>chore: bump to 3.8.0 and record Phase 3 API features</title>
<updated>2026-07-16T05:03:06+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-07-16T05:03:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=76cb006b87d30928ec23a3c4bf95bd145aad8e9c'/>
<id>urn:sha1:76cb006b87d30928ec23a3c4bf95bd145aad8e9c</id>
<content type='text'>
MARKETING_VERSION 3.7.0 -&gt; 3.8.0, build 89 -&gt; 90.

SCOPE.md gains the items that did not survive contact with the API: archiveMessage
and mailingListSubscribe are blocked, while webhooks, shareSecret, and build
groups are reachable but declined on judgement. The reasoning is recorded so
they do not get re-proposed as gaps.

ROADMAP.md notes that Phase 3 is several releases rather than one, with the
measured size of each.
</content>
</entry>
<entry>
<title>chore: bump to 3.7.0 and record Phase 2</title>
<updated>2026-07-16T02:50:30+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-07-16T02:50:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=22c7a0e45a5cc344e2fa0635431d95c23024ad63'/>
<id>urn:sha1:22c7a0e45a5cc344e2fa0635431d95c23024ad63</id>
<content type='text'>
MARKETING_VERSION 3.6.0 -&gt; 3.7.0, build 88 -&gt; 89.

The README feature list also picks up Phase 1's ticket editing, subscriptions,
and email preferences, which it never gained.
</content>
</entry>
<entry>
<title>Fix broken personal access token link</title>
<updated>2026-05-04T19:55:44+00:00</updated>
<author>
<name>Chris DeLuca</name>
<email>code@chrisdeluca.me</email>
</author>
<published>2026-05-04T18:39:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=0b93fb3cd7613a2befeebb94b41d051b70f6da28'/>
<id>urn:sha1:0b93fb3cd7613a2befeebb94b41d051b70f6da28</id>
<content type='text'>
</content>
</entry>
<entry>
<title>update sonarqube badges</title>
<updated>2026-04-11T16:36:42+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-11T16:36:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=7055a573688dbfb57d2fe59c4cd3485a3e75a42c'/>
<id>urn:sha1:7055a573688dbfb57d2fe59c4cd3485a3e75a42c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add sonarqube badges to README</title>
<updated>2026-03-24T22:10:03+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-03-24T22:10:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=28c5b36bed9e3a4217415079827f657205a080f7'/>
<id>urn:sha1:28c5b36bed9e3a4217415079827f657205a080f7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>revamp markdown project files</title>
<updated>2026-03-19T21:20:21+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-03-19T21:20:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=165d97fd2867cf5923aeb1c5fc00f6e60bcaaa6e'/>
<id>urn:sha1:165d97fd2867cf5923aeb1c5fc00f6e60bcaaa6e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add build badge</title>
<updated>2026-03-18T20:18:53+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-03-18T20:18:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=3b368f96acd0c412709c754b00e8379aebd6665b'/>
<id>urn:sha1:3b368f96acd0c412709c754b00e8379aebd6665b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>update clone uri</title>
<updated>2026-03-18T17:34:16+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-03-18T17:34:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=e2ab3c439a74bdc2d55e983779ec0f1567999103'/>
<id>urn:sha1:e2ab3c439a74bdc2d55e983779ec0f1567999103</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: remove README comments</title>
<updated>2026-03-18T04:39:41+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-03-18T04:39:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=c675c0ac70cc9308d460467e77951b1404d8141a'/>
<id>urn:sha1:c675c0ac70cc9308d460467e77951b1404d8141a</id>
<content type='text'>
</content>
</entry>
</feed>
