Skip to content

feat: support decker devnet artifacts#562

Open
julio4 wants to merge 1 commit into
mainfrom
feat/decker-devnet-detection
Open

feat: support decker devnet artifacts#562
julio4 wants to merge 1 commit into
mainfrom
feat/decker-devnet-detection

Conversation

@julio4

@julio4 julio4 commented Jul 23, 2026

Copy link
Copy Markdown
Member

Extends --builder.playground to recognize decker runtime/artifacts/ layout.

For now keeping builder-playground support as legacy option but can be removed later.

Copilot AI review requested due to automatic review settings July 23, 2026 07:43

Copilot AI left a comment

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.

Pull request overview

Extends --builder.playground devnet auto-configuration to support decker’s artifacts layout in addition to the legacy builder-playground layout, selecting configuration based on detected directory markers.

Changes:

  • Add layout detection in playground auto-config, supporting both legacy (docker-compose.yaml parsing) and decker (fixed ports/peer-id) layouts.
  • Change --builder.playground’s bare-flag behavior to auto-resolve to either ./.decker/runtime/artifacts (if present) or the legacy default directory.
  • Add unit tests covering layout detection and decker vs legacy option derivation.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
crates/op-rbuilder/src/args/playground.rs Detect decker vs legacy artifact layouts; apply fixed decker constants; add tests.
crates/op-rbuilder/src/args/op.rs Implement bare --builder.playground auto-directory resolution with decker-first behavior.
crates/op-rbuilder/src/args/mod.rs Update CLI docs to describe the new auto-resolution and layout detection behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +152 to +158
fn resolve_playground_auto_dir_from(cwd: &Path) -> Result<PathBuf> {
let decker_default = cwd.join(DECKER_DEFAULT_DIR);
if decker_default.exists() {
return Ok(decker_default);
}
expand_shell(LEGACY_DEFAULT_DIR)
}
Comment on lines 123 to 128
if !path.exists() {
return Err(eyre!(
"Playground data directory {} does not exist",
path.display()
));
}
@@ -94,7 +97,7 @@ pub struct OpRbuilderArgs {
#[arg(

@akundaz akundaz left a comment

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.

lgtm, but what is decker?

the ai also seems to have caught a couple of typos

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.

3 participants