Fleet changelogs · dev.ecs0.net
rdmsm4x-changelog-20260823-2337-rdreceipt-folder-consolidation

rdmsm4x-changelog-20260823-2337-rdreceipt-folder-consolidation

Started 23:37, closed 23:52 EDT, 2026-08-23 · host rdmsm4x · Claude Code (Opus 5).

All rdreceipt / ReceiptRoo project work now lives in one folder, ~/dev/apps/rdReceipt, verified building and passing 505 tests from that path. Matters because the code was scattered across three repos on two hosts as recently as tonight, and the registry still claimed the project had been merged into rooDB.

Scope

Context

An earlier session tonight (23:05–23:20) had already consolidated three source repos into ~/dev/apps/receiptROO. Rich then decided against that folder name and created an empty ~/dev/apps/rdReceipt. This session moved the consolidated tree there and finished the sweep.

Changes

  1. Folder move. ~/dev/apps/receiptROO → ~/dev/apps/rdReceipt. Plain directory move — Git history, working tree and the _provenance/ bundles all carried over. Confirmed first that no build file referenced the old absolute path; the only references were prose.
  2. Prose repointed in rdReceipt/CLAUDE.md, rdReceipt/PROVENANCE.md, rdReceipt/README.md, ~/dev/agy/rdreceipt-MOVED.md, ~/dev/apps/rdKIPP/apps/rdreceipt-MOVED.md. rdReceipt/docs/consolidation/ left verbatim — it is an archived packet, not live docs.
  3. Two artifacts absorbed:
    • ~/dev/agy/screenshots/13_rdreceipt_apple_vision_ocr.png → docs/evidence/screenshots/ (sha256 611f076e3869869ab60dc332cc812fd520f32f7cd841ecf76c8343212f77d45c, re-verified).
    • rdmbair15m5:~/dev/local-llm-benchmark/data/{fixtures,ground_truth}/receipts → core/fixtures/benchmark-receipts/ — 5 receipt images + hand-checked ground-truth JSON, all ten files verified byte-identical after transfer. Original left in place; it belongs to the local-llm-benchmark project.
  4. STATUS.md and ISSUES.md created at the repo root — baseline §8 required them and neither existed. STATUS separates what was verified tonight from figures quoted out of data/products.json and not re-measured.
  5. Registries corrected:
    • ~/dev/PROJECTS.md — the rdReceipt row said "Merged into rooDB · ~/dev/apps/roodb-app", which is wrong. It is a live standalone project; rooDB only absorbed the receipt classification role for its own file corpus.
    • ~/dev/data/products.json — path was the dead apps/rdKIPP/apps/rdreceipt, now apps/rdReceipt; the "third domain in the rdKIPP suite" description updated. JSON revalidated. This file feeds the local status-site generator.

Commands run

rmdir  ~/dev/apps/rdReceipt && mv ~/dev/apps/receiptROO ~/dev/apps/rdReceipt
cd ~/dev/apps/rdReceipt/Packages/rdReceipt && swift build && swift test
cd ~/dev/apps/rdReceipt/Apps/ReceiptRoo && xcodegen generate && \
  xcodebuild -project ReceiptRoo.xcodeproj -scheme ReceiptRoo-macOS -configuration Debug build

Verification evidence

Check Result
swift build from the new path Build complete! (6.48 sec)
swift test from the new path 505 tests / 87 suites, exit 0 — Core 51 · OCR 66 · Parser 54 · Vault 55 · E2E 248 · UI 31
xcodegen generate + xcodebuild ReceiptRoo-macOS ** BUILD SUCCEEDED **
Benchmark fixtures after transfer 10/10 sha256 identical to source
git status in ~/dev/apps/rdReceipt clean; 468 tracked files; commits bd6262e, 2d8e00b
data/products.json after edit parses as valid JSON

Fleet sweep

Read-only find over ~/dev on all five peers. rdmbair13m5, rdmpw3265m, rdmpw3275m, jdmbair13m5: nothing. rdmbair15m5 holds two non-Git rsync copies, both proven behind this repo by full shasum -a256 manifest comparison, not by inspection:

Both left untouched — deleting another host's working tree is Rich's call, not an agent's.

Backups / undo

Outstanding owner actions (Rich)

  1. Decide which implementation is v1 — Apps/ReceiptRoo (ships a bundle, zero tests) vs Packages/rdReceipt (505 tests, no bundle). Everything else is gated on it.
  2. Decide the product name. The folder is rdReceipt; the app target, bundle ID com.eastcoastscience.ReceiptRoo, icon set and dashboard slug still say ReceiptRoo. Not renamed automatically — it touches the bundle ID and the published URL.
  3. Approve removing the two stale trees on rdmbair15m5.
  4. Note the unresolved functional overlap: rooDB also classifies receipts, in its own corpus.

Full detail in ~/dev/apps/rdReceipt/ISSUES.md and the second-pass section of PROVENANCE.md.

Apple Notes

PENDING — not yet written. This session runs under launchctl managername = Background, which cannot send AppleEvents to GUI apps, so ~/scripts/notes_changelog.zsh correctly refuses. Publish from Terminal.app in the desktop session on rdmsm4x:

zsh ~/scripts/notes_changelog.zsh ~/dev/LLM/Claude/changelogs/rdmsm4x-changelog-20260823-2337-rdreceipt-folder-consolidation.md