Skip to content

Sync subrepo branch brightdigit-com-260406#1

Draft
leogdion wants to merge 6 commits into
masterfrom
brightdigit-com-260406
Draft

Sync subrepo branch brightdigit-com-260406#1
leogdion wants to merge 6 commits into
masterfrom
brightdigit-com-260406

Conversation

@leogdion

Copy link
Copy Markdown
Member

Draft PR to sync the git-subrepo tracking branch into the default branch.

Opened as part of the brightdigit.com monorepo subrepo maintenance sweep (branch brightdigit-com-260717 batch). Contains the changes pushed from the monorepo via git subrepo push.

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 116a0d1d-72b2-4ce9-b2d4-e81265c2fe76

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch brightdigit-com-260406

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Leaf Publish-stack packages had lint tooling but no workflows; mirror the
Ink/Contribute leaf template (no path-dep rewrite needed).

Co-authored-by: Cursor <cursoragent@cursor.com>
@codecov

codecov Bot commented Jul 18, 2026

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

leogdion added 4 commits July 18, 2026 07:03
Files/Publish stack need iOS 18 / tvOS 18 / watchOS 11 for Synchronization.Mutex; ContributeRSS/WordPress declare iOS/tvOS 16 to match standalone CI deps.

Co-authored-by: Cursor <cursoragent@cursor.com>
Publish stack (Files/Ink/Publish):
- Move build-macos + build-macos-platforms off [self-hosted, macOS] to the
  GitHub-hosted xcode-27 runner (/Applications/Xcode_27.0.app, Swift 6.4-dev,
  27.0 SDKs); add download-platform: true on the sim legs.
- Files: remove the stale legacy Files.xcodeproj (schemes Files-iOS/-macOS/-tvOS
  shadowed swift-build's auto-calculated "Files" scheme) and the dead
  buddybuild_postbuild.sh, so xcodebuild resolves the SPM auto-scheme like Plot.
- Ink: add iOS 18 / tvOS 18 / watchOS 11 platform floors for Synchronization.Mutex
  used in InkTests, mirroring Files.

Lint:
- TailwindKit: remove the superseded legacy 2022 Tailwind.* API
  (TailwindKit.swift's Tailwind struct + Flexbox/AspectRatio/Display/Breakpoints
  and their XCTest suites), exclude the Danger DSL script from SwiftLint; lint now
  clean (0 violations).
- ReadingTimePublishPlugin: doc-comment public API, split test helpers into
  fixtures files, explicit ACL, rename ReadingTime.swift -> ReadingTimeMetadata.swift
  to satisfy file_name; lint clean, 8 XCTest tests pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Files hardcoded POSIX `/` separators while Foundation returns native `\` paths on
Windows, producing broken hybrid paths (C:\Users\foo/.filesTest/, /C:/Users/foo/)
and an internal inconsistency where makeParentPath rejoined URL.pathComponents with
`/` so a folder's computed parent.path never string-== its stored path.

Fix: store every path in canonical forward-slash form; keep all `/`-based internal
logic; convert to native separators only at FileManager / URL(fileURLWithPath:)
boundaries. New Sources/Path.swift adds String.canonicalizedPath / .nativePath /
.isDriveRoot and Path.rootPath / .nativeSeparator, all no-ops off Windows (so
macOS/Linux behavior is provably unchanged). makeParentPath preserves the Windows
drive prefix (C:/Users/foo/ -> C:/Users/); `~` resolves via
homeDirectoryForCurrentUser (drops a POSIX-only HOME force-unwrap); Folder.root is
the current volume root on Windows.

Tests stay XCTest: 3 assertions made platform-aware via a rootPath/canonical helper
(no `#if` in test bodies), plus a filesystem-free PathTests suite exercising the
separator + drive-prefix math on every platform. All 71 tests pass on macOS; lint
clean (CI=1 LINT_MODE=STRICT). Pragmatic scope: UNC best-effort, == stays
case-sensitive on all platforms. Windows CI is the ground truth.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
homeDirectoryForCurrentUser is unavailable on iOS/tvOS/watchOS, so the previous
commit's ~ change broke the Apple-platform builds (which were green). NSHomeDirectory()
is available on every Apple platform AND is platform-aware on Windows (resolves the
user profile, not the POSIX-only HOME variable). Verified: iOS simulator build
succeeds; 71/71 tests pass on macOS; lint clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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