fix: make externals/run.sh posix-ompatible
Signed-off-by: Yummy-Yums <[email protected]>
Signed-off-by: Yummy-Yums <[email protected]>
Replaces 13 instances of generic `throw new Error()` with domain-specific error types (`PolluxError.InvalidCredentialError`, `CastorError.NotPossibleToResolveDID`, `CastorError.InvalidKeyError`) across the JWT/SDJWT utility layer. This enables callers to programmatically distinguish between error types (e.g., invalid DID document vs invalid key vs invalid credential), which is essential for the Identity Portal to display meaningful error messages. Files changed: - SDJWT.ts: 6 errors replaced - JWT.ts: 4 errors replaced - ResolveDID.ts: 1 error replaced - CreateJwt.ts: 1 error replaced - CreateSDJWT.ts: 1 error replaced - Added tests for error type verification Signed-off-by: Abhigyan Singh <[email protected]>
Signed-off-by: Abhigyan Singh <[email protected]>
Signed-off-by: Abhigyan Singh <[email protected]>
Signed-off-by: Abhigyan Singh <[email protected]>
fix: e2e compatibility rules for Cardano `10.7`
[CI] Bump actions/upload-pages-artifact from 4 to 5
Bare relative paths broke under Hydra where the working directory is a build sandbox unrelated to the source tree. Declare the example YAML and trace files as cabal data-files and resolve their location at runtime via Paths_cardano_recon_framework.getDataDir, which cabal/Nix wire up to the correct installed path in every environment. Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Yaci 0.4.1 fixes a CBOR parsing error for blocks using definite-length arrays (>23 txs), which broke chain sync on preview. Also adds configurable TipFinder timeouts. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
## Summary
Bump all dependencies to cardano-node 10.7.1 and adapt wallet code to
upstream API changes.
## Upstream pins (both on main)
- **cardano-ledger-read**:
cardano-foundation/cardano-ledger-read@cc9ca75 (10.7.1)
- **cardano-balance-tx**:
cardano-foundation/cardano-balance-transaction@5d69cc9 (main HEAD — [PR
#40](https://github.com/cardano-foundation/cardano-balance-transaction/pull/40)
merged 2026-04-17, added `SafeToHash (NativeScript era)` to
`RecentEraConstraints`)
## Code changes
### Deprecated API migrations
- `ppMinFeeAL` → `ppTxFeePerByteL` (returns `CoinPerByte`, unwrap with
`fromCompact . unCoinPerByte`)
- `ppMinFeeBL` → `ppTxFeeFixedL`
- `StakeCredential` → `Credential Staking`
- `PaymentCredential` → `Credential Payment`
- `RewardAccount` → `AccountAddress` with `AccountId` wrapper
- `decodeRewardAccount` → `decodeAccountAddress`
- `serialiseRewardAccount` → `serialiseAccountAddress`
- `raNetwork` → `aaNetworkId`, `raCredential` → `unAccountId . aaId`
- `PoolParams` pattern `pp*` fields → `StakePoolParams` with `spp*`
fields
- `Ouroboros.Network.NodeToClient` →
`Cardano.Network.NodeToClient.Version`
### Other fixes
- Removed redundant imports (`Cardano.Ledger.Plutus.Language`,
`Cardano.Ledger.Shelley.API`, `Cardano.Ledger.Keys`,
`Cardano.Ledger.MemoBytes`)
- Added `BangPatterns` for unbanged strict patterns (`SBS.SBS ba`,
`BA.ByteArray ba`)
- Added `GuardNativeScriptNotSupportedInConway` pattern match in API
error handler
- Fixed `HF.Bound` construction (new `boundPerasRound` field via record
update from `initBound`)
- Replaced `ouroboros-network` dep with `cardano-diffusion:api` /
`ouroboros-network:api` where needed
- cabal-fmt applied to all changed `.cabal` files
- Dijkstra era stubs remain (`error "TODO"`)
## nix/haskell.nix changes
Three distinct concerns, kept in separate commits:
**1. `28a9e5f9` — Adapt nix shell for ouroboros-consensus 1.0**
ouroboros-consensus 1.0.0.0 absorbed `consensus-cardano`, `protocol`,
`diffusion` into sublibraries
(`ouroboros-consensus:{cardano,protocol,diffusion}`), and
ouroboros-network 1.1.0.0 absorbed `network-api`, `framework`,
`protocols` (`ouroboros-network:{api,framework,protocols}`). Two
problems:
- **Sublibraries missing in the dev shell's GHC package db**
(haskell.nix
[#1662](https://github.com/input-output-hk/haskell.nix/issues/1662)).
Added `shell.additional` to explicitly register the sublibraries we
consume. Also switched `withHoogle = false` because Hoogle index
generation trips on the sublibrary resolution.
- **`lmdb` / `liburing` system libs**. haskell.nix evaluates every
sublibrary of `ouroboros-consensus` during plan resolution (including
`lmdb` and `lsm`), even though the wallet doesn't use them. Without the
C libs on `nativeBuildInputs` via `pkg-config`, nix eval fails. The libs
are not linked into the wallet binary.
- **shellHook CHaP workaround**. Even with `additional`, `cabal build`
inside `nix develop` still fails to resolve the sublibraries against the
installed package db. Workaround: materialize CHaP as a local repo via
`mkLocalHackageRepo` and write a `cabal.project.local` that points cabal
at it, bypassing the broken GHC package db. Added `cabal.project.local`
to `.gitignore`.
**2. `24a4c552` — cabal 3.16 / haskell.nix index mismatch**
cabal 3.16 expects `00-index.tar.gz` in a local repo, but
`mkLocalHackageRepo` only writes `01-index.tar.gz`. Two workarounds:
- In the shell hook, clear
`~/.cache/cabal/packages/cardano-haskell-packages-local` before
recreating the project.local — stale caches referenced the old
(non-existent) tarball path and caused cabal to try to download packages
that only live as an index.
- In `scripts/ci/check-haskell-nix-cabal.sh`, copy the CHaP repo to a
writable temp dir and symlink `00-index.tar.gz` → `01-index.tar.gz` so
`cabal update` succeeds under 3.16.
**3. `68166a09` — balance-tx pin bump**
cabal.project tag + sha256, plus the matching `inputMap` /
`extra-hackages` references in `nix/haskell.nix`.
**4. `3fb88c5e` — HLS CI step fix**
The "Check HLS Works" CI step was loading the shellHook-generated
`cabal.project.local` and re-running resolution against the local CHaP
repo, which HLS can't load. Remove the file before invoking HLS.
## Known issues (follow-ups, not blockers)
- haskell.nix sublibrary resolution bug:
https://github.com/input-output-hk/haskell.nix/issues/1662 (the
shellHook workaround above is in place until fixed upstream)
- ProtocolParameters type alignment:
https://github.com/cardano-foundation/cardano-wallet/issues/5252
Closes https://github.com/cardano-foundation/cardano-wallet/issues/5247
This makes is less surprising that a nix develop or direnv works differently from within analysis/deltaq/linear-leios
* mithril-end-to-end from `0.4.129` to `0.4.130`
- Bump cardano-node version to 11.0 - Unconditionally enable ProtVer 11 - Unconditionally parse Dijkstra Genesis
Bumps the docusaurus group in /website with 6 updates: | Package | From | To | | --- | --- | --- | | [@docusaurus/core](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus) | `3.9.2` | `3.10.0` | | [@docusaurus/preset-classic](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-preset-classic) | `3.9.2` | `3.10.0` | | [@docusaurus/theme-mermaid](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-theme-mermaid) | `3.9.2` | `3.10.0` | | [@docusaurus/module-type-aliases](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-module-type-aliases) | `3.9.2` | `3.10.0` | | [@docusaurus/tsconfig](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-tsconfig) | `3.9.2` | `3.10.0` | | [@docusaurus/types](https://github.com/facebook/docusaurus/tree/HEAD/packages/docusaurus-types) | `3.9.2` | `3.10.0` | Updates `@docusaurus/core` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus) Updates `@docusaurus/preset-classic` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus-preset-classic) Updates `@docusaurus/theme-mermaid` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus-theme-mermaid) Updates `@docusaurus/module-type-aliases` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus-module-type-aliases) Updates `@docusaurus/tsconfig` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus-tsconfig) Updates `@docusaurus/types` from 3.9.2 to 3.10.0 - [Release notes](https://github.com/facebook/docusaurus/releases) - [Changelog](https://github.com/facebook/docusaurus/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/docusaurus/commits/v3.10.0/packages/docusaurus-types) --- updated-dependencies: - dependency-name: "@docusaurus/core" dependency-version: 3.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: docusaurus - dependency-name: "@docusaurus/preset-classic" dependency-version: 3.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: docusaurus - dependency-name: "@docusaurus/theme-mermaid" dependency-version: 3.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: docusaurus - dependency-name: "@docusaurus/module-type-aliases" dependency-version: 3.10.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: docusaurus - dependency-name: "@docusaurus/tsconfig" dependency-version: 3.10.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: docusaurus - dependency-name: "@docusaurus/types" dependency-version: 3.10.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: docusaurus ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps [typescript](https://github.com/microsoft/TypeScript) from 6.0.2 to 6.0.3. - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Commits](https://github.com/microsoft/TypeScript/compare/v6.0.2...v6.0.3) --- updated-dependencies: - dependency-name: typescript dependency-version: 6.0.3 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-pages-artifact/releases) - [Commits](https://github.com/actions/upload-pages-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/upload-pages-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps the default sync grace window from 100 to 200 slots across env files, Spring config, Helm values, and docs. The previous value caused the synced flag on /network/status to flap when the HTTP link between rosetta-api and yaci-indexer was briefly unstable. Enriches the logs in YaciHttpGatewayImpl for both getStakeAccountRewards and getDiscoveredPeers: non-2xx branches now include the target URL and response body alongside the status code, and IOException/InterruptedException branches include the URL plus the exception (full cause chain) so SSL and connection errors are visible in the logs. Co-authored-by: Mateusz Czeladka <[email protected]> Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
When a node restarts and catches up with the chain, all network messages (including ReqTx) are rejected with WaitOnNodeInSync and re-enqueued with decremented TTL. Since ReqTx has TTL=5 (500ms of retries) while chain catch-up typically takes longer, ReqTx messages are dropped before the node finishes syncing. This means the node never receives transactions referenced by subsequent ReqSn messages, causing WaitOnTxs and permanent snapshot deadlock. Fix: preserve TTL when the wait reason is WaitOnNodeInSync, since the message cannot be processed yet and burning retries is wasteful. Signed-off-by: Sasha Bogicevic <[email protected]>