<feed xmlns='http://www.w3.org/2005/Atom'>
<title>otpGarmin/source/app/Fixtures.mc, branch v0.8.0</title>
<subtitle>OTP Wallet for Garmin Connect IQ: offline one-time passwords and barcodes.</subtitle>
<id>https://git.cirakg.xyz/otpGarmin/atom?h=v0.8.0</id>
<link rel='self' href='https://git.cirakg.xyz/otpGarmin/atom?h=v0.8.0'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/'/>
<updated>2026-10-21T01:55:10+00:00</updated>
<entry>
<title>feat(glance): show the favourite code in the glance (opt-in)</title>
<updated>2026-10-21T01:55:10+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-21T01:55:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=5e8ac1e2f5a660e55ea132996e1d5730cfa4fa64'/>
<id>urn:sha1:5e8ac1e2f5a660e55ea132996e1d5730cfa4fa64</id>
<content type='text'>
With "Show the favourite code in the glance" on, the glance shows the
code of the first favourite TOTP or Steam entry without the PIN, with a
countdown bar. The glance can't open the vault, so the About scan seals
that entry under "g" (device key, aad OTPW-GL-1) after every change, and
removes it when the option is off or no entry qualifies; the glance also
reads the option itself. HKDF moves to its own module so the glance loads
only the crypto it needs (37 % of its 64 KB). Manage entry gains "Mark as
favourite (glance)" and "Remove favourite", queued for locked entries
like the other changes. Lines are inset on round screens so the
Instinct 3's curved glance corner doesn't cut them.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>test(settings): cover every form, symbology and Manage action; send the forms end to end in the UI flow</title>
<updated>2026-10-20T16:36:54+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-20T16:36:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=479d7ba2e843d5ea93979f2eed68f4d38d146c25'/>
<id>urn:sha1:479d7ba2e843d5ea93979f2eed68f4d38d146c25</id>
<content type='text'>
34 Monkey C tests (154 per device): validation messages, idempotency, the
queue, the About scan, "Encrypt names" and the properties contract. The
UI-test build fills in Add OTP, Add code and Manage like the phone; the flow
checks the new TOTP (309 848 at the frozen time), decodes the Code 128 card
and confirms the queued change to the locked entry with the PIN.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>test(codes): compare Aztec with aztec_code_generator, decode it and its screenshot</title>
<updated>2026-10-20T10:16:59+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-20T10:16:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=1ebc828f30698c1661055e17483e8d50a139ed45'/>
<id>urn:sha1:1ebc828f30698c1661055e17483e8d50a139ed45</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(ui): show Data Matrix and PDF417 codes; fit 2D codes inside round screens</title>
<updated>2026-10-20T09:24:58+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-20T09:24:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=d94eb32c80d2dbf00a45d7e69804f8247240a769'/>
<id>urn:sha1:d94eb32c80d2dbf00a45d7e69804f8247240a769</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(ui): show QR codes, encoded once with progress and cached sealed per entry</title>
<updated>2026-10-20T04:56:58+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-20T04:56:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=2df98d1ba129f95a10c6b81665671d3b12560c79'/>
<id>urn:sha1:2df98d1ba129f95a10c6b81665671d3b12560c79</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(ui): show barcode entries black on white at the largest whole module size</title>
<updated>2026-10-20T00:43:08+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-20T00:43:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=59255b1a55a81ba2b5de967eefced11910597b48'/>
<id>urn:sha1:59255b1a55a81ba2b5de967eefced11910597b48</id>
<content type='text'>
Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(settings): apply the Import form from the phone and show results</title>
<updated>2026-10-19T23:51:05+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-19T23:51:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=d537f4e154a40075405b0ab2fed14fbe2eeaac81'/>
<id>urn:sha1:d537f4e154a40075405b0ab2fed14fbe2eeaac81</id>
<content type='text'>
Import group in the app settings; the processor runs after the first
frame and on settings changes, clears the fields, writes the status,
remembers form hashes and opens the results screen.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>feat(ui): add the list, OTP detail, PIN entry, menu, info screens and glance</title>
<updated>2026-10-19T20:28:09+00:00</updated>
<author>
<name>cirakg</name>
<email>cirakg@cirakg.xyz</email>
</author>
<published>2026-10-19T20:28:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/otpGarmin/commit/?id=35042ff04ffc50e55ff59a385849442be4429d6b'/>
<id>urn:sha1:35042ff04ffc50e55ff59a385849442be4429d6b</id>
<content type='text'>
List with live codes and countdowns, adaptive rows and lazy headers; OTP
detail with ring or bar, next code and HOTP next; PIN keypad or button
selector with create, unlock, change, lockout display and pending
promotion; native menu; glance with the entry count; self-test after the
first frame; option properties with defaults. Codes are computed one per
timer event, apart from drawing, for the watchdog. A UI-test build
(uitest.jungle) starts with fake entries, PIN 123456 and a frozen clock.

Co-Authored-By: Claude Opus 5.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
