Repository navigation
⚠️ Breaking Changes
- Replace direct notebook-check invocations with
just notebook-check or research-repo-tools notebooks lint. Configure
example deadlines in tooling/examples.toml instead of EXAMPLE_TIMEOUT. - The minimum supported Rust version is now 1.99.0.
- Retired benchmark baseline and threshold commands and
legacy comparison readers are removed. New retained reports use shared
.comparison.json and .evidence.json files; historical files remain records. - Python tooling now requires Python 3.15. The release benchmark workflow uses the Python publication adapter in place of scripts/release_benchmarks.sh.
- Rust 1.99.1 or newer is now required.
- Publish benchmark-equipped drafts with
just release-publish TAG. Use barejustinstead ofhelp-workflowsor
perf-help,changelog-releaseinstead ofchangelog-unreleased, and
update-python-dependenciesinstead ofupdate-python-deps. - Replace the directional
safe_scalar_*_f64and
safe_coords_*_f64helpers with try_finite_scalar and try_finite_coords. - Remove the public determinant helper and its geometry prelude export. Use Matrix::det() for a floating-point estimate with typed errors, or
Matrix::det_sign_exact() for an exact sign.
Merged Pull Requests
- Separate public API benchmarks from diagnostics #665
- Make paper tooling opt-in and refresh project guides #663
- Preserve scientific correctness across triangulation workflows #660
- Delegate remaining numerical kernels to la-stack #658
- Promote validated Cargo artifacts and align release commands #652
- Adopt research-repo-tools v0.2.3 #651
- Bump the github-actions group across 1 directory with 4 updates #646
- Enforce geometry and recovery invariants #645
- Automate reviewed releases and command discovery #644
- Adopt la-stack filters on Rust 1.99.1 #643
- Delegate spherical angles to la-stack #642
- Retire local performance orchestration #641
- Bump the github-actions group with 2 updates #640
- Adopt research-repo-tools v0.1.8 #639
- Bump acgetchell/research-repo-tools/.github/workflows/dependabot-approve.yml #638
- Raise the minimum supported Rust version to 1.99 #637
- Replace local helpers with research-repo-tools #635
- Bump the github-actions group across 1 directory with 5 updates #624
- Adopt shared maintenance and review workflows #623
Changed
refactor(tooling): adopt shared maintenance and review workflows
-
Pin research-repo-tools 0.1.7 and use its managed toolchain for setup and CI.
-
Delegate dependency updates, release metadata, changelog rotation, and
Semgrep fixture checks to the shared CLI. -
Move completed changelog series while preserving release dates and links.
-
Verify live origin/main for branch reviews and preserve local-base
overrides and uncommitted review. -
Refresh Rust and Python dependency locks and retain updated tool pins.
-
[breaking] Replace local helpers with research-repo-tools #635
af2f82d- Delegate file selection, subprocesses, archives, worktrees, Criterion
parsing, and atomic publication to the pinned shared package. - Replace notebook and example runners with shared commands and
declarative tooling configuration while preserving notebook policies. - Preserve exact Git patch bytes, publication recovery artifacts, and
subprocess failure diagnostics. - Add just security with managed OSV and Gitleaks scans locally and in CI.
- Document remaining v0.1.8 capabilities and dependent adoption issues.
- Delegate file selection, subprocesses, archives, worktrees, Criterion
refactor!: adopt research-repo-tools v0.1.8
-
Replace reusable paper, example, notebook, scanning, metadata, and
publication helpers with supported shared commands and APIs. -
Keep consumer configuration and scientific Python modules under tooling,
with only the release benchmark shell script remaining under scripts. -
Adopt shared comparison JSON and evidence envelopes; retire legacy
baseline caches, text/CSV readers, threshold commands, and their workflow. -
Preserve scientific coverage, provenance, and publication checks while
the remaining upstream performance capabilities are developed. -
Refresh consumer dependency locks and declared tool versions.
-
[breaking] Retire local performance orchestration #641
06284cf- Adopt research-repo-tools 0.1.9 for measurement execution, canonical Criterion inventory, saved-baseline verification, and release publication.
- Preserve heterogeneous sampling and scientific provenance while rejecting incompatible retained measurements and colliding baseline names.
- Keep the trusted publication runtime independent of release checkouts and revalidate the bound release before publishing.
- Update the Python tooling environment to Python 3.15 and uv 0.13.1, and adopt la-stack 0.5.0.
refactor: delegate spherical angles to la-stack
- Use la-stack's allocation-free slice angle API while retaining radius validation and arc-length scaling.
- Preserve typed upstream numerical errors and document the quadratic ambient-dimension cost.
- Add spherical distance benchmarks with independent correctness and allocation checks.
- [breaking] Adopt la-stack filters on Rust 1.99.1 #643
5c6bbaa
refactor!: adopt la-stack filters on Rust 1.99.1
-
Delegate relative in-sphere interval signs and circumsphere interval
arithmetic to la-stack, removing the private interval kernel. -
Reuse certified shared-vertex projections for Level 4 separation while
preserving strict unit margins and exact geometric fallbacks. -
Align the repository toolchain, minimum Rust version, and documentation
with Rust 1.99.1. -
[breaking] Delegate remaining numerical kernels to la-stack #658
2c93eb2- Adopt la-stack v0.5.1 in the root crate and checkpoint fixture.
- Use backend LU, Gram construction, checked dot products, and rational rounding while retaining exact geometric certification and fallback.
- Refresh the locked protobuf and wrapt dependencies used by development tooling.
-
Separate public API benchmarks from diagnostics #665
5d4bded- Use one curated public API measurement plan for routine CI and release evidence, with internal profiling selected explicitly.
- Remove duplicate memory profiling jobs and post-merge comparisons while retaining instrumented allocation summaries.
- Render summaries from retained measurement metadata and reject superseded benchmark plans during release promotion.
- Document benchmark ownership and unpublished-release recovery, with regression coverage for measurement and reporting contracts.
Fixed
-
[breaking] Enforce geometry and recovery invariants #645
460ef68- Make cospherical flip decisions consistent and periodic simplex identity
translation-invariant across equality, ordering, hashing, and deduplication. - Evaluate periodic quality in lifted charts, preserve vertex-only TDS
serialization, and return typed errors for oversized point requests. - Preserve unfinished builders, rollback configuration, predicate and lift
causes, checkpoint payload failures, and strict-insphere witnesses. - Separate layer-local validation reports, consolidate finite-coordinate
helpers and permutation parity, and remove unnecessary payload bounds. - Publish JSON files atomically and restore allocation-profiler state before
propagating a measured panic. - Correct release packaging, profiling and Clippy failure reporting, artifact
retention, Semgrep enforcement, and optional-feature test coverage. - Preserve benchmark confidence levels, derive conclusions from retained
measurements, improve CLI and notebook diagnostics, and refresh tooling pins. - Align documentation, citations, immutable release evidence, and generated
validation figures with the implementation.
- Make cospherical flip decisions consistent and periodic simplex identity
-
Preserve scientific correctness across triangulation workflows #660
e365c53- Complete exterior insertion conflict cavities and certify hull-corner
deletion while preserving valid geometry and failure-atomic recovery. - Select periodic k=1 insertion images by exact containment, preserve caller
coordinates and identities, and report ambiguity, range, and search limits. - Correct nonconvex point location, conservative spatial duplicate detection,
and spatial-index restoration after failed bootstrap insertion. - Detect genuine nonflippable Delaunay violations, reject unsupported periodic
location and exact intersection dimensions, and improve typed diagnostics
for arity, incidence, orientation, and construction failures. - Relax snapshot and checkpoint payload bounds to the required Clone and
serialization traits. - Use explicit benchmark fixtures and repair workloads, exclude owner
destruction from operation timing, and correct profiling scope and quoting. - Require scientific report provenance, preserve artifacts on publication
failure, and improve missing-tool diagnostics and cross-platform fixtures. - Prevent overflow in extreme-coordinate visualizations and keep notebook
Semgrep checks within individual cell boundaries. - Remove vacuous and duplicate checks, strengthen invariant and API-contract
coverage, and retain expensive exact checks with focused timeout allowances. - Align kernel documentation, scientific references, and development guidance;
require production fixes for legitimate regressions and independent evidence
before changing a test's contract.
- Complete exterior insertion conflict cavities and certify hull-corner
-
Allow five-to-three benchmark plan transitions
5d85097- Accept the supported historical five-target baseline alongside the
active three-target public API plan. - Preserve retired workloads as baseline-only evidence while retaining
strict current-plan and shared-workload comparability requirements. - Reject incomplete, reordered, or unknown historical target plans.
- Accept the supported historical five-target baseline alongside the
Maintenance
-
Bump the github-actions group across 1 directory with 5 updates #624
6700176Bumps the github-actions group with 5 updates in the / directory:
Package From To github/codeql-action/upload-sarif 4.37.94.38.2codecov/codecov-action 7.0.07.1.1github/codeql-action/init 4.37.94.38.2github/codeql-action/analyze 4.37.94.38.2acgetchell/research-repo-tools/.github/workflows/dependabot-approve.yml cbb2ea6dee8866b3f0547bca935aef48fdd71707b972cbfd717319abaa68d9b1373711ad6f163294Updates
github/codeql-action/upload-sariffrom 4.37.9 to 4.38.2Updates
codecov/codecov-actionfrom 7.0.0 to 7.1.1Updates
github/codeql-action/initfrom 4.37.9 to 4.38.2Updates
github/codeql-action/analyzefrom 4.37.9 to 4.38.2Updates
acgetchell/research-repo-tools/.github/workflows/dependabot-approve.ymlfrom cbb2ea6dee8866b3f0547bca935aef48fdd71707 to
b972cbfd717319abaa68d9b1373711ad6f163294 -
[breaking] Raise the minimum supported Rust version to 1.99 #637
2f2f014- Require Rust 1.99.0 across the repository and downstream fixture.
- Adopt deliberate fused multiply-add where numerical contracts permit it
and clarify when separate rounding requires a justified lint suppression. - Align assertions, must-use annotations, rustdoc links, and lint
suppressions with compiler diagnostics. - Replace redundant Semgrep checks with Clippy coverage and close policy
gaps in split modules and lint attributes. - Update zerocopy and zerocopy-derive to 0.8.60 in both Cargo lockfiles.
- Allow cold managed-tool setup in bounded scanner and performance CI jobs
while retaining the 30-minute benchmark execution limit.
-
Bump acgetchell/research-repo-tools/.github/workflows/dependabot-approve.yml #638
55e2e26Bumps the github-actions group with 1 update:
acgetchell/research-repo-tools/.github/workflows/dependabot-approve.yml.Updates
acgetchell/research-repo-tools/.github/workflows/dependabot-approve.ymlfrom b972cbfd717319abaa68d9b1373711ad6f163294 to
7282cbd90cf5cd0ca8a1c8a01d3fed520f04eb2f -
Bump the github-actions group with 2 updates #640
f05a536Bumps the github-actions group with 2 updates: actions/upload-artifact and
astral-sh/setup-uv.Updates
actions/upload-artifactfrom 7.0.1 to 7.0.2Updates
astral-sh/setup-uvfrom 10.0.1 to 10.2.0 -
[breaking] Automate reviewed releases and command discovery #644
11f43ff
ci!: automate reviewed releases and command discovery
- Publish stable, immutable GitHub Releases through shared release gates,
clean Cargo verification, deployment approval, and crates.io OIDC. - Leave verified benchmark assets on the draft for maintainer publication.
- Generate complete Just help and align documentation ownership and release
instructions with la-stack, including declared release dates. - Refresh Cargo dependencies, Python resolution, and managed tooling pins.
- Bump the github-actions group across 1 directory with 4 updates #646
bdde9d3
build(deps): bump the github-actions group across 1 directory with 4 updates
Bumps the github-actions group with 4 updates in the / directory: github/codeql-action/upload-sarif,
astral-sh/setup-uv, github/codeql-action/init and
github/codeql-action/analyze.
Updates github/codeql-action/upload-sarif from 4.38.2 to 4.38.3
Updates astral-sh/setup-uv from 10.0.1 to 10.3.0
Updates github/codeql-action/init from 4.38.2 to 4.38.3
Updates github/codeql-action/analyze from 4.38.2 to 4.38.3
-
Adopt research-repo-tools v0.2.3 #651
d98d835- Pin shared tooling to v0.2.3 and refresh locked Python dependencies and managed tool versions.
- Delegate Python dependency updates to the shared all-projects workflow and expose optional maintenance commands.
- Use prebuilt formatters, prohibit notebook install cells, and report per-file coverage in CI.
- Add an opt-in Actions updater policy while retaining the publishing restrictions and scientific validation contracts.
-
Promote validated Cargo artifacts and align release commands #652
dba358a
ci: promote validated main Cargo artifacts for releases
- Retain exact-commit Cargo packages after native and default/all-feature validation.
- Revalidate immutable artifacts and frozen approval evidence before OIDC publication.
- Use shared Actions output transport and bound archive inspection and diagnostics.
- Document promotion recovery and refresh uv and locked Python tooling.
- Make paper tooling opt-in and refresh project guides #663
5fd85e0
build: make paper tooling opt-in and refresh project guides
- Keep paper dependencies, tool pins, recipes, and checks opt-in while sharing the root Python environment and lockfile.
- Move paper CI helpers under papers and run the paper workflow only by manual dispatch.
- Refresh README scope, limitations, roadmap, security badges, contributor guidance, and project provenance for the v0.8.3 preparation.
- Update the locked sse-starlette and starlette dependencies while retaining compatibility overrides and historical release evidence.
Refs acgetchell/Papers#1
ci: align Codacy checks with test and badge conventions
- Apply the existing Codacy test exclusion to the optional paper tests while retaining local Python validation.
- Scope the inline-HTML exception to the compact README badge rows.
- Link contributor command discovery to the canonical README Quickstart.
docs: clarify the upstream tooling adoption condition
- Describe the published upstream capabilities required before retiring local orchestration.