Architecture session: queue topology, log schema, REC templates, config refinements
- Rename env.toml to env_{dev,qa,prod}.toml for self-documentation; enforce via gitignore
- Config loader selects env file via BEDS_ENV environment variable, defaults to dev
- Set wbid to "ms" in beds.toml
- Define queue topology: rel/rec .read .write .obj, log, adm, mig
- Define log event schema: compound event_id (node.env.guid), parent_id, depth,
level/level_val, resource, service, env, node, file, method, line, trace, message, created
- Add example_rec.toml — canonical self-documenting REC template for future developers
- Add mst_logger_rec.toml — logger collection template derived from log event schema
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -10,9 +10,12 @@ pub enum ConfigError {
|
||||
}
|
||||
|
||||
pub fn load() -> Result<BedsConfig, ConfigError> {
|
||||
let env = std::env::var("BEDS_ENV").unwrap_or_else(|_| "dev".to_string());
|
||||
let env_file = format!("config/env_{}.toml", env);
|
||||
|
||||
let cfg = Config::builder()
|
||||
.add_source(File::new("config/beds.toml", FileFormat::Toml))
|
||||
.add_source(File::new("config/env.toml", FileFormat::Toml).required(false))
|
||||
.add_source(File::new(&env_file, FileFormat::Toml).required(false))
|
||||
.build()?;
|
||||
|
||||
Ok(cfg.try_deserialize()?)
|
||||
|
||||
Reference in New Issue
Block a user