rdmsm4x-changelog-20260827-0516-scanroo-product-integration
Consolidated the ScanRoo-only history and product branches into one
locally integrated, verified Prototype candidate so future work can
start from canonical main instead of reconciling competing
lanes again.
ScanRoo product integration
Date: 2026-08-27 05:16 EDT
Host: rdmsm4x
Task: 01a04089-ac03-7ef2-8e74-b393e3626a3c
Scope: ScanRoo only; no portfolio-wide consolidation.
Result
- Canonical root:
/Users/richh/dev/apps/scanRoo. - Integration worktree:
/Users/richh/dev/_worktrees/rscan.app/codex-scanroo-product-integration-20260827. - Branch:
codex/scanroo-product-integration-20260827. - Local
main:9bcfae9ab52a8406e8c5e8875c18fdbbabbc6be5. origin/main: unchanged at9c42d22ee092a98014afb14d3e3992eedcedf21b.- Selected product lineage:
origin/work/visionkit-captureat6bee1eae…. - Selectively retained from
b50561f…: the macOS build/run helper, complete development icon catalog, approved woven-knit source, and dated validation record. Its competing runtime/root views were not imported. - Preserved but did not merge local unverified recovery tip
47aff4e…. - No push, PR, signing, device install, release, deployment, CloudKit mutation, raw-history copy, credential use, recovery deletion, or destructive cleanup.
Project files changed
.gitignoreApps/Mac/MacCameraCaptureAdapter.swiftApps/Mac/MacCaptureView.swiftApps/Mac/RScanMacApp.swiftApps/Mobile/DocumentCameraView.swiftApps/Mobile/RScanMobileApp.swiftApps/Mobile/VisionKitCaptureAdapter.swiftApps/Shared/Resources/Assets.xcassets/AccentColor.colorset/Contents.jsonApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-16.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-32.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-64.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-128.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-256.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-512.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/AppIcon-1024.pngApps/Shared/Resources/Assets.xcassets/AppIcon.appiconset/Contents.jsonApps/Vision/RScanVisionApp.swiftCLAUDE.mdDesign/IconConcepts/scanroo-woven-knit-concept-02.pngISSUES.mdPRD.mdPRIMARY.mdPackages/ScanRooKit/Package.swiftPackages/ScanRooKit/Sources/RScanCaptureSupport/ImportCaptureAdapter.swiftPackages/ScanRooKit/Sources/RScanUI/CaptureActionView.swiftPackages/ScanRooKit/Sources/RScanUI/ScanIngestionService.swiftPackages/ScanRooKit/Sources/RScanUI/ScanRooRuntime.swiftPackages/ScanRooKit/Tests/RScanUITests/ScanIngestionServiceTests.swiftSESSION-STATE.mdSTATUS.mdScanRoo.xcodeproj/project.pbxprojdocs/validation/2026-08-21-ios-macos-development-build.mdscript/build_and_run.sh
Shared records changed
/Users/richh/dev/PROJECTS.md/Users/richh/Library/Mobile Documents/com~apple~CloudDocs/Codex/projects/AGENTS.md principles/PROJECTS.md/Users/richh/.agent-coordination/checkins/codex-rdmsm4x-scanroo-product-integration-20260827.json- This changelog file and its Apple Notes mirror in folder
rdmsm4x.
Commands and verification
- Reproduced the clean pre-integration baseline with
swift test --package-path Packages/ScanRooKit: 49 tests in 13 suites. - Merged
origin/work/visionkit-captureinto the isolated worktree and resolved onlyCLAUDE.md,SESSION-STATE.md, andSTATUS.md, retaining the newer project-owned chronology. - Regenerated the Xcode project with XcodeGen 2.46.0 and resolved all
schemes with
xcodebuild -project ScanRoo.xcodeproj -list. - Final
swift test --package-path Packages/ScanRooKit: 52 tests in 13 suites, zero failures, repeated on both the committed integration branch and canonicalmainafter fast-forward. - Unsigned Debug builds succeeded for
RScanMacon macOS,RScanMobileon generic iOS Simulator, andRScanVisionon generic visionOS Simulator. - Reproduced and removed the one Swift 6 isolation warning by marking
the VisionKit capability wrapper
@MainActor; the iOS target rebuilt cleanly. /bin/bash -n script/build_and_run.shpassed.script/build_and_run.sh --verifybuilt and opened the staged macOS app, confirmed exactly one process (PID 35674), and that process was stopped.gitleaks protect --staged --redact --verbose: no leaks found.git diff --check: no whitespace errors after staging.- Development 1024 icon SHA-256:
04e109079a09df1f3cb833cefdb823b1aa3904b1815a783c69e0f27e24c68e0e. - Approved woven-knit source SHA-256:
8691ced4a7cd970b6c0bb9de299e087d5aa5112c1907cf29d58b25c6c754f658.
Preservation and rollback
- The pre-existing canonical
ISSUES.mdpatch was verified at SHA-256d52ed98427bf577a9d91eb13a5c30f942233f051ab7b908321f8e7947978a93c, committed into the consolidated issue ledger, and retained independently asstash@{0}with the same hash in its message. - Recovery tip
47aff4e…, alternate laneb50561f…, history branches, and all existing worktrees remain intact. - To undo the local integration without rewriting history, create a
new branch at pre-integration
f163334c3bfac6e387b95cd24b1ccac1bba4a034or use that commit as the comparison/rollback base. Do not dropstash@{0}or delete recovery refs until Rich explicitly releases them. - No remote state changed, so
origin/mainremains the remote rollback point.
Outstanding owner actions
- On an unlocked iPhone or iPad, capture one real paper document with VisionKit and confirm it appears in the live ScanRoo library.
- Decide whether to keep
app.scanroo.ScanRooor migrate to the proposed canonical bundle ID before further distribution. - Decide whether RDReceipt consumes ScanRoo's capture/ingestion layer.
- Treat production signing, physical-device revalidation, CloudKit, notarization, TestFlight/App Store work, and release as separate gates.