Skip to content

[INBOX/OSS][P1] CodeScanner 2.5.2:真正可用的摄像头二维码扫描 + 离线文本交换 - #81

Draft
Righteous1776 wants to merge 12 commits into
mainfrom
agent-drop/codescanner-qr-practical-20261025
Draft

Righteous1776 wants to merge 12 commits into
mainfrom
agent-drop/codescanner-qr-practical-20261025

Conversation

@Righteous1776

Copy link
Copy Markdown
Owner

A practical, narrow, third-party OSS intake — not feature-count inflation

Current VeilLink main 501ef814a0a9bea41419fe2d9f48315371b30320 has remote pairing QR generation and photo-import only, and the Tool Center's local QR generator has no scanning. This Inbox contains a real integration patch adding camera QR scanning in both locations.

Inbox: AGENT_INBOX/submissions/oss-integration-agent/20261025-codescanner-practical-qr/

Actual code delivered

  • FILES/VeilQRScanPolicy.swift: testable Foundation-only input validation (1024-byte offline text, 4096-byte remote QR, control-character filtering and veillink://pair? scheme preflight).
  • FILES/VeilCameraQRScannerView.swift: single-shot CodeScanner SwiftUI camera sheet, bounded QR text only, no background capture, no photo capture, no data exfiltration, no auto-opening.
  • FILES/VeilQRScanPolicyTests.swift: five iOS XCTest cases staged.
  • PATCH.diff: exact main four-file update — XcodeGen Swift package pinned exactVersion: 2.5.2, truthful NSCameraUsageDescription, add camera button to remote one-minute QR pairing (still Relay-dependent), and camera button to existing temporary offline QR text generator. Photo picker remains unchanged.
  • OSS_PRIORITY_MATRIX.md evaluates nine legitimate upstream packages including CodeScanner, Mantis cropping, SwiftSoup local HTML, MarkdownUI, Nuke, Kingfisher, ZIPFoundation and GRDB with toolchain/platform/license constraints.

Verified: Official CodeScanner 2.5.2 Package.swift declares Swift tools 5.9/iOS13/zero deps; MIT upstream. Current project.yml is Swift 5.9/iOS15. In-memory reapplication of all 9/9 unified hunks on exact GitHub main passes original context checks. Standalone Foundation QR policy Linux swiftc 6.2.1 Swift-5 mode with warnings-as-errors passed 10 functional assertions. Bundled iOS XCTest not yet executed, and Apple SDK/physical iPhone7 has not been compiled/tested. No third-party code copied, only pinned dependency declarations.

Security: Remote pairing uses existing VeilRemotePairingCoordinator.consumeQRCode so original QR expiry/crypto/6-digit mutual confirmation stay in force; scanning does not make remote Relay pairing work offline. General QR text scan is offline, with URLs opaque and no auto-open. No Keychain, DB, protocol, signing or BLE changes.

Overlap / hard gates: Shared ToolCenterView.swift also touched by Inbox PRs #67/#68/#70/#72/#76. Governor must resolve addition without overwriting others, and prioritize iPhone7 touch/startup P0 PR #64/#65/#66. Requires macOS iOS15 build, full XCTest, physical iPhone7 camera permission/focus/light-dark/gesture tests, and third-party license attribution. This PR is INBOX ONLY: no main merge, no workflow dispatch, no IPA/release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant