Skip to content

Add vinwolf client workflows#20

Merged
tomusdrw merged 6 commits intoFluffyLabs:mainfrom
bloppan:add-vinwolf
Mar 20, 2026
Merged

Add vinwolf client workflows#20
tomusdrw merged 6 commits intoFluffyLabs:mainfrom
bloppan:add-vinwolf

Conversation

@bloppan
Copy link
Copy Markdown
Contributor

@bloppan bloppan commented Mar 17, 2026

Summary by CodeRabbit

  • Chores
    • Added scheduled and on-demand CI workflows to run performance and fuzz testing for the vinwolf target, plus a reusable demo job for on-demand fuzz runs.
  • Documentation
    • Updated README status table to list vinwolf under Performance and Fuzz testing.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 17, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds two new GitHub Actions workflows for the vinwolf target (fuzz and scheduled performance runs) that reuse existing reusable workflows and update README to add a vinwolf row in the Status table. Workflows pass docker image and --fuzz {TARGET_SOCK} as the container command and set minimal permissions.

Changes

Cohort / File(s) Summary
Workflows
.github/workflows/vinwolf-fuzz.yml, .github/workflows/vinwolf-performance.yml
Two new CI workflows: vinwolf-fuzz.yml (triggers: workflow_dispatch, pull_request limited to the file; sets permissions: contents=read, issues=write) and vinwolf-performance.yml (triggers: cron and workflow_dispatch). Both reuse existing reusable workflows and pass inputs: target_name=vinwolf, docker_image=ghcr.io/bloppan/vinwolf:latest, docker_cmd='--fuzz {TARGET_SOCK}' (no ./vinwolf), plus readiness pattern and mention where applicable.
Documentation
README.md
Inserted a vinwolf row in the Status table (Performance and Fuzz columns).

Sequence Diagram(s)

sequenceDiagram
    participant Trigger as Trigger (cron / PR / manual)
    participant GH as GitHub Actions
    participant Reusable as Reusable Workflow
    participant Docker as Docker Image
    participant Target as vinwolf Target

    Trigger->>GH: start workflow
    GH->>Reusable: invoke reusable workflow with inputs
    Reusable->>Docker: start container with `--fuzz {TARGET_SOCK}`
    Docker->>Target: run vinwolf process
    Target-->>Reusable: emit readiness ("listening on")
    Reusable-->>GH: report run status
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 I hopped into CI with a twirl,
Vinwolf wakes, the fuzzer swirls,
Cron hums softly, PRs give cheer,
Containers purr, tests appear,
I twiddle whiskers — progress near!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Add vinwolf client workflows' directly and clearly describes the main changes, which are two new GitHub Actions workflow files for vinwolf and an update to the README documenting the addition.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/vinwolf-performance.yml:
- Line 16: The workflow is referencing a private Docker image via the
docker_image key value 'ghcr.io/bloppan/vinwolf:latest' which will produce 401
Unauthorized at runtime; either replace that value in vinwolf-performance.yml
(and the same reference in vinwolf-fuzz.yml) with a publicly accessible image
tag, or add steps to authenticate to GHCR (e.g., use actions/checkout +
docker/login-action with a PAT or GITHUB_TOKEN) before pulling so the runner can
pull the private image; update the docker_image reference or add authentication
steps consistently across both workflows.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 029ca77d-bb53-4502-a892-118b69d33d18

📥 Commits

Reviewing files that changed from the base of the PR and between a58e8d3 and ccccaa9.

📒 Files selected for processing (4)
  • .github/workflows/vinwolf-fuzz.yml
  • .github/workflows/vinwolf-performance.yml
  • README.md
  • teams/vinwolf/.gitkeep

Comment thread .github/workflows/vinwolf-performance.yml
@tomusdrw
Copy link
Copy Markdown
Member

@bloppan can you take a look at this failure: https://github.com/FluffyLabs/jam-testing/actions/runs/23221230115/job/67522727307?pr=20 I think there is some misconfiguration with CLI args.

@bloppan
Copy link
Copy Markdown
Contributor Author

bloppan commented Mar 18, 2026

Hey @tomusdrw , pushed a fix — the ./vinwolf prefix in docker_cmd was being passed as an argument to the entrypoint, causing Error: Unknown argument './vinwolf', so I removed it.

@tomusdrw
Copy link
Copy Markdown
Member

Can you also please update to latest main? The workflow file template now needs token scope explicit permissions defined.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
.github/workflows/vinwolf-fuzz.yml (1)

5-7: Include the reusable workflow file in the PR path filter.

Right now this workflow won’t run when ./.github/workflows/demo-source.yml changes, even though this file depends on it. That can hide vinwolf-specific breakages until later.

Suggested diff
 on:
   workflow_dispatch:
   pull_request:
     paths:
       - '.github/workflows/vinwolf-fuzz.yml'
+      - '.github/workflows/demo-source.yml'
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/vinwolf-fuzz.yml around lines 5 - 7, Update the
pull_request path filter in vinwolf-fuzz.yml so changes to the reusable workflow
are included: in the pull_request.paths array (in vinwolf-fuzz.yml) add the
reusable workflow file(s) used by this workflow (e.g.
'.github/workflows/demo-source.yml' or whichever reusable workflow the
vinwolf-fuzz workflow calls) so edits to those files will trigger the workflow
as well.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/workflows/vinwolf-fuzz.yml:
- Around line 3-17: Add an explicit top-level permissions block to the workflow
to replace relying on default token scopes: update the
.github/workflows/vinwolf-fuzz.yml file (the workflow that defines the "demo"
job which uses ./.github/workflows/demo-source.yml) and add a top-level
permissions mapping matching your latest main template (include the exact
permission keys/scopes required by the demo-source template, e.g., repository
contents, pull-requests, workflows, or any other scopes your main template
specifies) so the workflow runs with the explicit token privileges expected by
the template.

---

Nitpick comments:
In @.github/workflows/vinwolf-fuzz.yml:
- Around line 5-7: Update the pull_request path filter in vinwolf-fuzz.yml so
changes to the reusable workflow are included: in the pull_request.paths array
(in vinwolf-fuzz.yml) add the reusable workflow file(s) used by this workflow
(e.g. '.github/workflows/demo-source.yml' or whichever reusable workflow the
vinwolf-fuzz workflow calls) so edits to those files will trigger the workflow
as well.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 407f760a-db30-4662-b31c-6b069594730d

📥 Commits

Reviewing files that changed from the base of the PR and between b6a2b00 and 19f56b6.

📒 Files selected for processing (4)
  • .github/workflows/vinwolf-fuzz.yml
  • .github/workflows/vinwolf-performance.yml
  • README.md
  • teams/vinwolf/.gitkeep
🚧 Files skipped from review as they are similar to previous changes (2)
  • .github/workflows/vinwolf-performance.yml
  • README.md

Comment thread .github/workflows/vinwolf-fuzz.yml
Comment thread .github/workflows/vinwolf-performance.yml Outdated
@tomusdrw
Copy link
Copy Markdown
Member

@bloppan can you look at the minifuzz issue? Failure here indicates some conformance mismatch (unless it's spurious, which I doubt).

@bloppan
Copy link
Copy Markdown
Contributor Author

bloppan commented Mar 19, 2026

@tomusdrw I found a bug on my impl, now I pass all minifuzz tests. I've updated the docker image.

@tomusdrw tomusdrw merged commit 1bd1c22 into FluffyLabs:main Mar 20, 2026
32 checks passed
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.

2 participants