<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coinosv3.git/src/app.js, branch fdroid-v1.9</title>
<subtitle>coinos v3 — bitcoin, Ark, Lightning and nostr wallet (web + Android)</subtitle>
<id>https://git.coinos.io/coinosv3.git/atom?h=fdroid-v1.9</id>
<link rel='self' href='https://git.coinos.io/coinosv3.git/atom?h=fdroid-v1.9'/>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/'/>
<updated>2026-10-04T20:02:57Z</updated>
<entry>
<title>/migrate: a link that opens the coinos.io account move</title>
<updated>2026-10-04T20:02:57Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-04T20:02:57Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=53a4ad1602f7ce0398809bf15fd5196884e2c1a0'/>
<id>urn:sha1:53a4ad1602f7ce0398809bf15fd5196884e2c1a0</id>
<content type='text'>
Fresh devices reach it through the wizard (in place of the Spending
offer); an existing wallet gets the move page on its own once it can
mint a payment address, and leaves it straight back to the wallet.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Renewing asks first, and a renewal links to its round's transaction</title>
<updated>2026-10-03T23:05:42Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-03T23:05:42Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=202dced76eb8617c094686ef86caa979c0074320'/>
<id>urn:sha1:202dced76eb8617c094686ef86caa979c0074320</id>
<content type='text'>
- The coins page's Renew button opens a confirmation instead of renewing
  at once: how many coins, their amount, the fee, and what is left to
  spend meanwhile — with a red notice when that is nothing (the button
  selects every coin by default, which is how a user locked their whole
  balance for an hour on 2026-10-03). It says the coins can't be spent
  until the round's transaction confirms and that a renewal can't be
  cancelled; the wallet renews for free near expiry anyway. The inline
  notice from 328f2db moves into it.
- A renewal keeps its round's transaction id as soon as the round has
  run (before it confirms): the in-progress card on the coins page links
  to it, and the finished renewal's history row carries it, so its
  detail shows the id with View/Copy like any on-chain movement.
  Renewals finished before this change have no id recorded.

tools/ark/renew-confirm-ui-test.js, tools/ark/renew-txid-test.js

Co-Authored-By: Claude Fable 5.1 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01ULQZS9MQa6iAsXnrJUD9Du
</content>
</entry>
<entry>
<title>Feed media views: a grid of pictures, videos to flip through</title>
<updated>2026-10-03T20:12:30Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-03T20:12:30Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=543a66ca70323921acf4da9b8e4fca8128cf0b58'/>
<id>urn:sha1:543a66ca70323921acf4da9b8e4fca8128cf0b58</id>
<content type='text'>
All / Images / Videos sits under the feed chips (remembered).
- Images lays the feed's pictures out as a three-column grid.
- Videos opens straight into a full-screen pager: one clip per screen,
  snapping, the one on screen playing with sound (muted with an Unmute
  button when the browser refuses), the next a flick or ↓ away. Closing
  it leaves a grid of the clips.
- The pager shows only the media until tapped; a tap shows the author
  (tap for their profile), the post's words as a caption without the
  media links (tap to expand), and likes and sats in the bottom right,
  which also like and zap.
- It is a place: Back or Escape closes it. Built outside the morph, so a
  repaint never restarts a clip; off-screen clips let go of their media.
- Near the end of the grid or the pager the feed fetches older posts and
  new slides are appended.
- Toasts now sit above full-screen viewers.

tools/feed-media-views-test.js

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01ULQZS9MQa6iAsXnrJUD9Du
</content>
</entry>
<entry>
<title>Switching Spending/Savings opens Receive, with that account's address</title>
<updated>2026-10-02T22:01:43Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T22:01:43Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=544c61e8c27652c71501277b10875eeead0a402c'/>
<id>urn:sha1:544c61e8c27652c71501277b10875eeead0a402c</id>
<content type='text'>
It opened the history tab. Any open payment detail still closes with the
switch.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Spending settings: Move to Savings opens its form again</title>
<updated>2026-10-02T21:57:00Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T21:57:00Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=875d7df2c1c83ecfa85fe1c4546be6b568cc2e25'/>
<id>urn:sha1:875d7df2c1c83ecfa85fe1c4546be6b568cc2e25</id>
<content type='text'>
showSend flipped the wallet's tab to Send but left the screen where it
was; from the Spending settings page (where the co-operative exit lives
now) the form opened out of sight and the button seemed to do nothing.
Opening Send now always means the wallet screen.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Send: a lightning address moves on to the amount by itself</title>
<updated>2026-10-02T21:41:59Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T21:41:59Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=dbee3dddba70783aa66b933ee48a187ef758efaa'/>
<id>urn:sha1:dbee3dddba70783aa66b933ee48a187ef758efaa</id>
<content type='text'>
- Pasted with the keyboard (not only the Paste button) it is complete
  text: it advances at once, as a paste always did through the button.
