Skip to content

Drop docker_cmd for graymatter; rely on JAM_FUZZ_* env vars#35

Merged
tomusdrw merged 1 commit intomainfrom
graymatter-no-cmd
May 6, 2026
Merged

Drop docker_cmd for graymatter; rely on JAM_FUZZ_* env vars#35
tomusdrw merged 1 commit intomainfrom
graymatter-no-cmd

Conversation

@tomusdrw
Copy link
Copy Markdown
Member

@tomusdrw tomusdrw commented May 6, 2026

Summary

  • Graymatter target fails when started with the legacy `fuzz-m1-target --stay-open --listen {TARGET_SOCK}` args, so launch it with no cmd args and let it pick up `JAM_FUZZ`, `JAM_FUZZ_SOCK_PATH`, etc. from the standard target packaging env vars added in Pass standard target packaging env vars to targets #33.
  • Make `docker_cmd` optional (default `""`) in `demo-source.yml`; `tests/common.ts` no longer requires `TARGET_CMD` (`buildCmdArgs("")` already collapses to no args).
  • Other targets are unchanged for now — only graymatter is migrated in this PR.

Test plan

  • Trigger `Fuzz: graymatter` via workflow_dispatch and confirm the demo job starts the target, the socket appears, and fuzz-m1-source completes.
  • Trigger one untouched fuzz workflow (e.g. `Fuzz: jampy`) to confirm `docker_cmd`-using callers still work after the input was made optional.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Made docker command configuration optional in workflows and tests, allowing targets to read socket path from environment variables when no explicit command is provided.

The graymatter target fails when started with the legacy fuzz-m1-target
cmd-line args. It now reads JAM_FUZZ, JAM_FUZZ_SOCK_PATH, etc. from the
standard target packaging env vars (added in #33), so we can launch it
with no cmd args at all.

- demo-source.yml: docker_cmd is now optional (default "").
- graymatter-fuzz.yml: drop docker_cmd entirely.
- tests/common.ts: TARGET_CMD no longer required; buildCmdArgs("")
  already collapses to no args.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 6, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 39034854-a24a-42eb-ba23-44b32eee4161

📥 Commits

Reviewing files that changed from the base of the PR and between d235527 and fa88c8e.

📒 Files selected for processing (3)
  • .github/workflows/demo-source.yml
  • .github/workflows/graymatter-fuzz.yml
  • tests/common.ts
💤 Files with no reviewable changes (1)
  • .github/workflows/graymatter-fuzz.yml

📝 Walkthrough

Walkthrough

The changes make the target command optional across workflow and test configuration. The docker_cmd workflow input is now optional with a default empty string, one workflow stops passing this input, and test validation no longer requires the TARGET_CMD environment variable.

Changes

Optional Target Command Configuration

Layer / File(s) Summary
Workflow Input Definition
.github/workflows/demo-source.yml
docker_cmd input changed from required to optional with empty string default; description expanded to note env-var fallback behavior.
Workflow Usage
.github/workflows/graymatter-fuzz.yml
Removed docker_cmd parameter from the demo job's with: block, allowing the input to default.
Test Configuration
tests/common.ts
getTargetConfig() validation now requires only TARGET_NAME and TARGET_IMAGE; TARGET_CMD is read as TARGET_CMD || "" with no error if missing.

Possibly Related PRs

  • FluffyLabs/jam-testing#9: Both PRs modify how fuzz workflows and test helpers handle the target command, with this PR making docker_cmd/TARGET_CMD optional building on earlier workflow setup.
  • FluffyLabs/jam-testing#28: Both PRs modify the same docker_cmd workflow input and its invocations across workflows.
  • FluffyLabs/jam-testing#17: Both PRs touch the same docker_cmd workflow input in graymatter-fuzz and related workflows with inverse operations.

Poem

🐰 A command now optional, defaults to the air,
Workflows grow more flexible, with less to declare,
Tests accept the silence, when nothing is passed—
Freedom from requirements, at long last! ✨


🎯 2 (Simple) | ⏱️ ~12 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and clearly summarizes the main change: making docker_cmd optional and allowing Graymatter to rely on environment variables instead of command-line arguments.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch graymatter-no-cmd

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

@tomusdrw tomusdrw merged commit c8427ab into main May 6, 2026
6 of 13 checks passed
@tomusdrw tomusdrw deleted the graymatter-no-cmd branch May 6, 2026 12:53
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.

1 participant