1pub const AGENTD_CONFIG_FILE: &str = "agentd.toml";
4pub const LEGACY_AGENT_CONFIG_FILE: &str = "agent.toml";
5pub const STATE_DIR: &str = "state";
6pub const RUN_DIR: &str = "run";
7pub const LOG_DIR: &str = "log";
8pub const LOG_INPUTS_DIR: &str = "state/logs/file_inputs";
9pub const ACTIONS_DIR: &str = "actions";
10pub const AGENT_RUNTIME_FILE: &str = "agent_runtime.json";
11pub const EXECUTION_QUEUE_FILE: &str = "execution_queue.json";
12pub const WORKDIR_PLAN_FILE: &str = "plan.json";
13pub const WORKDIR_RUNTIME_FILE: &str = "runtime.json";
14pub const WORKDIR_STATE_FILE: &str = "state.json";
15pub const WORKDIR_RESULT_FILE: &str = "result.json";
16pub const REPORT_ENVELOPE_SUFFIX: &str = ".report.json";
17
18#[cfg(test)]
19mod tests {
20 use super::*;
21
22 #[test]
23 fn paths_are_non_empty_and_internally_consistent() {
24 for constant in [
25 AGENTD_CONFIG_FILE,
26 LEGACY_AGENT_CONFIG_FILE,
27 STATE_DIR,
28 RUN_DIR,
29 LOG_DIR,
30 LOG_INPUTS_DIR,
31 ACTIONS_DIR,
32 AGENT_RUNTIME_FILE,
33 EXECUTION_QUEUE_FILE,
34 WORKDIR_PLAN_FILE,
35 WORKDIR_RUNTIME_FILE,
36 WORKDIR_STATE_FILE,
37 WORKDIR_RESULT_FILE,
38 REPORT_ENVELOPE_SUFFIX,
39 ] {
40 assert!(!constant.is_empty(), "常量不应为空: {constant:?}");
41 }
42 assert_ne!(AGENTD_CONFIG_FILE, LEGACY_AGENT_CONFIG_FILE);
44 assert!(LOG_INPUTS_DIR.starts_with(STATE_DIR));
46 assert!(REPORT_ENVELOPE_SUFFIX.starts_with('.'));
47 }
48}