Skip to content

v10 beta#558

Draft
joe-p wants to merge 716 commits intomainfrom
decoupling
Draft

v10 beta#558
joe-p wants to merge 716 commits intomainfrom
decoupling

Conversation

@joe-p
Copy link
Contributor

@joe-p joe-p commented Mar 16, 2026

No description provided.

lempira and others added 30 commits December 21, 2025 14:47
- post_v1_key.test.ts
- post_v1_key_list.test.ts
- post_v1_key_export.test.ts
- post_v1_key_import.test.ts
- delete_v1_key.test.ts
- post_v1_master_key_export.test.ts (skipped: Uint8Array vs number[] type mismatch)
- post_v1_multisig_import.test.ts
- post_v1_multisig_list.test.ts
- post_v1_multisig_export.test.ts (skipped: Uint8Array[] vs number[][] type mismatch)
- delete_v1_multisig.test.ts
- post_v1_multisig_sign.test.ts
- post_v1_multisig_signprogram.test.ts

Added algod-client and transact as devDependencies for signing tests..
- post_v1_transaction_sign.test.ts
- post_v1_program_sign.test.ts
…ate-on-encode

feat: Dont validate on encode
refactor: move indexer lookup into indexer namespace
mrcointreau and others added 30 commits February 6, 2026 16:33
…ing (#531)

* feat(transact): add encodeSignedTransactionToJson for wire-format JSON encoding

Adds a convenience function to encode SignedTransaction to wire-format JSON string.
Wire format uses short keys (amt, fv, snd) matching the Algorand protocol.
Useful for debugging and logging where human-readable JSON with canonical field names is needed.

* refactor(crypto): move hash API from common to crypto
These api were superceded by the starlight autogenerated docs
…orts in rolldown build (#540)

The rolldown external config used exact string matching, which failed to
match dependency subpath imports (e.g. `@noble/hashes/sha2.js` did not
match `@noble/hashes`). This caused the build to resolve these imports
to relative `node_modules` paths, breaking consumers at runtime.
Add remark-github-alerts styles and remove duplicate headings
Expand algorand_client examples 03-signer-config, 05-account-manager and add 16-leases
* feat: ed25519 wrapped seed interface

* chore: fix npm audit

* chore: PR review feedback

* test: await runTests

* fix: ensure seed is properly zeroed out

* feat: wrapped secret

* chore: update .nsprc

* chore: PR review

* chore: remove 64-byte secret wrapping/unwrapping
* ci: add devportal docs publish workflow and docs build config

* ci: added pull_request trigger

* fix(ci): removed pnpm. not needed

* chore: migrate docs from npm to pnpm for devportal compatibility

* fix(ci): added pnpm version

* fix(ci): added tsx as a dev dep

* ci(docs): added generate examples to mdx script

* fix(docs): npm run build example generation

* ci: udpated to trigger on branch name and stable version

* fix(docs): added missing examples sidebar config

* chore: removed obsolete code

* chore(ci): apply PR @275 in utils-py review feedback

Update publish-devportal-docs workflow to use actions/checkout@v6,
actions/setup-node@v6, Node 22, and package_json_file for pnpm version.
Add compilerOptions.types to docs tsconfig and @types/node dev dependency
to fix IDE type resolution.

* chore: address PR feedback
We now use the lower-level curves library for signing from the HD esk
but didn't add it to the package.json. This resulted in "module not
found" for external projects using the crypto package
slice allocates a new buffer and subarray is a view into the original.
This ensures that we zero out the subarrays and not create new copies
* chore: assert top bit isn't set

In the xHD lib, the signing function uses
[crypto_scalarmult_ed25519_base_noclamp](https://github.com/algorandfoundation/xHD-Wallet-API-ts/blob/96e7a4be6bca67a4f77252206811f7676e59e5ec/src/x.hd.wallet.api.crypto.ts#L144-L144)
to get the public key  which [clears the top
bit](https://github.com/algorandfoundation/xHD-Wallet-API-ts/blob/9849fb3e90cecfb6348e188ff445b55806bfde00/src/sumo.facade.ts#L106-L106).
Then for the signing, the [raw
scalar](https://github.com/algorandfoundation/xHD-Wallet-API-ts/blob/96e7a4be6bca67a4f77252206811f7676e59e5ec/src/x.hd.wallet.api.crypto.ts#L156-L156)
is used without clearing the top bit. Since this is not an exported
function and the keys used are always from the known derivation function
(which ensure the top bit is clear), then this is not an issue. In
AlgoKit, however, we have no guarantees about where the scalar comes
from. As such, it's possible for someone to pass a scalar that does not
have the top bit cleared. The two options are to either clear it
automatically or error, but since a scalar without the top bit cleared
is invalid ed255519 scalar it seems preferable to just throw an error.

* test: add scalar top-bit tests
* feat: ed25519 wrapped seed interface

* chore: fix npm audit

* chore: PR review feedback

* test: await runTests

* fix: ensure seed is properly zeroed out

* feat: wrapped secret

* chore: update .nsprc

* chore: PR review

* chore: remove 64-byte secret wrapping/unwrapping

* chore: add signing examples

* chore: add mock KMSClient for CI

* docs: add secret-management.md

* docs: AWS comment

* docs: add imports

* docs: add header comments

* chore: use utils/crypto

* Apply suggestions from code review

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

* chore: rm FIXME from docs/examples

* Potential fix for pull request finding

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

* docs: fix grammar

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

* chore: use sidebar config json

* chore: update sidebar config, examples loader and verification scripts

* chore: add nsprc exception for flatted vuln (1114526)

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Luca Martini <luca.martini@algorand.foundation>
* fix: correctly log address

* chore: npm audit fix
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants