Node Path Resolution
When declaring an upstream dependency, Rumour must locate the target Producer file on your filesystem.
Relative Pathing Rules
All explicit dependencies in Rumour are strictly resolved relative to the location of the .toml file making the declaration.
For example, consider the following workspace structure:
testing/
├── producer/
│ └── requests/
│ └── producer_node.toml
└── consumer/
└── requests/
└── consumer_node.toml
If consumer_node.toml wishes to depend on producer_node.toml, the relative path must traverse up two directories before entering the producer directory:
[dependencies]
# Correct: Navigates out of `requests/`, out of `consumer/`, into `producer/requests/`
"../../producer/requests/producer_node.toml" = "token"
Do not use absolute paths (e.g., /home/user/workspace/producer/...) as this destroys the portability of your test suite across different machines and CI/CD runners.
File Extension Requirements
Rumour recommends explicitly including the .toml file extension when declaring your paths. While the execution engine is capable of falling back to .toml if omitted, explicitly defining the full file name avoids namespace collisions and improves editor tooling support (like CMD+Click to go to definition).
Handling Broken Paths
If a consumer node declares a dependency on a file path that does not exist, Rumour will instantly detect the failure and abort the execution to prevent unpredictable test states.
Here is an example trace of a consumer node attempting to depend on a non-existent file (does_not_exist.toml):
# bad_path_consumer.toml
[dependencies]
"../../producer/requests/does_not_exist.toml" = "token"
[request]
method = "GET"
url = "{{base_url}}/anything"
rumour run dependency_example/consumer/requests/bad_path_consumer.toml -tv
✗ /home/bugsfounder/workspace/testing/dependency_example/consumer/requests/bad_path_consumer.toml → FAIL (0 Pass, 1 Fail, 0 Skip)
╭──────────────────────────────────────────────────────────────────────────╮
│ RUMOUR EXECUTION REPORT │
├──────────────────────────────────────────────────────────────────────────┤
│ Total Requests: 1 │
│ Successful: 0 │
│ Failed: 1 │
│ Skipped: 0 │
│ Success Rate: 0.0% │
│ Total Time: 1509ms │
╰──────────────────────────────────────────────────────────────────────────╯
✗ Failed Requests:
- /home/bugsfounder/workspace/testing/dependency_example/consumer/requests/bad_path_consumer.toml:
Reason: Resource not found: Producer ../../producer/requests/does_not_exist.toml missing for dependency
Actionable Recommendations:
→ Run with -H (Self-Healing) to attempt automatic recovery of failing nodes.
If you encounter a Resource not found reason code, always double-check your directory traversal logic (the number of ../ segments).