feat(metrics): add peer temperature and protocol-level observability (#1654) (#2199)
Signed-off-by: Chris Guiney <[email protected]>
Signed-off-by: Chris Guiney <[email protected]>
A network model of Ouroboros Praos: nodes produce blocks, exchange chains, and select the best chain. The spec is a literate Quint file (praos.md) with prose interleaved with executable Quint code blocks. What the model covers: - Types matching the implementation: ChainHash (GenesisHash | BlockHash), WithOrigin (Origin | At), Block, Chain. - Chain selection: prefer strictly longer chains that fork at most k blocks back. - Actions: block production (nondeterministic leader election), chain delivery (receive and select), slot advance. - Properties: allChainsValid (sanity check on actions), commonPrefix (stated but requires network delay bound to hold). What is deferred: - VRF-based leader election (currently nondeterministic). - Chain exchange via ChainSync/BlockFetch (currently atomic). - Header validation details (KES, VRF, nonce). - Network delay bound (Δ) required for common prefix. - Adversarial behavior. - Conformance testing.
lmt extracts code blocks from markdown files, enabling literate Quint specifications. The Quint code lives in prose-heavy .md files and gets extracted into .qnt files for typechecking and simulation. Built from source (https://github.com/driusan/lmt), pinned at 62fe18f.
Signed-off-by: yHSJ <[email protected]>
Signed-off-by: Chris Guiney <[email protected]>
Signed-off-by: jeluard <[email protected]>
Signed-off-by: jeluard <[email protected]>
Signed-off-by: iammdzaidalam <[email protected]>
Signed-off-by: Chris Guiney <[email protected]>
Fixes #553 — remove console.log(err) from SDJWT.verify() catch block Fixes #554 — add temporal claim validation (exp/nbf) per RFC 7519 Changes: - Check exp claim (§4.1.4): return false if current time >= exp - Check nbf claim (§4.1.5): return false if current time < nbf - Remove console.log: empty catch block, consistent with JWT.verify() - Use string literals for claim keys to keep import type-only - Remove static temporal fixtures; tests use vi.useFakeTimers() to control system clock and build SD-JWT payloads dynamically Matches the areTimestampsValid() pattern in JWT.verify (#550, #552). Credentials without exp/nbf keep current behavior (no enforcement). Signed-off-by: Abhigyan Singh <[email protected]>
fix: remove channel refresh utxo path
Signed-off-by: Chris Guiney <[email protected]>
Updates the requirements on [thiserror](https://github.com/dtolnay/thiserror) to permit the latest version. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/commits/2.0.18) --- updated-dependencies: - dependency-name: thiserror dependency-version: 2.0.18 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]>
Signed-off-by: iammdzaidalam <[email protected]>