fix(fs): persist read window offset in the read card meta

An empty read window (byte cap below the first selected line: `lines: []`
with `totalLines > 0`) dropped `offset` from the persisted presentation
meta, so a replayed read card could not report where the window starts or
where a continuation resumes. Carry `offset` on `FsReadMeta`,
`ReadResultView`, and the `presentationMeta` projection, and validate it in
`readMetaFromMeta` (1-based integer; the first line number may not fall
below it). Re-record the ACP fixtures and the cordis api catalog.

Also correct the Note's `parallel-file-reads` golden path
(examples/tui-agent -> apps/cli) and record the pre-card replay-degradation
tradeoff in the Decision section.
This commit is contained in:
Chinesezjc
2026-07-30 22:00:35 +08:00
parent ca19468ae2
commit 4fbe46c381
24 changed files with 75 additions and 42 deletions
@@ -2,5 +2,5 @@
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write .agents/notes/implemented/feature/2026-07-30-web-read-card.md
2026-07-30-web-read-card.md: 7d517beb359eec17948ea312b0478604cf92a49b
2026-07-30-web-read-card.zh.md: bfcc17e782a6a1caf0f775875264839af357be0d
2026-07-30-web-read-card.md: 509fc866737be6f9f05a02aed02324f3a337e936
2026-07-30-web-read-card.zh.md: aec170fd2180af58102d8079118339cdef55a4c4