rhi

Coordinated trade for connected markets
git clone https://radroots.dev/git/rhi.git
Log | Files | Refs | README | LICENSE

commit 5281709783b28fd77eafb53e3ba8c61e90b84705
parent 182e686b7d17b562d4da6806e4b128e6f23f840b
Author: triesap <tyson@radroots.org>
Date:   Wed,  8 Apr 2026 01:22:48 +0000

config: cover repo local path defaults

- add a repo-local path contract test for the canonical rhi runtime roots
- assert config logs identity and workflow state paths under the explicit repo-local base
- keep the worker profile matrix aligned with the interactive_user and service_host coverage
- give the outer runtime-path verification lane a direct rhi repo_local proof point

Diffstat:
Msrc/config.rs | 25+++++++++++++++++++++++++
1 file changed, 25 insertions(+), 0 deletions(-)

diff --git a/src/config.rs b/src/config.rs @@ -381,6 +381,31 @@ mod tests { } #[test] + fn runtime_paths_follow_repo_local_contract() { + let repo_local_root = PathBuf::from("/repo/.local/radroots/dev/rhi"); + let paths = resolve_runtime_paths_with_resolver( + &linux_resolver(), + RadrootsPathProfile::RepoLocal, + Some(repo_local_root.as_path()), + ) + .expect("repo_local paths should resolve"); + + assert_eq!( + paths.config_path, + repo_local_root.join("config/workers/rhi/config.toml") + ); + assert_eq!(paths.logs_dir, repo_local_root.join("logs/workers/rhi")); + assert_eq!( + paths.identity_path, + repo_local_root.join("secrets/workers/rhi/identity.secret.json") + ); + assert_eq!( + paths.subscriber_state_path, + repo_local_root.join("data/workers/rhi/trade-listing/state.json") + ); + } + + #[test] fn load_settings_materializes_profile_defaults_when_paths_are_omitted() { let temp = tempfile::tempdir().expect("tempdir"); let config_path = temp.path().join("config.toml");