repl_print_event_summary() (repl_break.c) now compares the candidate rendered timestamp and displayed session number against a new cache on xce_sched_repl_state_s (repl_internal.h: last_echo_ts_human[32], last_echo_session) before printing the "[sim] t=... session=..." preamble. It prints and updates the cache only when either value has changed, or no preamble has been printed yet this session (the cache's zero-initialized default, which no real echoed event can produce); otherwise the preamble is skipped and the cache is left untouched. The event's own content line prints unconditionally either way (Requirements 1.1-1.4, 2.2). All 6 RED-phase tests (task 1.1) now pass, including the critical raw-vs-rendered nuance test (Requirement 1.3). No regressions in the Event Echo Gate suite or the sibling spec's breakpoints-inspection suite (test_step_echoes_events_before_session_decisions specifically confirmed still passing under the new dedup behavior). repl_break.c grew from 949 to 980 lines (+31, 3.3% over the residual already accepted in scheduler-sim-repl-verbosity task 9.2). Review judged this small growth as accepted without a fresh empirical split test: task 9.2's own split experiment (a larger +44-line growth) already found extracting this file's lookup-table domain reaches only 838 lines (still over cap) while requiring 22 white-box test files' #include lines to change - disproportionate churn this smaller increment would only re-confirm. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YAWMhfRJFnmmnG8h97yUDd |
||
|---|---|---|
| .. | ||
| autoscaler | ||
| configs | ||
| controller | ||
| docs | ||
| frontend | ||
| include | ||
| lib | ||
| nixSupport | ||
| scheduler | ||
| schema | ||
| tools | ||
| worker | ||
| xceadmin | ||
| flake.lock | ||
| flake.nix | ||
| meson.build | ||
| meson.options | ||