fix(tests): add missing inputs: None to JobCreateInput in integration tests #49

Closed
mik-tf wants to merge 1 commit from development_mik_1 into development
Owner

First repo in the home#188 CI sweep — proving the engineering discipline.

Why CI is red

SDK schema added a required inputs: Option<HashMap<String, Value>> field to JobCreateInput. The SDK's own factory (crates/hero_proc_sdk/src/factory.rs:879) was updated; integration tests were not. Result: cargo build --tests fails with 34× E0063 missing field 'inputs' errors. CI has been red since.

Fix

Add inputs: None to all 34 JobCreateInput { ... } initializers across 4 files:

  • tests/integration/tests/jobs.rs (22)
  • tests/integration/tests/action_dependencies.rs (8)
  • tests/integration/tests/service_management.rs (1)
  • tests/integration/tests/hero_script.rs (3)

Used explicit inputs: None (not ..Default::default()) to match the SDK factory's convention and preserve the "future CI catches missing fields" behaviour we actually want.

Discipline note (per home#188 §Engineering discipline)

This is a real bug fix, not a coping strategy:

  • Diagnosed root cause (SDK field added without updating test callers)
  • Fixed every site
  • Did NOT silently #[ignore] the failing tests
  • Did NOT remove the field from the SDK to match tests

Local verification

make check  ✓
make test   ✓
cargo check --workspace --all-targets  ✓

Out of scope (intentional — separate follow-up PR)

  • cargo fmt --check has pre-existing format drift in crates/hero_proc/src/cli/args.rs unrelated to this fix. The current build.yaml doesn't enforce fmt-check, so it doesn't block. Will normalize as a style: cargo fmt prep commit when canonicalizing the workflow shape (follow-up PR per home#188).
  • make lint (cargo clippy) is currently continue-on-error: true in build.yaml — coping pattern. Removing the continue-on-error is part of the workflow canonicalization PR, not this one.

Tracker

home#188 — Green CI on every Hero distribution repo. This is repo 1 of 20.

Signed-off-by: mik-tf

First repo in the [home#188](https://forge.ourworld.tf/lhumina_code/home/issues/188) CI sweep — proving the engineering discipline. ## Why CI is red SDK schema added a required `inputs: Option<HashMap<String, Value>>` field to `JobCreateInput`. The SDK's own factory ([crates/hero_proc_sdk/src/factory.rs:879](https://forge.ourworld.tf/lhumina_code/hero_proc/src/branch/development/crates/hero_proc_sdk/src/factory.rs)) was updated; integration tests were not. Result: `cargo build --tests` fails with 34× `E0063 missing field 'inputs'` errors. CI has been red since. ## Fix Add `inputs: None` to all 34 `JobCreateInput { ... }` initializers across 4 files: - `tests/integration/tests/jobs.rs` (22) - `tests/integration/tests/action_dependencies.rs` (8) - `tests/integration/tests/service_management.rs` (1) - `tests/integration/tests/hero_script.rs` (3) Used explicit `inputs: None` (not `..Default::default()`) to match the SDK factory's convention and preserve the "future CI catches missing fields" behaviour we actually want. ## Discipline note (per home#188 §Engineering discipline) This is a real bug fix, not a coping strategy: - ✅ Diagnosed root cause (SDK field added without updating test callers) - ✅ Fixed every site - ❌ Did NOT silently `#[ignore]` the failing tests - ❌ Did NOT remove the field from the SDK to match tests ## Local verification ``` make check ✓ make test ✓ cargo check --workspace --all-targets ✓ ``` ## Out of scope (intentional — separate follow-up PR) - `cargo fmt --check` has pre-existing format drift in `crates/hero_proc/src/cli/args.rs` unrelated to this fix. The current `build.yaml` doesn't enforce fmt-check, so it doesn't block. Will normalize as a `style: cargo fmt` prep commit when canonicalizing the workflow shape (follow-up PR per [home#188](https://forge.ourworld.tf/lhumina_code/home/issues/188)). - `make lint` (`cargo clippy`) is currently `continue-on-error: true` in `build.yaml` — coping pattern. Removing the `continue-on-error` is part of the workflow canonicalization PR, not this one. ## Tracker [home#188](https://forge.ourworld.tf/lhumina_code/home/issues/188) — Green CI on every Hero distribution repo. This is repo 1 of 20. Signed-off-by: mik-tf
fix(tests): add missing inputs: None to JobCreateInput in integration tests
All checks were successful
Tests / test (pull_request) Successful in 3m52s
Build and Test / build (pull_request) Successful in 4m57s
6d027359de
Integration tests in tests/integration/ were calling JobCreateInput
without the `inputs` field, which was added to the SDK schema but the
test callers were never updated.  Result: `cargo build --tests` failed
with E0063 missing-field errors and CI has been red since the SDK
change.

Fixed all 34 occurrences across 4 files:
  - tests/integration/tests/jobs.rs               (22)
  - tests/integration/tests/action_dependencies.rs (8)
  - tests/integration/tests/service_management.rs  (1)
  - tests/integration/tests/hero_script.rs         (3)

Set `inputs: None` to match the SDK's own factory.rs convention
(crates/hero_proc_sdk/src/factory.rs:879).  Explicit None — preserves
the future-CI-catches-missing-field behaviour we want.

Local verification:
  make check  ✓
  make test   ✓
  cargo check --workspace --all-targets  ✓

Note: cargo fmt --check has pre-existing format drift in
crates/hero_proc/src/cli/args.rs unrelated to this fix; existing CI
doesn't enforce fmt-check so it doesn't block.  Will normalise in a
separate prep commit when canonicalising the workflow shape (follow-up
PR per home#188 sweep).

First port in the home#188 CI sweep.  Demonstrates the engineering
discipline: real fix, not paper-over.

Tracker: lhumina_code/home#188

Signed-off-by: mik-tf
mik-tf closed this pull request 2026-04-25 23:44:24 +00:00
Author
Owner

Squash-merged to development as 9b13401. Branch deleted.

Squash-merged to `development` as [`9b13401`](https://forge.ourworld.tf/lhumina_code/hero_proc/commit/9b13401). Branch deleted.
All checks were successful
Tests / test (pull_request) Successful in 3m52s
Build and Test / build (pull_request) Successful in 4m57s

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_proc!49
No description provided.