- Typed and then left alone for 0.9s, it is checked quietly (names: our
  registrar or BIP-353 DNS; zaps: the LNURL-pay endpoint answers) and the
  form moves on only if something answers. A half-typed domain answers
  nothing, so it just waits, with no error; finishing it moves on.
- tools/send-lnaddr-advance-test.js (live registrar/DNS, adam@coinos.io).

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Send: the recipient field grows to show it all; history steps aside while sending</title>
<updated>2026-10-02T21:35:25Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T21:35:25Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=db8b88b973635b7329cfd5f234c6f8dd6e9e2ccf'/>
<id>urn:sha1:db8b88b973635b7329cfd5f234c6f8dd6e9e2ccf</id>
<content type='text'>
- The recipient is a one-line textarea that wraps and grows (rows from
  the text's length over the field's measured width), so a whole address
  is in view in the field itself — no second copy in small type below.
  Enter doesn't break it and pasted line breaks are dropped. Empty, it is
  as tall as its hint (measured in the hint's own face), so that's whole
  too.
- Past the recipient — the amount, a review, a Lightning/Ark
  confirmation, a raw tx to broadcast — the history list below the send
  pane is left out.
- tools/send-dest-test.js (390px and 1280px).

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Feed form: relays and an every-post firehose; its Back works; a stronger new-post tint</title>
<updated>2026-10-02T17:20:57Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T17:20:57Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=af19e72e54b1b3bac210d8c9d74317f662160c18'/>
<id>urn:sha1:af19e72e54b1b3bac210d8c9d74317f662160c18</id>
<content type='text'>
- The new/edit feed form gets a Relays field (read this feed from these
  relays only) and "Every post on these relays", which saves a firehose
  feed (optionally curated) named after its relay and hides the people,
  packs and topics it doesn't need. It used to take a hand-typed
  /feed/all?r= link.
- The form's Back did nothing visible: opening it made no history entry,
  so Back went to the page behind the feed and left the form up. The
  editor (and the gear page's Spending/Savings view) are now part of the
  navigation state.
- New-post tint 9% -&gt; 16% green in light mode; dark mode unchanged.
- tools/feed-editor-relays-test.js.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Notifications screen links to its settings</title>
<updated>2026-10-02T16:39:00Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T16:39:00Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=2aba63f5d8ae130bbc8dcfc8089841debbca82c6'/>
<id>urn:sha1:2aba63f5d8ae130bbc8dcfc8089841debbca82c6</id>
<content type='text'>
A Settings button beside the Notifications title opens Settings &gt;
Notifications (which kinds buzz this device); browser Back returns.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
<entry>
<title>Balance card gear replaces Accounts; Spending's coins live behind it</title>
<updated>2026-10-02T16:26:56Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-10-02T16:26:56Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinosv3.git/commit/?id=fe569ffa701e3f9b54330def31193217eb470ab9'/>
<id>urn:sha1:fe569ffa701e3f9b54330def31193217eb470ab9</id>
<content type='text'>
- The "Accounts" pill on each balance face is now a gear. It opens that
  face's settings: Spending leads with its coins (renewal, the
  co-operative move to Savings, unilateral exit), then Security (lock,
  change password), the recovery phrase, auto-logout; Savings adds its
  public key. A wallet with no nostr identity also gets sign-in and
  log-out there, since it has no profile page to hold them.
- The exit cost is no longer said under the balance; the Spending
  settings state it, always, not only when coin chains run deep.
- The lone Manage link under the balance is gone (the gear is the way
  in); warning notices that are about the coins link to the same page.
- The Accounts list, Add wallet and Delete all are no longer reached
  from the wallet (Delete all stays behind profile &gt; Log out &gt; forget).
- Tests follow the gear: padlock-ask, lock-wallet and account-access
  pass again; cooperative-exit-ui clicks the Spending gear.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo
</content>
</entry>
</feed>
