Activity Overview

Commits and releases over time

  • Commits
  • Releases
  • Authors

Repository Explorer

15 commits in all time Jun 29, 2026 05:04 – Sep 27, 2026 05:04 UTC
scholtz conduit
Merge 072ce1ee17eac8a63d7556d1fa35b52622eb9287 into e9d53f8703d148114d39deb74a9a2fb4ef746553
Git Commit aee29023 Branch pull/190/merge Document 1/9 ++ 0 --
jannotti conduit
Sync: Bump indexer for pqsig, stop leaking a pipeline in the CLI test (#201)
* Sync: Bump indexer to recognize pqsig signatures

Nightly algod now produces transactions signed with post-quantum
signatures. idb.SignatureType in the pinned indexer only knew
sig/msig/lsig, so the postgresql exporter aborted the round:

  AddBlock() err: getSigTypeDelta() err: unable to determine the
  signature type for stxn=&{... PQsig:{Scheme:[102 49] ...}}

Indexer main handles this as of 219b2118 ("Update to recognize
pqsigs"). It pins the same go-algorand-sdk revision we already use, so
this bump touches nothing else.

* Tests: Stop leaking a running pipeline out of TestHealthEndpoint

The test started the pipeline in a goroutine and never stopped it, so it
kept writing metadata into the data dir while t.TempDir() cleanup was
removing it:

  --- FAIL: TestHealthEndpoint/API_OFF
      TempDir RemoveAll cleanup: unlinkat /tmp/...: directory not empty

There was no way to stop it: runConduitCmdWithConfig hardcoded
context.Background(). Take a context instead, which MakePipeline already
derives its cancelable context from, and have the test cancel and wait
for the goroutine to finish before returning. The cobra command passes
cmd.Context(), which cobra defaults to context.Background(), so the
binary behaves as before.

* comment typo

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Git Commit e9d53f87 Branch master Document 4/24 ++ 13 --
joe-p conduit
feat: pq indexer
Git Commit 89e79285 Branch pull/202/head Document 2/3 ++ 3 --
jannotti conduit
comment typo
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Git Commit 48f40527 Branch pull/201/head Document 1/1 ++ 1 --
jannotti conduit
Tests: Stop leaking a running pipeline out of TestHealthEndpoint
The test started the pipeline in a goroutine and never stopped it, so it
kept writing metadata into the data dir while t.TempDir() cleanup was
removing it:

  --- FAIL: TestHealthEndpoint/API_OFF
      TempDir RemoveAll cleanup: unlinkat /tmp/...: directory not empty

There was no way to stop it: runConduitCmdWithConfig hardcoded
context.Background(). Take a context instead, which MakePipeline already
derives its cancelable context from, and have the test cancel and wait
for the goroutine to finish before returning. The cobra command passes
cmd.Context(), which cobra defaults to context.Background(), so the
binary behaves as before.
Git Commit 27a12ec2 Branch pull/201/head Document 2/21 ++ 10 --
jannotti conduit
Sync: Bump indexer to recognize pqsig signatures
Nightly algod now produces transactions signed with post-quantum
signatures. idb.SignatureType in the pinned indexer only knew
sig/msig/lsig, so the postgresql exporter aborted the round:

  AddBlock() err: getSigTypeDelta() err: unable to determine the
  signature type for stxn=&{... PQsig:{Scheme:[102 49] ...}}

Indexer main handles this as of 219b2118 ("Update to recognize
pqsigs"). It pins the same go-algorand-sdk revision we already use, so
this bump touches nothing else.
Git Commit 34147a24 Branch pull/201/head Document 2/3 ++ 3 --
jannotti conduit
CI: Add nightly workflow running e2e against unpinned test data (#200)
The PR workflow pins CI_E2E_FILENAME to a commit hash, so its block data
is frozen and cannot surface encoding changes in go-algorand. New block or
transaction fields are fatal rather than ignorable, because the SDK decodes
with ErrorIfNoField set, so an unknown map key aborts block import. The
unit tests cannot catch it either: they encode and decode with the same SDK
structs, which round-trips regardless of what algod puts on the wire.
Git Commit 1ea309c7 Branch master Document 1/79 ++ 0 --
jannotti conduit
CI: Add nightly workflow running e2e against unpinned test data
The PR workflow pins CI_E2E_FILENAME to a commit hash, so its block data
is frozen and cannot surface encoding changes in go-algorand. New block or
transaction fields are fatal rather than ignorable, because the SDK decodes
with ErrorIfNoField set, so an unknown map key aborts block import. The
unit tests cannot catch it either: they encode and decode with the same SDK
structs, which round-trips regardless of what algod puts on the wire.
Git Commit 312c3b3e Branch pull/200/head Document 1/79 ++ 0 --
jannotti conduit
Sync: Bump go-algorand-sdk to main for pqsig (#199)
The nightly algod now emits the pqsig key in SignedTxn. The previously
pinned SDK (2026-06-24) predates the post-quantum signature types, so
go-codec rejected the unknown key and block import failed with
"no matching struct field found when decoding stream map with key pqsig".
Git Commit 415873ac Branch master Document 2/3 ++ 3 --
jannotti conduit
Sync: Bump go-algorand-sdk to main for pqsig
The nightly algod now emits the pqsig key in SignedTxn. The previously
pinned SDK (2026-06-24) predates the post-quantum signature types, so
go-codec rejected the unknown key and block import failed with
"no matching struct field found when decoding stream map with key pqsig".
Git Commit 63ec8b17 Branch pull/199/head Document 2/3 ++ 3 --
jannotti conduit
Filter: Ignore pqsig (#198)
* Don't allow filtering on the pq signatures
Git Commit 9f0fa0e0 Branch master Document 1/10 ++ 0 --
jannotti conduit
Merge remote-tracking branch 'upstream/master' into ignore-pqsig
Git Commit b019337e Branch pull/198/head Document No file changes
jannotti conduit
Don't allow filtering on the pq signatures
Git Commit ff00cb9c Branch pull/198/head Document 1/10 ++ 0 --
jannotti conduit
Filter: strip codec tag options when building nested tag paths (#197)
recursiveTagFields passed the raw codec tag down when recursing into a
struct field, so a tag like `codec:"txn,required"` produced tag paths of
the form `txn,required.*`. Every ignoreTags lookup for a nested field
then missed, and the generated filter tag would carry the encoder option
in its name.

Parse the tag name once, before recursing, and use it for both the
nested path and the leaf's full tag. A tag that only carries options
(`codec:",omitempty"`) names nothing, so it is now treated as untagged
at any level rather than only at leaves.

No SDK struct-typed field carries tag options today, so the generated
map and tags doc are unchanged.
Git Commit fda80a39 Branch master Document 2/40 ++ 11 --
jannotti conduit
Filter: strip codec tag options when building nested tag paths
recursiveTagFields passed the raw codec tag down when recursing into a
struct field, so a tag like `codec:"txn,required"` produced tag paths of
the form `txn,required.*`. Every ignoreTags lookup for a nested field
then missed, and the generated filter tag would carry the encoder option
in its name.

Parse the tag name once, before recursing, and use it for both the
nested path and the leaf's full tag. A tag that only carries options
(`codec:",omitempty"`) names nothing, so it is now treated as untagged
at any level rather than only at leaves.

No SDK struct-typed field carries tag options today, so the generated
map and tags doc are unchanged.
Git Commit 5e6d9211 Branch pull/197/head Document 2/40 ++ 11 --