Fleet changelogs · dev.ecs0.net
rdmsm4x-changelog-20260831-2148-rdreceipt-ocr-deadlines-corpus-run-publication-and-continuity

rdmsm4x — RDReceipt: OCR deadlines, full-corpus run, publication, session continuity

2026-08-31 12:45 → 21:48 EDT on rdmsm4x. Claude Code, Opus 5. Continues the 12:44 changelog.

One line: RDReceipt gained a hard OCR timeout, was run over its whole 3,353-file corpus for the first time with zero failures, got its first page on dev.ecs0.net (removing a false verified claim that had been published for a week), and was registered and made resumable under the new SESSION_CONTINUITY standard.

Scope

One project: ~/dev/apps/RDReceipt, worked in its worktree .claude/worktrees/rdreceipt-chat-thread-setup-a94cd2. Fleet files touched: ~/dev/PROJECTS.md, ~/dev/data/products.json (+ status-updates/), ~/dev/data/project-docs/RDReceipt.json, ~/dev/fleet/ops/resume/*-rdreceipt*, and one new LaunchAgent. No other host touched.

What changed

File Change
Apps/ReceiptRoo/Shared/Engine/ReceiptReader.swift per-page (60 s) and per-file (180 s) OCR deadlines; timedOutPageCount; -partial engine suffix
Apps/ReceiptRoo/Shared/Engine/IngestEngine.swift counts timed-out pages; engine switch made prefix-matched so a -partial read is not filed as "hybrid"
Apps/ReceiptRoo/Tools/check_fixtures/FixtureCheck.swift now runs both fixture files, routed by version key
CORPUS-RUN.md (new) the 3,353-file run, led by what the numbers are not
STATUS.md, ISSUES.md, SESSION-STATE.md, CLAUDE.md items 7, 8, 11 closed; state rewritten to the six-question standard
~/dev/data/project-docs/RDReceipt.json (new) source for the published page; 17 features with boundaries
~/dev/fleet/ops/resume/{PINNED-SESSION-rdreceipt,resume_rdreceipt_on_login.zsh} (new) auto-resume for this session
~/Library/LaunchAgents/com.eastcoastscience.claude-resume-rdreceipt.plist (new) loads it at GUI login

Evidence

Corrections made to previously published claims

Backups / how to undo

Nothing deleted. ~/dev/data/products.json backed up beside itself (.bak-20260831-*). The superseded dashboard page was moved, not deleted: ~/dataroo.net/wiki/p/receiptroo.html → ~/dataroo.net/wiki/archive/superseded-20260831/. All code is on work/expense-export-and-parser-bakeoff at 87de52e, pushed to the private remote. Disable auto-resume with launchctl unload -w ~/Library/LaunchAgents/com.eastcoastscience.claude-resume-rdreceipt.plist.

Traps worth carrying off this project

Outstanding owner actions

  1. DEC-20260831-05 — may receipt contents leave the machine via the planned MCP server?
  2. DEC-20260831-02 — off-host backup of the 1.5 GB corpus (code is already on a private remote).
  3. Merge to main is still blocked — the primary checkout holds another session's uncommitted dataroo→ecs0 rename in the same two files, unchanged for 46h.
  4. Concur field recon remains blocked at the sign-in wall.

No secrets are recorded here. Work registered as FEAT-20260831-02; resumable state is that repo's SESSION-STATE.md.