Skip to content

fix: install finufft in Array-based Colab bootstraps #204

Closed

Description

@Jammy2211

Overview

The TestPyPI candidate 2026.10.25.1.dev83701 fails install verification F because finufft, now an AutoArray dependency, is absent after the Nerves Colab --no-deps bootstrap. Repair the package list rather than relaxing Heart's gate.

Exact published Heart RED reason: install verification FAILED (testpypi; checks F).
Evidence: Release Integrate, verify-install job 121108376734. The second RED reason, release validation FAILED (stage integrate), remains until fresh candidate integration succeeds.

Plan

  • Install finufft>=2.4.0 for Galaxy/Lens and their HowTo notebook setups, matching AutoArray's Linux floor.
  • Keep Fit-only setup unchanged.
  • Exercise the actual setup-generated pip command for all six projects.
  • Validate Nerves and existing AutoArray CPU NUFFT parity.
  • Obtain incident-specific corrective-PR authorization before source commit/push/PR; then request separate merge approval. No release or rehearsal is authorized by this issue.

Tier: judge — merge mode: human /prm.

Detailed implementation plan

Affected repository and branch

PyAutoNerves only. Fresh session clone; main was clean before creating local proposal branch feature/colab-finufft-bootstrap. No active Mind repo claim for PyAutoNerves was found.

Files

  • autonerves/setup_colab.py: add the package to the Array-based stack.
  • test_autonerves/test_setup_colab.py: exercise setup with a mocked Colab shell and intercept the pip command. Assert the required package and floor, and that Fit-only projects do not gain it.

Validation already obtained

  • New witness before source patch: 4 failed, 2 passed; failures exactly the Array-based projects.
  • Patched Nerves suite: 258 passed, 1 skipped. Existing skipped specifier-comparison test requires absent Fit/Galaxy sibling checkouts.
  • Existing AutoArray test_nufft_cpu.py: 7 passed, finufft 2.5.1 / nufftax 0.6.1.
  • No accepted-missing exceptions, test waivers, threshold changes or scoring changes.

Remaining evidence

The full Colab simulation and candidate-wheel integration have not been rerun. After a separately approved merge, build fresh wheels, run verify_install and integration, and reconcile verify_install:F:, the verify-install coverage records, and the linked release/validation records.

Execution location

/workspace/scratch/f77499d15f98/PyAutoNerves; source changes remain uncommitted. Mind prompt: draft/bug/pyautonerves/colab_finufft_bootstrap.md (moves to active on issue filing).

Original authorization

On 2026-10-25 the maintainer replied “Yep do all that” to the health checklist. This authorizes the investigation and repair preparation. It is not represented here as the separate named-issue Heart RED shipping exception, merge authority or release approval.

Activity

  1. Jammy2211 commented on Oct 25, 2026

    @Jammy2211
    CollaboratorAuthor

    Live corrective-PR authorization — 2026-10-25

    James replied “I approve” in this session to the explicit request: “Approve committing, pushing, and opening one corrective PR for Nerves #204 against ‘install verification FAILED (testpypi; checks F)’?” This comment records that human authorization; it is not an autonomous approval.

    Re-read published Heart board at ship time: timestamp 2026-10-25T09:34:29.845384+00:00, RED. The named reason remains exactly install verification FAILED (testpypi; checks F). Sibling reason release validation FAILED (stage integrate) remains open.

    Causal mapping: missing finufft under Colab --no-deps → #204 → add finufft>=2.4.0 to Array-based bootstrap stacks → six-project pip-command witness. Scope: commit, push, and one pending-release PR only. No merge, issue close, release or rehearsal authorized.

    Verification: witness before fix 4 failed/2 passed; patched Nerves suite 258 passed/1 existing skip; existing Array CPU NUFFT parity 7 passed. Source/base unchanged since those tests. Full Colab/candidate-wheel integration remains unrun. After separate human merge, obtain fresh wheels and rerun install verification and integration, reconciling the same Heart finding IDs.

  2. Jammy2211 commented on Oct 25, 2026

    @Jammy2211
    CollaboratorAuthor

    Shipped — source merged

    James authorized the merge with “Prm I authorize”. PR #205 merged unchanged as ec8b5c1e5f17ac03ac5246b5fbc322624a6cd3f6 after verifying all four jobs on head 90bd238356203233ab766976306865999a247ad6: Python 3.12, Python 3.13, no-JAX and Colab gate all completed successfully across both workflow runs. The only claimed source branch is merged.

    The Array-based Colab bootstrap now explicitly installs finufft>=2.4.0. No notebook migration is needed. Closing the source repair task; pending-release remains on #205. This is not release publication or clearance of Heart’s install/integrate findings: fresh candidate wheels and install/release validation remain required. No release or rehearsal was performed.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions