Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Organization: add PROCESS.md and ROADMAP.md #44

Merged
merged 15 commits into from
Oct 21, 2022
Merged

Conversation

laurentsenta
Copy link
Collaborator

@laurentsenta laurentsenta commented Sep 21, 2022

  • Who should review and be part of the discussion?
  • Add content from https://github.com/libp2p/interop/
  • Make the tables readable in text view
  • Drop authors and reviewers section, that's handled by git(hub)

@laurentsenta laurentsenta marked this pull request as draft September 21, 2022 15:52
@BigLep
Copy link
Contributor

BigLep commented Sep 24, 2022

Thanks for starting this @laurentsenta . A few things:

  1. What do we think it will take to merge this? Basically, when are you considering it done? Are you wanting to see all of these questions answered? Just some of them?
  2. An important part of this experience is when a test fails, is it pretty straightforward for someone to see who the culprit is? For the "big test", does someone get a dump of all the combinations that were run and which ones passed/fail so they can identify the failure source (see notes on that below)?
  3. I like the idea of having a dashboard that shows that, for example, the "Simple PING" "big test" here was the last run, here were all the implementations/versions that were run, and here was the result state (pass or fail) and execution time.
  4. Lets answer what happens in the "big tests". For example, if I have these libp2p nodes go-vA.0, go-vB.0, rust-vC.0, rust-vD.0, is there a pairwise set of asserts that are run like, something like this:
   go-vA.0 / go-vB.0
   go-vA.0 / rust-vC.0
   go-vA.0 / rust-vD.0
   go-vB.0 / rust-vC.0
   go-vB.0 / rust-vD.0
   rust-vC.0 / rust-vD.0

?

Basically, what I'm wondering in a "big test" whether we'll be able to see which combinations ran, did they success, how long they took, etc.
Also, ideally that does run on a cron job and someone can come to libp2p/test-plans and click into the latest results.

@laurentsenta
Copy link
Collaborator Author

@BigLep

  1. What do we think it will take to merge this? Basically, when are you considering it done? Are you wanting to see all of these questions answered? Just some of them?
  • Ideally I'd like to import info about the libp2p/interop repository to mark this as ready for review,
  • Then have the rest of the team review & share input,
  • To me, every question below When do we revisit this scenario to improve and gather feedback? needs an answer. We probably don't have enough information to answer the other questions.
  1. An important part of this experience is when a test fails, is it pretty straightforward for someone to see who the culprit is? For the "big test", does someone get a dump of all the combinations that were run and which ones passed/fail so they can identify the failure source (see notes on that below)?
  2. I like the idea of having a dashboard that shows that, for example, the "Simple PING" "big test" here was the last run, here were all the implementations/versions that were run, and here was the result state (pass or fail) and execution time.
  3. Lets answer what happens in the "big tests". For example, if I have these libp2p nodes go-vA.0, go-vB.0, rust-vC.0, rust-vD.0, is there a pairwise set of asserts that are run like, something like this:
   go-vA.0 / go-vB.0
   go-vA.0 / rust-vC.0
   go-vA.0 / rust-vD.0
   go-vB.0 / rust-vC.0
   go-vB.0 / rust-vD.0
   rust-vC.0 / rust-vD.0

?

Basically, what I'm wondering in a "big test" whether we'll be able to see which combinations ran, did they success, how long they took, etc. Also, ideally that does run on a cron job and someone can come to libp2p/test-plans and click into the latest results.

  • We worked the other way around: implementations run tests to prevent merging "broken" code, they have to run quickly enough and signal that something is broken at best (not much more feedback).
  • That approach makes a lot of sense and can be done easily for libp2p days 👍

@laurentsenta laurentsenta changed the title DESIGN.md: add process design doc Organization: add PROCESS.md and ROADMAP.md Sep 27, 2022
@galargh
Copy link
Contributor

galargh commented Oct 4, 2022

1:1 notes:

  • this (edit: the dashboard setup) is a high-priority task for libp2p day
  • I (@galargh) can help out with this task to free up @laurentsenta (as he will have other tasks that have to be completed for libp2p day)
  • we're going to meet up to discuss specific action items

Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

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

Thanks for starting this @laurentsenta and adding the ROADMAP. I think you're first "short term" milestone is a great place to get libp2p/test-plans and let libp2p to take over from there.

If there is contention on the DESIGN.md file, I think it would also work for it to be in its own PR.

ROADMAP.md Outdated Show resolved Hide resolved
ROADMAP.md Outdated Show resolved Hide resolved
ROADMAP.md Outdated
## EPICs

- There is a clear way to tell the state of libp2p's interoperability testing
- Create a page that tells me which implementations are supported by our interop infrastructure,
Copy link
Contributor

Choose a reason for hiding this comment

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

Will we also give insight into which versions are being run?

ROADMAP.md Outdated Show resolved Hide resolved
ROADMAP.md Outdated
- nodejs
- webtransport
- webrtc
- The full `libp2p/test-plans` test suite is used before releasing any new versions
Copy link
Contributor

Choose a reason for hiding this comment

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

Great - thanks!

Comment on lines +47 to +49
**Questions**

- When do we revisit this table to discuss priorities and add new tests?
Copy link
Contributor

Choose a reason for hiding this comment

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

Combine with your other "Questions" section below?

DESIGN.md Outdated Show resolved Hide resolved
DESIGN.md Outdated Show resolved Hide resolved
DESIGN.md Outdated Show resolved Hide resolved
DESIGN.md Outdated Show resolved Hide resolved
Copy link
Member

@mxinden mxinden left a comment

Choose a reason for hiding this comment

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

Thank you @laurentsenta for writing this up. I am sorry I haven't taken a look earlier.

ROADMAP.md Outdated Show resolved Hide resolved
ROADMAP.md Outdated

## EPICs

- There is a clear way to tell the state of libp2p's interoperability testing
Copy link
Member

Choose a reason for hiding this comment

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

Note, in case these items are ordered by priority:

In my eyes, for the libp2p team, covering essential features (item 2) is more important than a page to discover the results (item 1). In other words, I think we should first create the things before figuring out a way to display them.

mxinden added a commit to mxinden/rust-libp2p that referenced this pull request Oct 11, 2022
This is tracked on the [libp2p test-plans](libp2p/test-plans#44) see also
libp2p/test-plans#53.
p-shahi added a commit to libp2p/go-libp2p that referenced this pull request Oct 16, 2022
These belong in the [libp2p/test-plans roadmap](libp2p/test-plans#44)
@p-shahi
Copy link
Member

p-shahi commented Oct 20, 2022

Marking this as ready to review with the aim of merging it today. It has gone through review in #56 as well as earlier here.

The next steps before merging are:

  • address open comments

  • add links to GitHub issues

The immediate projects have been assigned completion targets but some are missing them. These will be addressed in a followup as they need more investigation.

@p-shahi p-shahi marked this pull request as ready for review October 20, 2022 16:48
ROADMAP.md Outdated Show resolved Hide resolved
@p-shahi p-shahi merged commit eb718a3 into master Oct 21, 2022
@p-shahi p-shahi deleted the feat/add-design-doc branch November 1, 2022 22:36
jxs pushed a commit to jxs/test-plans that referenced this pull request Nov 18, 2022
Co-authored-by: Steve Loeppky <[email protected]>
Co-authored-by: Prithvi Shahi <[email protected]>
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.

5 participants