Skip to content

Implement initial Accelerate-backed MaxVol package - #1

Merged
gaelic-ghost merged 7 commits into
mainfrom
feature/accelerate-storage-types
Jul 1, 2026
Merged

Implement initial Accelerate-backed MaxVol package#1
gaelic-ghost merged 7 commits into
mainfrom
feature/accelerate-storage-types

Conversation

@gaelic-ghost

Copy link
Copy Markdown
Owner

Summary: Adds dense column-major matrix storage, public result/error/options APIs, a first Accelerate-backed Double square MaxVol implementation, Swift Testing coverage, ROADMAP planning, DocC, and SPI metadata. Verification: swift build; swift test; scripts/repo-maintenance/validate-all.sh; xcrun docc convert with the MaxVol symbol graph.

@gaelic-ghost gaelic-ghost added the enhancement New feature or request label Jul 1, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ae3f6c11b2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

push_release_branch "$branch_name"
create_or_update_pr "$branch_name"
pr_number="$PR_NUMBER"
wait_for_initial_pr_checks "$pr_number"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Skip live check polling during dry runs

When release.sh --mode standard --dry-run reaches this path, create_or_update_pr has just set PR_NUMBER="DRY-RUN", but this unguarded call still enters wait_for_initial_pr_checks and polls gh pr checks DRY-RUN until it times out. That makes the dry-run path hang or fail instead of staying side-effect-free, so this call should be skipped or simulated when REPO_MAINTENANCE_DRY_RUN=true.

Useful? React with 👍 / 👎.

tag_sha="$(git -C "$REPO_ROOT" rev-parse -q --verify "refs/tags/$RELEASE_TAG" 2>/dev/null || true)"

if [ -n "$tag_sha" ]; then
[ "$tag_sha" = "$head_sha" ] || die "Tag $RELEASE_TAG already exists and does not point at HEAD."

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Peel annotated tags before comparing to HEAD

In submodule release reruns after this script has created the annotated tag, git rev-parse --verify refs/tags/$RELEASE_TAG resolves to the tag object, not the commit, so comparing it directly with rev-parse HEAD rejects a valid tag that already points at HEAD. The standard release helper handles this by using git rev-list -n 1; this path needs the same peeling before deciding the tag is wrong.

Useful? React with 👍 / 👎.

@coderabbitai

coderabbitai Bot commented Jul 1, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@gaelic-ghost, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 41 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c816984b-cfd5-4b5b-8c8d-d16a5a4c77bb

📥 Commits

Reviewing files that changed from the base of the PR and between c49aa3d and d2f26c2.

📒 Files selected for processing (33)
  • .github/workflows/validate-repo-maintenance.yml
  • .spi.yml
  • .swiftformat
  • .swiftlint.yml
  • AGENTS.md
  • Package.swift
  • README.md
  • ROADMAP.md
  • Sources/MaxVol/DenseColumnMajorMatrix.swift
  • Sources/MaxVol/MaxVol.docc/MaxVol.md
  • Sources/MaxVol/MaxVol.swift
  • Sources/MaxVol/MaxVolError.swift
  • Sources/MaxVol/MaxVolOptions.swift
  • Sources/MaxVol/MaxVolResult.swift
  • Tests/MaxVolTests/DenseColumnMajorMatrixTests.swift
  • Tests/MaxVolTests/MaxVolAlgorithmTests.swift
  • Tests/MaxVolTests/MaxVolTests.swift
  • scripts/repo-maintenance/config/profile.env
  • scripts/repo-maintenance/config/release.env
  • scripts/repo-maintenance/config/validation.env
  • scripts/repo-maintenance/hooks/pre-commit.sample
  • scripts/repo-maintenance/lib/common.sh
  • scripts/repo-maintenance/release.sh
  • scripts/repo-maintenance/release/10-preflight.sh
  • scripts/repo-maintenance/release/20-tag-release.sh
  • scripts/repo-maintenance/release/30-push-release.sh
  • scripts/repo-maintenance/release/40-github-release.sh
  • scripts/repo-maintenance/sync-shared.sh
  • scripts/repo-maintenance/syncing/README.md
  • scripts/repo-maintenance/validate-all.sh
  • scripts/repo-maintenance/validations/10-toolkit-layout.sh
  • scripts/repo-maintenance/validations/20-agents-guidance.sh
  • scripts/repo-maintenance/validations/30-ci-wrapper.sh
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/accelerate-storage-types

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.

@gaelic-ghost
gaelic-ghost merged commit 07cbb89 into main Jul 1, 2026
2 checks passed
@gaelic-ghost
gaelic-ghost deleted the feature/accelerate-storage-types branch July 1, 2026 04:38

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

run: bash scripts/repo-maintenance/validate-all.sh

P2 Badge Add package build and test to the required workflow

Because this is currently the only workflow under .github/workflows and the validate check is the one branch protection is told to require, stopping at scripts/repo-maintenance/validate-all.sh leaves PRs that change Package.swift or Sources/MaxVol without any swift build or swift test coverage; validate-all.sh only dispatches the repo-maintenance scripts under scripts/repo-maintenance/validations. That means compile failures or failing Swift Testing coverage can still merge as long as the maintenance wrapper passes, so the package build/test gate should be added here or to validate-all.sh.



P2 Badge Allow standard dry runs without gh installed

When release.sh --mode standard --dry-run is used for a local side-effect-free rehearsal on a machine without the GitHub CLI, this unconditional ensure_gh_cli call exits before any of the dry-run guards can simulate PR, CI, merge, or release operations. Skip this check during dry runs, or defer it until the first non-dry-run gh operation, so the advertised dry-run path can run in environments that intentionally lack GitHub credentials/tools.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

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

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant