Ecosystem metrics

New Repos
26
New
Commits
541
down 3.7%
Releases
5
down 28.6%
Contributors
56
up 24.4%
Merges
20
up 66.7%

Repository Explorer

7115 commits in all time Jun 17, 2026 14:16 – Sep 15, 2026 14:16 UTC
tasibot nodekit
Merge 47b79ceac31ec8187312b766b752e818cefb84c4 into a305a1d919655116789aceb7ed568c0eb398a0b9
Git Commit 9af2c410 Branch pull/193/merge Document 38/5,605 ++ 31 --
jannotti go-algorand
Merge 399f42e843f89c8b55fc335f58f8f8d69981c24c into e8559cc9a0173ca6f9dc28f6913251efed33d625
Git Commit 0eaa4086 Branch pull/6707/merge Document 17/2,342 ++ 60 --
jannotti go-algorand
add off prime order subgroup warning
Git Commit 399f42e8 Branch pull/6707/head Document 9/18 ++ 18 --
tasosbit nodekit
Merge pull request #192 from algorandfoundation/fix/track-latest-algod-spec
fix: track algod spec instead of pinning a stale one
Git Commit a305a1d9 Branch v1.7 Document 21/1,714 ++ 490 --
renovate[bot] use-wallet
Merge 54fdada9c62511d4aee176dee1b6f50223cc228c into 7861a68efdc034d4a01f5ba68f1acff97e28e8e6
Git Commit ab72588e Branch pull/449/merge Document 1/1,493 ++ 1,441 --
renovate[bot] use-wallet
chore(deps): lock file maintenance
Git Commit 54fdada9 Branch renovate/lock-file-maintenance Document 1/1,493 ++ 1,441 --
ipaleka frontend
Live refresh now checks for all the changed data on block level
Git Commit 27732070 Branch development Document 8/231 ++ 4 --
ipaleka widgets
Added reload response routine to liverefresh
Git Commit 9a5b7869 Branch main Document 4/227 ++ 3 --
Merge 973358a937547271e51c13253c33944df98b4bac into b0a3e71a91adfd1dfb97b5060d054618c2a147aa
Git Commit 26b0d146 Branch pull/66/merge Document 10/1,214 ++ 1,278 --
chore(deps): Update all non-major dependencies
Git Commit 973358a9 Branch renovate/all-non-major-dependencies Document 10/1,214 ++ 1,278 --
PhearZero nodekit
stash: state walker
Git Commit 42505ce0 Branch test/state-walker Document 41/4,859 ++ 15 --
ChrisWozniak go-algorand
Merge b6e36d117a6e3f005b6b4061d73fef98b07ea0f1 into e8559cc9a0173ca6f9dc28f6913251efed33d625
Git Commit ade087ae Branch pull/6735/merge Document 16/650 ++ 504 --
chris-wozniak go-algorand
simulate: support extra fee credit
Git Commit b6e36d11 Branch pull/6735/head Document 16/650 ++ 504 --
larkiny nodekit
Merge 747be00b69be53622adc6f0ea8b5196af742bdd0 into f40ba97e346ad7408168cc0b2e2ebaf4b8770e00
Git Commit 846a6f55 Branch pull/176/merge Document 1/0 ++ 0 --
tasibot nodekit
Merge 47b79ceac31ec8187312b766b752e818cefb84c4 into bf9f72790009f84d50ba4dba769e85d04a627489
Git Commit 3f1dc411 Branch pull/193/merge Document 38/5,605 ++ 31 --
tasibot nodekit
chore: mark pflag as a direct dependency
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Git Commit 47b79cea Branch pull/193/head Document 1/1 ++ 1 --
tasibot nodekit
fix: keep crash output at every level, --level panic included
An entry with no readable level was dropped once the floor passed error,
which is the one place the exemption had to hold: a runtime panic is
written by the Go runtime and not through logrus, so it carries no level
field, and `logs --level panic` on a node that died of a nil dereference
answered with nothing at all while the default warn view showed the dump.
The floor now never judges a line it could not read a level from, which is
what the command's help has been promising.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit 94ef4392 Branch pull/193/head Document 4/41 ++ 20 --
tasibot nodekit
docs: record the truncation Follow cannot see
Size against offset only catches a truncation that is still visible when
the poll arrives. A file emptied and written back past the old offset
inside one interval never looks short, and the next drain reads new bytes
at a stale position: the prefix is lost and a pending fragment of the old
file is spliced onto what followed.

Polling has no way to close that. Nothing separates a truncate-and-regrow
from an append once the inode is unchanged and the length has recovered,
so the alternative is a different mechanism rather than a better check.
The window is one interval wide, algod rotates by renaming, and tail -F
has the same hole; it is left open on purpose, and now says so.

The truncation test slept to stay out of that window without explaining
which window, which read as timing noise rather than as the point.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit 8e061361 Branch pull/193/head Document 2/21 ++ 1 --
tasibot nodekit
docs: add the generated man page for logs
Every other registered top-level command has one, and the README's
command list is where the published docs link from. Generated with
cobra/doc and put through the same banner substitution the existing
pages carry, checked by regenerating nodekit_restart.md and diffing it
against the committed copy.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NMKTAqwAPrGqB8hvgmBWu5
Git Commit f21b7562 Branch pull/193/head Document 2/51 ++ 0 --
tasibot nodekit
fix: finish the log permission message and split off --file
The message broke off at "adding your account to the 'algorand' group
after", and it blamed the algod data directory's ownership for every
permission failure, including one on a file the user named with --file. It
now finishes the instruction, and a file the user chose gets a message that
only says which path could not be read.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit 5c0e8388 Branch pull/193/head Document 2/14 ++ 3 --
tasibot nodekit
fix: resume follow at the start of a line algod was still writing
Scan reported the live log's size as the follow offset, but a log caught
mid-write ends mid-line: the scan shows that fragment, and Follow then
resumed past it, so the remainder of the line arrived as a line of its own
and the entry algod was writing never appeared whole. The offset is now
rounded back to the last line boundary, within one read buffer, so the
completed entry is delivered once the newline lands.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit bac25c1a Branch pull/193/head Document 2/102 ++ 8 --
tasibot nodekit
fix: report an archive that cannot be read instead of dropping it
ArchiveFiles skipped every path os.Stat failed on, permission denied
included. With a separate LogArchiveDir the user cannot enter, the
archive was removed before the scan ever saw it, so nothing recorded it
as skipped and no warning was printed: the command reported a complete
history it had never read, which is the one failure this package works
to avoid.

Only absence is skipped now. Anything else keeps the path and lets the
read path fail on it, which puts it in ScanResult.Skipped and gets it
warned about -- the same choice PruneSources already makes, for the same
reason. An archive whose age could not be read sorts last, so it cannot
reorder the history around it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit cb861914 Branch pull/193/head Document 2/57 ++ 5 --
tasibot nodekit
fix: quote a field name that would split the rendered line
Render's one-line guarantee was only half enforced. Values were escaped
and keys were concatenated raw, but a field name is decoded from the same
JSON object the value is, and an object key may hold anything a JSON
string can. A key carrying a newline split one entry across two physical
lines, which is the defect the value quoting was there to prevent.

The predicate moves into quoteIfNeeded and both halves of the pair go
through it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit 74f32c3c Branch pull/193/head Document 2/40 ++ 17 --
tasibot nodekit
fix: compare and merge every field of the algod config
IsEqual and MergeAlgodConfigs still handled only the two P2P flags, so the
log fields added for the logs command were invisible to both: two configs
differing only in BaseLoggerDebugLevel, LogSizeLimit or a log path compared
equal, and a value passed through the merge was dropped before anything
could write it. Both now cover every field, through a pair of generic
helpers rather than a block each, and a reflection-driven test fails on the
next field added to Config that either of them forgets.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
Git Commit ec09f55a Branch pull/193/head Document 2/101 ++ 29 --
tasibot nodekit
fix: stop --all warning that the view of the log is incomplete
--all names no level. It asks for whatever the log holds, and the log
holds everything the node wrote, so nothing the user asked for is
missing from it. Measuring the request against the node's floor anyway
meant --all asked for trace, which no algod writes, and every node with
a configured BaseLoggerDebugLevel was reported as withholding something
-- on the one run where the request was for all of it.

The warning stays for a level the user named and the node never writes,
which is what it is for. A node genuinely holding levels back is still
explained by reportEmptyLogResult, at the point where that leaves
nothing to show and the reason matters.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PqPSx1wqM8rMdo4EHPa4jy
(cherry picked from commit 88bc94234b130effa60ab076a647f35d33e2e359)
Git Commit b862a3fa Branch pull/193/head Document 2/55 ++ 4 --