<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coinos-server.git/lib/register.ts, branch regtest-fulcrum</title>
<subtitle>coinos server — legacy coinos.io backend (Lightning, on-chain, Liquid)</subtitle>
<id>https://git.coinos.io/coinos-server.git/atom?h=regtest-fulcrum</id>
<link rel='self' href='https://git.coinos.io/coinos-server.git/atom?h=regtest-fulcrum'/>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/'/>
<updated>2026-06-04T06:10:20Z</updated>
<entry>
<title>analytics: monthly insight reports + signup instrumentation</title>
<updated>2026-06-04T06:10:20Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2026-06-04T06:10:20Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=183a3cb03e9ca04a0b1433fa2850a47747de00d6'/>
<id>urn:sha1:183a3cb03e9ca04a0b1433fa2850a47747de00d6</id>
<content type='text'>
scripts/analytics.ts — streams live db (SCAN, never KEYS) and reports for
a trailing window (default 30d): MAU/WAU, new users, custody total + top
holders, network volume by type (lightning/liquid/bitcoin/internal/bolt12/
fund), most-active and highest-volume users, and bolt12 recipients with a
"regular" flag for the Ocean mining-reward stream.

scripts/analytics-geo.ts — top countries from the request log. Counts only
/login + /register events tied to a username (raw cf-ipcountry volume is
dominated by datacenter/nostr traffic). Surfaces a distinct-IP-per-country
column so proxy/VPN egress is visible, and filters a known credential-test
bot IP. Honest result: US #1, then GB/CA/JP/DE/ES/BR.

lib/register.ts — stamp `created` (ms epoch) and store `country` (CF/
ipregistry code) on new users, so future reports get real signup timing and
geography from the db directly instead of log archaeology. Existing users
predate this; backfill is out of scope.

Co-Authored-By: Claude Opus 4.8 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>check username</title>
<updated>2026-01-19T00:27:30Z</updated>
<author>
<name>Adam Soltys</name>
<email>asoltys@gmail.com</email>
</author>
<published>2026-01-19T00:27:30Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=08d292474e8310a73fb28d35c500bd8063b73ca3'/>
<id>urn:sha1:08d292474e8310a73fb28d35c500bd8063b73ca3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>check for syncSquare</title>
<updated>2025-09-08T18:13:32Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2025-09-08T18:13:32Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=fd63ceacaf9b190d43dbaf6a382d13525e45cdf0'/>
<id>urn:sha1:fd63ceacaf9b190d43dbaf6a382d13525e45cdf0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>reserved usernames</title>
<updated>2025-08-07T15:45:36Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2025-08-07T15:45:36Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=0da54f2b44b3421f45e7db01e0cb167f1c097289'/>
<id>urn:sha1:0da54f2b44b3421f45e7db01e0cb167f1c097289</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rm log</title>
<updated>2025-07-11T14:15:26Z</updated>
<author>
<name>Adam Soltys</name>
<email>asoltys@gmail.com</email>
</author>
<published>2025-07-11T14:15:26Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=89fc1dd643ba8472b4839da708199767a5ca078f'/>
<id>urn:sha1:89fc1dd643ba8472b4839da708199767a5ca078f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fresh attribute</title>
<updated>2025-07-10T19:37:05Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2025-07-10T19:25:09Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=81a7608330f3cb3eae513429b61a8611267547a3'/>
<id>urn:sha1:81a7608330f3cb3eae513429b61a8611267547a3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>username checks</title>
<updated>2025-06-16T20:54:29Z</updated>
<author>
<name>Adam Soltys</name>
<email>asoltys@gmail.com</email>
</author>
<published>2025-06-16T20:54:28Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=e92f232d7194626d9182a5eaeff3d42d67fbb53f'/>
<id>urn:sha1:e92f232d7194626d9182a5eaeff3d42d67fbb53f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>increase default nwc limit</title>
<updated>2025-06-16T20:54:29Z</updated>
<author>
<name>Adam Soltys</name>
<email>asoltys@gmail.com</email>
</author>
<published>2025-06-08T22:21:53Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=25e256800754733776f8c124e7b61134a8344cbf'/>
<id>urn:sha1:25e256800754733776f8c124e7b61134a8344cbf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>strip spaces</title>
<updated>2025-02-25T17:45:49Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2025-02-25T17:45:49Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=a14b987a392bc700975b048f37838da08e4ed255'/>
<id>urn:sha1:a14b987a392bc700975b048f37838da08e4ed255</id>
<content type='text'>
</content>
</entry>
<entry>
<title>allow spaces</title>
<updated>2025-02-25T17:44:15Z</updated>
<author>
<name>Adam Soltys</name>
<email>adam@coinos.io</email>
</author>
<published>2025-02-25T17:44:15Z</published>
<link rel='alternate' type='text/html' href='https://git.coinos.io/coinos-server.git/commit/?id=99abcd90e594e1ff2fc22b75053b8a29429fda14'/>
<id>urn:sha1:99abcd90e594e1ff2fc22b75053b8a29429fda14</id>
<content type='text'>
</content>
</entry>
</feed>
