Skip to content

fix(helix): ndarray is a mandatory git dependency (codex P2 + "ndarray is mandatory")#463

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/gallant-rubin-Y9pQd
Jun 4, 2026
Merged

fix(helix): ndarray is a mandatory git dependency (codex P2 + "ndarray is mandatory")#463
AdaWorldAPI merged 1 commit into
mainfrom
claude/gallant-rubin-Y9pQd

Conversation

@AdaWorldAPI

@AdaWorldAPI AdaWorldAPI commented Jun 4, 2026

Copy link
Copy Markdown
Owner

Follow-up to #459/#460 — addresses the codex P2 on #460 ("ndarray is not clean") and the directive "ndarray is mandatory for lance-graph."

The problem (codex P2)

An optional path dependency does not make the default build self-contained: Cargo reads every dependency manifest — including optional ones — during resolution to build the lockfile. So ndarray = { path = "../../../ndarray", optional = true } makes a clean checkout without the sibling repo fail (failed to read .../ndarray/Cargo.toml) before feature selection. The merged "default build needs no ndarray checkout" claim (#460) was false.

The fix

ndarray is now a mandatory, non-optional git dependency:

ndarray = { git = "https://github.com/AdaWorldAPI/ndarray.git", branch = "master", default-features = false, features = ["std"] }
  • git source resolves the manifest remotely — no sibling checkout needed (fixes the clean-checkout failure);
  • non-optional → the ndarray-hpc feature is removed (per "ndarray is mandatory for lance-graph" — it is "The Foundation");
  • src/simd.rs is now single-impl — always ndarray::simd (simd_ln_f32 / F32x16 / U8x64), no feature gate, no scalar-fallback variant to keep in sync (ndarray::simd does its own AVX-512 / AVX2 / scalar dispatch internally).

No import cycle (and why not [patch])

helix is standalone (own [workspace] + root exclude), so it resolves ndarray independently of the lance-graph workspace's path-based ndarray — no source-unification needed. [patch] would be the wrong tool here: the workspace's own [patch.crates-io] ndarray is separately known-ineffective (the fork's 0.17.2 can't semver-satisfy the lance-index crates.io 0.16.1; root Cargo.toml BLOCKED(D)). The fork is self-contained — only internal subcrate path deps (crates/p64, crates/fractal, ndarray-rand, crates/ndarray-gen) that travel with the clone — and has no back-dependency on lance-graph, so the git dep introduces no cycle. master == the commit helix was tested against (0129b5c), which exposes simd_ln_f32 / U8x64 / F32x16.

Verification

63 unit + 6 doctests green, clippy -D warnings + rustfmt clean with ndarray mandatory. The git source was patched to the local master checkout for the in-sandbox build (no direct github egress here); the github fetch is validated by CI.

Board

PR_ARC #459 Correction + E-HELIX-NDARRAY-MANDATORY (EPIPHANIES) + LATEST_STATE + STATUS_BOARD D-HELIX-1; root Cargo.toml exclude comment corrected.

https://claude.ai/code/session_013rjF2Dvo1DnBACpbpYSffE


Generated by Claude Code

Summary by CodeRabbit

Release Notes

  • Refactor

    • Consolidated SIMD batch operations in the helix crate with unified implementation path
    • Updated ndarray dependency configuration from optional to mandatory
  • Documentation

    • Updated development and architecture documentation to reflect implementation changes

…ray is mandatory")

Two converging directives:

1. codex P2 (#460): an optional `path` dependency does not make the default
   build self-contained — Cargo reads every dependency manifest (incl. optional)
   during resolution, so `ndarray = { path = "../../../ndarray", optional = true }`
   makes a clean checkout without the sibling fail before feature selection. The
   "default build needs no ndarray checkout" claim was false.
2. Directive: "ndarray is mandatory for lance-graph" (it is The Foundation).

Fix: ndarray is now a mandatory, non-optional GIT dependency:
  ndarray = { git = "https://github.com/AdaWorldAPI/ndarray.git",
              branch = "master", default-features = false, features = ["std"] }

- git source resolves the manifest remotely (no sibling checkout needed);
- non-optional, so the `ndarray-hpc` feature is removed;
- src/simd.rs is now single-impl (always ndarray::simd, no scalar fallback;
  ndarray does its own AVX-512/AVX2/scalar dispatch internally).

No import cycle: helix is standalone (own [workspace] + root exclude) and the
fork is self-contained (only internal subcrate path deps, no lance-graph
back-dependency). [patch] is the wrong tool here (the workspace's
[patch.crates-io] ndarray is separately ineffective: 0.17.2 can't satisfy the
lance-index crates.io 0.16.1).

Verified: 63 unit + 6 doctests green, clippy -D warnings + fmt clean (git source
patched to the local master checkout for the in-sandbox build; github fetch is
validated by CI).

Board: PR_ARC #459 Correction + E-HELIX-NDARRAY-MANDATORY + LATEST_STATE +
STATUS_BOARD D-HELIX-1.

https://claude.ai/code/session_013rjF2Dvo1DnBACpbpYSffE
@coderabbitai

coderabbitai Bot commented Jun 4, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR hardens the helix crate's ndarray dependency by converting it from an optional local path dependency to a mandatory git dependency on the AdaWorldAPI fork. The SIMD implementations (batch_fisher_z and batch_l1_u8) are consolidated into single unconditional variants, removing feature-gated scalar fallbacks. Documentation and metadata are updated throughout the codebase and decision tracking board to reflect the mandatory dependency and new implementation structure.

Changes

Helix ndarray hardening and SIMD consolidation

Layer / File(s) Summary
Dependency configuration and workspace setup
Cargo.toml, crates/helix/Cargo.toml
Workspace comment and manifest are updated so ndarray is sourced from the AdaWorldAPI git fork as a mandatory (non-optional) dependency with std feature, replacing the prior optional path dependency and feature-gating mechanism.
SIMD implementation consolidation and unconditional compilation
crates/helix/src/simd.rs
Module-level docs and imports are updated to reflect mandatory ndarray; batch_fisher_z and batch_l1_u8 are declared unconditionally (no #[cfg] gating), removing scalar fallback variants; unit tests exercise the always-available SIMD implementations.
Internal documentation and knowledge updates
crates/helix/src/lib.rs, crates/helix/src/constants.rs, crates/helix/KNOWLEDGE.md
Crate and module docs remove "zero-dep" language and explicitly reference the mandatory ndarray dependency; KNOWLEDGE.md is revised to describe always-on ndarray SIMD, local constant definitions, and the updated consolidation path.
Metadata, decision log, and status board updates
.claude/board/EPIPHANIES.md, .claude/board/LATEST_STATE.md, .claude/board/PR_ARC_INVENTORY.md, .claude/board/STATUS_BOARD.md
Decision board entries document the ndarray hardening, explain why optional path dependencies can still break resolution, record the removal of ndarray-hpc feature, and track the consolidated SIMD-only implementation across the helix project status.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • AdaWorldAPI/lance-graph#425: Introduces root-level [patch.crates-io] override for ndarray to point at the AdaWorldAPI fork, directly enabling this PR's mandatory git dependency configuration.

Poem

🐰 A path was laid but resolution failed,
So now our SIMD shines without a veil,
ndarray git makes features obsolete,
One truth for batch—our loop is complete! 🎯

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and specifically describes the main change: converting ndarray from an optional path dependency to a mandatory git dependency, with additional context referencing the codex priority and the core issue.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/gallant-rubin-Y9pQd

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 and usage tips.

@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: 5758926a8f

ℹ️ 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".

Comment thread crates/helix/Cargo.toml
# The fork is self-contained (internal subcrates only — no external path dep, no
# back-dependency on lance-graph → no import cycle). `std` enables `ndarray::simd`
# (simd_ln_f32 / F32x16 / U8x64).
ndarray = { git = "https://github.com/AdaWorldAPI/ndarray.git", branch = "master", default-features = false, features = ["std"] }

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 Keep helix buildable without GitHub access

In the documented Cursor Cloud/setup-script environment, /ndarray is provided locally and no external services are required, but this mandatory git dependency now makes every cargo test --manifest-path crates/helix/Cargo.toml resolve by contacting GitHub before compilation. In a no-egress or proxy-blocked environment this fails during dependency resolution even when the local /ndarray checkout exists, so helix is no longer standalone-verifiable in the repo's supported setup; use a local path/patch fallback or other vendored/pinned source for that environment.

Useful? React with 👍 / 👎.

@coderabbitai coderabbitai 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.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
crates/helix/src/simd.rs (1)

24-56: 🛠️ Refactor suggestion | 🟠 Major | 🏗️ Heavy lift

Expose SIMD operations through a carrier struct API, not free functions.

batch_fisher_z and batch_l1_u8 are public free functions, which diverges from the carrier-only method contract and makes this module an alternate entry surface outside state carriers.

As per coding guidelines **/*.rs: Use only method calls on the carrier struct that holds the state, never free functions. Carrier pattern: trajectory.resolve() instead of resolve(trajectory, config, awareness).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@crates/helix/src/simd.rs` around lines 24 - 56, batch_fisher_z and
batch_l1_u8 are public free functions which breaks the carrier-only API
contract; move these into the module's SIMD carrier struct as methods (e.g.,
impl CarrierStruct { pub fn batch_fisher_z(&self, similarities: &[f32], out:
&mut [f32]) { ... } and pub fn batch_l1_u8(&self, a: &[u8], b: &[u8], out: &mut
[u16]) { ... }), convert any internal helpers to private functions, update all
call sites to use carrier.batch_fisher_z(...) / carrier.batch_l1_u8(...), and
remove or make the original free functions private so the only public surface is
the carrier methods. Ensure signatures use &self or &mut self consistent with
carrier state and run tests.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.claude/board/PR_ARC_INVENTORY.md:
- Around line 61-62: Do not edit the historical paragraph in
PR_ARC_INVENTORY.md; instead create a new prepended PR_ARC entry that records
this correction (reference the original PR `#459`), describe the change to make
ndarray a mandatory git dependency and removal of the ndarray-hpc feature,
include the E-HELIX-NDARRAY-MANDATORY tag and cite that simd.rs now always uses
ndarray::simd, and mark the entry as a follow-up correction (e.g., "Correction
(2026-06-03, follow-up PR after `#460`)"); ensure you follow the append-only rule
for .claude/board files by adding this new entry at the top rather than mutating
the existing historical section.

In @.claude/board/STATUS_BOARD.md:
- Line 15: Update the D-HELIX-1 / line 15 status cell so it no longer mixes
obsolete and current facts: remove any mention of testing under `--features
ndarray-hpc` and instead state the post-#460 reality that `ndarray-hpc` was
removed, `ndarray` is now a mandatory git dependency, `simd.rs` always uses
`ndarray::simd`, and the test/counts reflect the post-#460 totals (63 unit + 6
doctests green); edit the `D-HELIX-1`/`HemispherePoint` status sentence to
contain only these current facts and ensure phrasing matches the board style
used elsewhere.

In `@crates/helix/Cargo.toml`:
- Line 21: Replace the git dependency specification for ndarray so it pins to
the exact commit SHA instead of tracking master: in the Cargo.toml entry that
currently reads the ndarray git dependency with branch = "master", remove branch
= "master" and add rev = "0129b5c80cee8d88fdae97be813524328e4d025a" (update both
the crates/helix/Cargo.toml ndarray entry and the root Cargo.toml ndarray entry)
so the dependency is reproducibly fixed to that commit.

---

Outside diff comments:
In `@crates/helix/src/simd.rs`:
- Around line 24-56: batch_fisher_z and batch_l1_u8 are public free functions
which breaks the carrier-only API contract; move these into the module's SIMD
carrier struct as methods (e.g., impl CarrierStruct { pub fn
batch_fisher_z(&self, similarities: &[f32], out: &mut [f32]) { ... } and pub fn
batch_l1_u8(&self, a: &[u8], b: &[u8], out: &mut [u16]) { ... }), convert any
internal helpers to private functions, update all call sites to use
carrier.batch_fisher_z(...) / carrier.batch_l1_u8(...), and remove or make the
original free functions private so the only public surface is the carrier
methods. Ensure signatures use &self or &mut self consistent with carrier state
and run tests.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 146f2ae2-5b8c-4af3-9336-7073193bec58

📥 Commits

Reviewing files that changed from the base of the PR and between 42d502e and 5758926.

📒 Files selected for processing (10)
  • .claude/board/EPIPHANIES.md
  • .claude/board/LATEST_STATE.md
  • .claude/board/PR_ARC_INVENTORY.md
  • .claude/board/STATUS_BOARD.md
  • Cargo.toml
  • crates/helix/Cargo.toml
  • crates/helix/KNOWLEDGE.md
  • crates/helix/src/constants.rs
  • crates/helix/src/lib.rs
  • crates/helix/src/simd.rs

Comment on lines +61 to +62
**Correction (2026-06-03, follow-up PR after #460):** the `../../../ndarray` **path** dep + `ndarray-hpc` feature in the Added block above were wrong twice — (1) codex P2: an optional *path* dep still forces Cargo to read the local sibling manifest at resolution, so the "default build needs none of it" claim was false (a clean checkout failed before feature selection); (2) per the directive **"ndarray is mandatory for lance-graph,"** ndarray is not optional. Both fixed: ndarray is now a **mandatory, non-optional git dependency** (`git = AdaWorldAPI/ndarray @ master`, `ndarray-hpc` feature removed). `simd.rs` always uses `ndarray::simd` (no scalar-fallback variant). The fork is self-contained (internal subcrates only, no lance-graph back-dep) → no import cycle. See E-HELIX-NDARRAY-MANDATORY.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Move this correction into a new prepended PR_ARC entry instead of editing #459.

This line mutates a historical section outside Confidence, which conflicts with the board immutability rule for PR_ARC_INVENTORY.md. Please prepend a new follow-up entry (e.g., PR #460/#463 correction record) and reference #459 there.

As per coding guidelines, .claude/board/{EPIPHANIES,AGENT_LOG,INTEGRATION_PLANS,PR_ARC_INVENTORY}.md entries are append-only and past entries should not be edited except status/confidence lines.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/board/PR_ARC_INVENTORY.md around lines 61 - 62, Do not edit the
historical paragraph in PR_ARC_INVENTORY.md; instead create a new prepended
PR_ARC entry that records this correction (reference the original PR `#459`),
describe the change to make ndarray a mandatory git dependency and removal of
the ndarray-hpc feature, include the E-HELIX-NDARRAY-MANDATORY tag and cite that
simd.rs now always uses ndarray::simd, and mark the entry as a follow-up
correction (e.g., "Correction (2026-06-03, follow-up PR after `#460`)"); ensure
you follow the append-only rule for .claude/board files by adding this new entry
at the top rather than mutating the existing historical section.

## D-HELIX-1 — `crates/helix` golden-spiral Place/Residue codec (zero-dep + optional ndarray-hpc)

**Status:** Shipped (branch `claude/gallant-rubin-Y9pQd`; **61 unit + 6 doctests green** on the default zero-dep build AND under `--features ndarray-hpc`; clippy -D warnings + fmt clean). New standalone crate (empty `[workspace]`, root `exclude`) realising the user's `KNOWLEDGE.md`: `HemispherePoint` (√u equal-area placement) → `CurveRuler` (stride-4-over-17) → `Similarity` (Fisher-Z/arctanh) → `RollingFloor` (256-palette; occupancy-drift + version stamp) → `ResidueEdge` (3-byte endpoint pair) + `DistanceLut` (metric-safe 256×256 L1; `distance_adaptive` vs non-metric `distance_heuristic`) + `prove()` (2-D discrepancy companion to `jc::weyl`). Optional `ndarray-hpc` = batch Fisher-Z via `simd_ln_f32`. ~80% clean-room overlap with CERTIFIED primitives (E-HELIX-OVERLAP / TD-HELIX-OVERLAP-1); consolidation path in `KNOWLEDGE.md`. Process: autoattended — 5 research agents + 4 parallel Sonnet leaf workers + central consolidation. Next (owed): fidelity-vs-ground-truth probe (naive-u8 floor gate ≥0.9980 Pearson, CONJECTURE).
**Status:** Shipped (branch `claude/gallant-rubin-Y9pQd`; **61 unit + 6 doctests green** on the default zero-dep build AND under `--features ndarray-hpc`; clippy -D warnings + fmt clean). New standalone crate (empty `[workspace]`, root `exclude`) realising the user's `KNOWLEDGE.md`: `HemispherePoint` (√u equal-area placement) → `CurveRuler` (stride-4-over-17) → `Similarity` (Fisher-Z/arctanh) → `RollingFloor` (256-palette; occupancy-drift + version stamp) → `ResidueEdge` (3-byte endpoint pair) + `DistanceLut` (metric-safe 256×256 L1; `distance_adaptive` vs non-metric `distance_heuristic`) + `prove()` (2-D discrepancy companion to `jc::weyl`). Optional `ndarray-hpc` = batch Fisher-Z via `simd_ln_f32`. ~80% clean-room overlap with CERTIFIED primitives (E-HELIX-OVERLAP / TD-HELIX-OVERLAP-1); consolidation path in `KNOWLEDGE.md`. Process: autoattended — 5 research agents + 4 parallel Sonnet leaf workers + central consolidation. Next (owed): fidelity-vs-ground-truth probe (naive-u8 floor gate ≥0.9980 Pearson, CONJECTURE). **Update (post-#460):** ndarray is now a MANDATORY non-optional **git** dep (codex P2 + directive "ndarray is mandatory for lance-graph"); `simd.rs` always uses `ndarray::simd`; `ndarray-hpc` feature removed. 63 unit + 6 doctests green; clippy/fmt clean. See E-HELIX-NDARRAY-MANDATORY.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Resolve conflicting status evidence in D-HELIX-1 entry.

Line 15 currently mixes obsolete and current states in one live status cell (it says tests passed under --features ndarray-hpc, then later says ndarray-hpc was removed). Please keep only the current post-#460 status facts in this row to avoid governance drift.

Based on learnings: "Every PR that adds a type, plan, deliverable, or epiphany must update the relevant board file in the SAME commit."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.claude/board/STATUS_BOARD.md at line 15, Update the D-HELIX-1 / line 15
status cell so it no longer mixes obsolete and current facts: remove any mention
of testing under `--features ndarray-hpc` and instead state the post-#460
reality that `ndarray-hpc` was removed, `ndarray` is now a mandatory git
dependency, `simd.rs` always uses `ndarray::simd`, and the test/counts reflect
the post-#460 totals (63 unit + 6 doctests green); edit the
`D-HELIX-1`/`HemispherePoint` status sentence to contain only these current
facts and ensure phrasing matches the board style used elsewhere.

Comment thread crates/helix/Cargo.toml
# The fork is self-contained (internal subcrates only — no external path dep, no
# back-dependency on lance-graph → no import cycle). `std` enables `ndarray::simd`
# (simd_ln_f32 / F32x16 / U8x64).
ndarray = { git = "https://github.com/AdaWorldAPI/ndarray.git", branch = "master", default-features = false, features = ["std"] }

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== Manifests with branch-tracking ndarray git dep =="
rg -n --type toml 'ndarray\s*=\s*\{[^}]*git\s*=\s*"https://github.com/AdaWorldAPI/ndarray.git"[^}]*branch\s*=\s*"master"' -g '**/Cargo.toml'

echo
echo "== ndarray resolution in available Cargo.lock files =="
for lock in $(fd -a '^Cargo.lock$'); do
  echo "--- $lock ---"
  awk '
    /^\[\[package\]\]/{in_pkg=0}
    /^name = "ndarray"$/ {in_pkg=1; print; next}
    in_pkg && /^version = / {print}
    in_pkg && /^source = / {print}
  ' "$lock"
done

Repository: AdaWorldAPI/lance-graph

Length of output: 2157


Pin ndarray git dependency to a fixed rev (remove branch = "master").

crates/helix/Cargo.toml (line 21) and root Cargo.toml (line 177) both track https://github.com/AdaWorldAPI/ndarray.git via branch = "master". The root Cargo.lock currently resolves ndarray to 0129b5c80cee8d88fdae97be813524328e4d025a; pin rev to that SHA (and drop branch) in both manifests for lockfile regeneration reproducibility.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@crates/helix/Cargo.toml` at line 21, Replace the git dependency specification
for ndarray so it pins to the exact commit SHA instead of tracking master: in
the Cargo.toml entry that currently reads the ndarray git dependency with branch
= "master", remove branch = "master" and add rev =
"0129b5c80cee8d88fdae97be813524328e4d025a" (update both the
crates/helix/Cargo.toml ndarray entry and the root Cargo.toml ndarray entry) so
the dependency is reproducibly fixed to that commit.

@AdaWorldAPI AdaWorldAPI merged commit 0a56e48 into main Jun 4, 2026
6 checks passed
AdaWorldAPI pushed a commit that referenced this pull request Jun 4, 2026
…lict D-HELIX-1 status

CodeRabbit flagged two board-governance issues on #463:
- PR_ARC_INVENTORY.md edited the #459 historical section outside the
  Confidence field. Relocate the correction into a properly prepended
  #463 entry (rule-5: a separate-PR reversal gets its own entry) and
  reduce the #459 touch to a Confidence-line forward-pointer.
- STATUS_BOARD.md D-HELIX-1 status mixed obsolete (zero-dep / 61 tests /
  --features ndarray-hpc) with current facts. Clean it to post-#463
  reality only (mandatory git dep, no feature, 63 unit + 6 doctests).

ndarray dependency source kept as git branch=master per user decision;
the Codex P2 (offline) and CodeRabbit (pin-rev) threads are recorded as
accepted trade-offs (wontfix) in the new #463 entry.

https://claude.ai/code/session_013rjF2Dvo1DnBACpbpYSffE
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.

2 participants