Skip to content

Direct tests for ObjectDiffusion mini protocol#5267

Merged
tbagrel1 merged 2 commits intoperas-diffusionfrom
peras-diffusion-direct-tests
Mar 10, 2026
Merged

Direct tests for ObjectDiffusion mini protocol#5267
tbagrel1 merged 2 commits intoperas-diffusionfrom
peras-diffusion-direct-tests

Conversation

@agustinmista
Copy link
Copy Markdown
Contributor

@agustinmista agustinmista commented Dec 11, 2025

Description

This PR implements direct-style tests for ObjectDiffusion, inspired by the corresponding implementation from TxSubmission2.

NOTE: this is currently failing because the protocol doesn't have a way to inform the outbound side that it's caught up, so recvMsgRequestObjectIds can't be defined in a terminating way.

This will be addressed by: tweag/cardano-peras#144

Checklist

Quality

  • Commit sequence makes sense and have useful messages, see ref.
  • New tests are added and existing tests are updated.
  • Self-reviewed the PR.

Maintenance

  • Linked an issue or added the PR to the current sprint of ouroboros-network project.
  • Added labels.
  • Updated changelog files.
  • The documentation has been properly updated, see ref.

@agustinmista agustinmista self-assigned this Dec 11, 2025
@github-project-automation github-project-automation bot moved this to In Progress in Ouroboros Network Dec 11, 2025
@agustinmista agustinmista changed the title Direct tests for ObjectDiffusion protocol Direct tests for ObjectDiffusion mini protocol Dec 11, 2025
@agustinmista agustinmista force-pushed the peras-diffusion-direct-tests branch from 0e60a22 to 00954ec Compare December 12, 2025 14:33
@agustinmista agustinmista added the WIP Do not merge, work in progress. label Dec 12, 2025
Comment on lines +185 to +192
(SingBlocking, []) ->
-- NOTE: the current version of this protocol doesn't have a
-- way to inform the inbound side that it's caught up. This
-- means that there's no propert inhabitant for this type.
--
-- This will be solved by:
-- https://github.com/tweag/cardano-peras/issues/144
error "We can't return anything meaningful here, so let's crash"
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be fixed.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've found a solution using a specific Exception as a sentinel bottom-type value in ad03862.
So I'm merging this PR into #5202, since #5202 hasn't been merged yet :)

@tbagrel1
Copy link
Copy Markdown
Contributor

Blocked on tweag/cardano-peras#187

@tbagrel1 tbagrel1 force-pushed the peras-diffusion-direct-tests branch from adf01c7 to ad03862 Compare March 10, 2026 13:28
@tbagrel1 tbagrel1 marked this pull request as ready for review March 10, 2026 13:30
@tbagrel1 tbagrel1 requested a review from a team as a code owner March 10, 2026 13:30
@tbagrel1 tbagrel1 merged commit c49a814 into peras-diffusion Mar 10, 2026
5 checks passed
@tbagrel1 tbagrel1 deleted the peras-diffusion-direct-tests branch March 10, 2026 13:30
@github-project-automation github-project-automation bot moved this from In Progress to Done in Ouroboros Network Mar 10, 2026
@qnikst qnikst linked an issue Mar 24, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

peras WIP Do not merge, work in progress.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Implement basic object diffusion protocol

2 participants