Initial commit -- did OMO do a good job?
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
Task 14 evidence: NewsConfig TOML loader with SIGHUP hot-reload
|
||||
Generated: 2026-09-01
|
||||
|
||||
=== Files changed ===
|
||||
- /home/connor/docs/projects/news/crates/news-server/src/config.rs (new)
|
||||
- /home/connor/docs/projects/news/crates/news-server/src/lib.rs (+pub mod config;)
|
||||
- /home/connor/docs/projects/news/crates/news-server/src/error.rs (+Io, +Toml variants)
|
||||
- /home/connor/docs/projects/news/crates/news-server/Cargo.toml (tokio promoted, +toml/tracing deps, +tracing-test/tempfile dev-deps)
|
||||
- /home/connor/docs/projects/news/Cargo.toml (+toml/tracing/tracing-test/tempfile workspace deps)
|
||||
|
||||
=== config.rs pure LOC ===
|
||||
135 (ceiling: 250)
|
||||
|
||||
=== Verification 1: cargo test -p news-server ===
|
||||
$ cargo test -p news-server
|
||||
(...compiling...)
|
||||
running 16 tests
|
||||
test config::tests::happy_path_loads_notify_opinions_true ... ok
|
||||
test config::tests::bad_reload_keeps_last_good_config ... ok
|
||||
test gate::tests::happy_path_notifies_when_relevance_and_budget_allow ... ok
|
||||
test gate::tests::quiet_hours_suppresses_high_relevance ... ok
|
||||
test gate::tests::already_notified_suppresses_when_delta_not_reached ... ok
|
||||
test gate::tests::below_band_suppresses_below_threshold ... ok
|
||||
test api::feedback::tests::malformed_kind_returns_422 ... ok
|
||||
test api::feedback::tests::unknown_cluster_id_returns_400 ... ok
|
||||
test gate::tests::material_update_notifies_again_when_delta_reached ... ok
|
||||
test gate::tests::digest_band_returns_digest ... ok
|
||||
test scoring::tests::trained_model_persists_and_reloads_with_same_total_samples ... ok
|
||||
test gate::tests::bypass_ceiling_is_independent_of_normal_budget ... ok
|
||||
test scoring::tests::matching_item_scores_higher_than_non_matching ... ok
|
||||
test api::feedback::tests::valid_feedback_records_row_and_trains_model ... ok
|
||||
test scoring::tests::importance_scorer_matches_direct_formula ... ok
|
||||
test scoring::tests::blocklist_veto_returns_neg_infinity ... ok
|
||||
|
||||
test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
|
||||
|
||||
=== QA scenario: happy path (notify_opinions = true) ===
|
||||
$ cargo test -p news-server -- --nocapture config::tests::happy_path_loads_notify_opinions_true
|
||||
running 1 test
|
||||
test config::tests::happy_path_loads_notify_opinions_true ... ok
|
||||
|
||||
Result: loaded config has notify.notify_opinions == true, 2 sources, 3 interests.
|
||||
|
||||
=== QA scenario: bad reload keeps last good config ===
|
||||
$ cargo test -p news-server -- --nocapture config::tests::bad_reload_keeps_last_good_config
|
||||
running 2 tests
|
||||
test config::tests::happy_path_loads_notify_opinions_true ... ok
|
||||
2026-09-01T17:49:46.159239Z ERROR bad_reload_keeps_last_good_config: news_server::config::tests: config reload failed: toml parse error: TOML parse error at line 1, column 8
|
||||
|
|
||||
1 | [notify
|
||||
| ^
|
||||
invalid table header
|
||||
expected `.`, `]`
|
||||
|
||||
test config::tests::bad_reload_keeps_last_good_config ... ok
|
||||
|
||||
Result: in-memory config unchanged after invalid TOML reload; parse error captured in tracing logs.
|
||||
|
||||
=== Verification 2: cargo fmt --all --check ===
|
||||
$ cargo fmt --all --check
|
||||
(no output)
|
||||
Exit 0.
|
||||
|
||||
=== Verification 3: cargo clippy --workspace --all-targets -- -D warnings ===
|
||||
$ cargo clippy --workspace --all-targets -- -D warnings
|
||||
Checking news-server v0.1.0 (/home/connor/docs/projects/news/crates/news-server)
|
||||
Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.62s
|
||||
Exit 0.
|
||||
Reference in New Issue
Block a user