desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs
Comment 1, line 1
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:1
//! Kimi Code (A12, M4) V12: repeat deduplication, appended reads and persisted reconciliation,Comment 2, line 2
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:2
//! partial lines, truncation rescans, bounded batches with resumption and renamed-file detection.Comment 3, line 30
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:30
/// Base file: three lines, metadata and two turn recordsComment 4, line 31
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:31
/// {100,50,400} and {200,60,800}, with totals 550/1060.Comment 5, line 79
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:79
/// Appended reads add only new records and preserve cumulative reconciliation across rounds.Comment 6, line 80
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:80
/// Echo starts at zero; the appended echo still covers only part of the record sum.Comment 7, line 99
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:99
// Base has no step.end: two usage records and zero echo give echo_subset.Comment 8, line 105
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:105
// Append one usage.record and a step.end echo matching the first existing usage record.Comment 9, line 116
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:116
// Persisted sums: three records 550+1060+1270=2880 versus echo 550, giving echo_subset.Comment 10, line 130
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:130
/// Leave a final line without newline unread; consume it after the newline is appended.Comment 11, line 143
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:143
// Metadata and the first record are complete; the last record has no newline.Comment 12, line 162
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:162
/// Truncation increments generation and rescans; stored history survives source truncationComment 13, line 163
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:163
/// under V12, as for Codex. Rescanning adds only events with new keys.Comment 14, line 183
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:183
// Rewrite with metadata and one different usage record.Comment 15, line 199
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:199
// Keep two historical events and add one new event despite source truncation.Comment 16, line 205
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:205
/// Stop at a complete line on reaching the line limit; resume from the consumed-line cursor.Comment 17, line 216
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:216
// Limit this round to two lines: metadata and first record; status budget_exhausted.Comment 18, line 220
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:220
// Reconcile only at EOF; this limited round produces no reconciliation row.Comment 19, line 223
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:223
// The next normal-limit round reads the remaining record and completes.Comment 20, line 237
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:237
/// Rename the unchanged stream while keeping wire.jsonl and changing its agent directory.Comment 21, line 238
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:238
/// file_identity matches the stream, preventing duplicate events.Comment 22, line 254
desktop/src-tauri/crates/core/tests/kimi_code_incremental_v12.rs:254
// Change the agent directory; the unchanged stream remains discoverable.