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

A thin file-chunking app built on top of Kitsune2 can be operated by Wind Tunnel #137

Open
6 tasks
Tracked by #131
ThetaSinner opened this issue Dec 11, 2024 · 0 comments
Open
6 tasks
Tracked by #131
Assignees

Comments

@ThetaSinner
Copy link
Member

ThetaSinner commented Dec 11, 2024

We need something simple that we can use for testing Kitsune2 in Wind Tunnel.

This doesn't have to be fancy but does need data persistence otherwise it won't be possible to restart it.
We don't need a proper op store in SQLite, we could just dump and restore the op data and otherwise work with a memory op store.

Wind Tunnel would like to run this as a library so it can be embedded in scenario binaries.

This could go in its own repo as a sample of Kitsune2. (@neonphog thinks it'd be fine in the kitsune2 monorepo).

Possible format for tagged events to be emitted:

pub enum Event {
    ChunkRecv: {
        filename: String,
        chunk_index: u32,
        chunk_total: u32,
        is_file_complete: bool,
    }
}

AC:

  • No lair dependency. Agent private key can be generated and stored in plain text on disk.
  • Single space, hashed off of user input or the wind tunnel run-id.
  • Simple persistence of ops. That could be the store/load suggestion above, or an op-store implementation built to just use the file-system directly.
  • Thin wrapper (src/bin) for testing during development or showcasing. All the functionality is a rust lib.
  • The rust lib emits tagged events that can easily be translated into metrics for wind tunnel. (see above)
  • The rust lib ingests new ops via method call. The binary can watch a "publish" directory, or whatever other strategy is easiest to implement.
@github-project-automation github-project-automation bot moved this to Backlog in Holochain Dec 11, 2024
@ThetaSinner ThetaSinner moved this from Backlog to Ready for refinement in Holochain Dec 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Ready for refinement
Development

No branches or pull requests

2 participants