Skip to content

host_unique: add build.rs and IMIX_UNIQUE selector config#1875

Merged
hulto merged 5 commits intomainfrom
claude/add-host-uniqueness-build-t29FP
Feb 26, 2026
Merged

host_unique: add build.rs and IMIX_UNIQUE selector config#1875
hulto merged 5 commits intomainfrom
claude/add-host-uniqueness-build-t29FP

Conversation

@hulto
Copy link
Copy Markdown
Collaborator

@hulto hulto commented Feb 23, 2026

What type of PR is this?

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

Add a build.rs that reads IMIX_UNIQUE at compile time, validates it as
JSON, and bakes the value into the binary via cargo:rustc-env.

Add #[derive(Serialize, Deserialize)] to each selector struct (Env,
File, MacAddr, Registry) so their fields serve directly as the JSON arg
payload — no separate args types required.

Introduce SelectorSpec, a serde-tagged enum with "type"/"arg" keys that
maps each type string to the corresponding selector struct.  Adding a
new selector only requires deriving Serialize/Deserialize on the struct
and adding one variant; serde handles JSON marshaling automatically.

Expose from_imix_unique() which deserialises the baked-in IMIX_UNIQUE
value into an ordered Vec<Box<dyn HostIDSelector>>, returning None when
the variable was not set so callers can fall back to defaults().

https://claude.ai/code/session_01Nsm57Cbikgtzf2nfem9tFX
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 23, 2026

Summary

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Other ❓ Flaky 🍂 Duration ⏱️
2667    ±0 2667    ±0 0    ±0 0    ±0 0    ±0 0    ±0 1ms    ±0

Previous Results

Build 🏗️ Result 🧪 Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Other ❓ Flaky 🍂 Duration ⏱️
#1179 2667 2667 0 0 0 0 36.9s

Insights

Average Tests per Run Total Flaky Tests Total Failed Slowest Test (p95)
2667 0 0 5.5s

Slowest Tests

Test 📝 Results 📊 Duration (avg) ⏱️ Duration (p95) ⏱️
TestDockerExecutor_Build_ContextCancellation 1 5.5s 5.5s
eldritch-libsys: std::dll_inject_impl::tests::test_dll_inject_simple 1 5.2s 5.2s
TestInteractiveShell 1 5.0s 5.0s
TestOtherStreamOutput 1 5.0s 5.0s
imix::bin/imix: install::tests::test_install_execution 3 1.7s 5.0s
imix::bin/imix: install::tests::test_install_execution 3 1.7s 5.0s
imix::bin/imix: install::tests::test_install_execution 3 1.7s 5.0s
imix::bin/imix: tests::task_tests::test_task_streaming_error 3 3.0s 3.0s
imix::bin/imix: tests::task_tests::test_task_streaming_error 3 3.0s 3.0s
imix::bin/imix: tests::task_tests::test_task_streaming_error 3 3.0s 3.0s

🎉 No failed tests in this run. | 🍂 No flaky tests in this run.

Github Test Reporter by CTRF 💚

🔄 This comment has been updated

KCarretto
KCarretto previously approved these changes Feb 23, 2026
@hulto hulto added this pull request to the merge queue Feb 26, 2026
Merged via the queue into main with commit b5f4826 Feb 26, 2026
9 checks passed
@hulto hulto deleted the claude/add-host-uniqueness-build-t29FP branch February 26, 2026 04:06
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.

4 participants