Skip to content

feat(ir): add typed helper for DockerInstaller@0#1015

Merged
jamesadevine merged 1 commit into
mainfrom
feat/ir-docker-installer-typed-helper-e2115ba29f9e6bd5
Jun 15, 2026
Merged

feat(ir): add typed helper for DockerInstaller@0#1015
jamesadevine merged 1 commit into
mainfrom
feat/ir-docker-installer-typed-helper-e2115ba29f9e6bd5

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Summary

Adds a typed factory function for DockerInstaller@0 to the ado-aw IR and eliminates two hand-crafted TaskStep::new(...) call sites in the compiler.

Motivation

DockerInstaller@0 is emitted in two places in src/compile/agentic_pipeline.rs (the Agent job and the Detection job) using raw TaskStep::new("DockerInstaller@0", "Install Docker").with_input("dockerVersion", "26.1.4"). This PR introduces a well-typed helper that makes the required/optional input boundary explicit and removes the duplication.

Changes

  • src/compile/ir/tasks.rs: docker_installer_step(docker_version) factory function with full doc comment and three unit tests
  • src/compile/agentic_pipeline.rs: both TaskStep::new("DockerInstaller@0", ...) call sites replaced with docker_installer_step("26.1.4"); unused TaskStep import removed

ADO Task Reference

Validation

  • cargo build --all-targets
  • cargo test — 1856 unit tests + all integration tests pass
  • cargo clippy --all-targets --all-features --workspace -- -D warnings

Created by the ado-task-ir-contributor workflow.

Warning

Firewall blocked 2 domains

The following domains were blocked by the firewall during workflow execution:

  • spsprodeus21.vssps.visualstudio.com
  • spsprodweu4.vssps.visualstudio.com

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "spsprodeus21.vssps.visualstudio.com"
    - "spsprodweu4.vssps.visualstudio.com"

See Network Configuration for more information.

Generated by ADO Task IR Contributor · 651.6 AIC · ⌖ 18.7 AIC · ⊞ 35.3K ·

Add `docker_installer_step(docker_version)` factory function to
`src/compile/ir/tasks.rs` and replace the two hand-crafted
`TaskStep::new("DockerInstaller@0", ...)` call sites in
`src/compile/agentic_pipeline.rs` with the new typed helper.

The `dockerVersion` input is required by the task; the optional
`releaseType` input (default: `stable`) remains available via
`.with_input()`. Three unit tests cover the required-input path,
the optional-input path, and version string flexibility.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jamesadevine jamesadevine marked this pull request as ready for review June 15, 2026 06:40
@jamesadevine jamesadevine merged commit ca64336 into main Jun 15, 2026
@jamesadevine jamesadevine deleted the feat/ir-docker-installer-typed-helper-e2115ba29f9e6bd5 branch June 15, 2026 06:40
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