Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ jobs:
run: |
python - <<'PY'
import agencitylab
assert agencitylab.__version__ == "1.1.2"
assert agencitylab.__version__ == "1.1.3"
print(agencitylab.__version__)
PY
- name: Pytest
Expand Down Expand Up @@ -217,15 +217,15 @@ jobs:
import numpy as np
import agencitylab as al

assert al.__version__ == "1.1.2"
assert al.__version__ == "1.1.3"
assert Path(al.__file__).with_name("py.typed").is_file()
xi = np.arange(128, dtype=float)
result = al.compute_agencity(
np.sin(0.07 * xi), xi, A_ref=1.0, tau=8.0, w=6.0, P_c=2.0
)
assert result.b.shape == xi.shape
assert np.all(np.isfinite(result.b))
assert result.metadata.agencitylab_version == "1.1.2"
assert result.metadata.agencitylab_version == "1.1.3"
assert al.reference.datasets.available_builtin() == ("canonical_regimes_v1",)
assert len(al.reference.datasets.load("canonical_regimes_v1")) == 3
print("wheel smoke test: PASS")
Expand All @@ -245,7 +245,7 @@ jobs:
import agencitylab.quantum as quantum
import agencitylab.thermodynamics as thermodynamics

assert al.__version__ == "1.1.2"
assert al.__version__ == "1.1.3"
xi = np.arange(64, dtype=float)
result = al.compute_agencity(
np.sin(0.2 * xi), xi, A_ref=1.0, tau=4.0, w=3.0, P_c=1.0
Expand All @@ -262,7 +262,7 @@ jobs:
- name: Upload distributions
uses: actions/upload-artifact@v4
with:
name: agencitylab-1.1.2-distributions
name: agencitylab-1.1.3-distributions
path: dist/
if-no-files-found: error

Expand Down
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,26 @@ identifiers are not part of the stable public compatibility contract.

No changes yet.

## 1.1.3 — 2026-08-19

### Fixed

- Stabilized beta-trajectory curvature under large but still numerically
resolvable translations by accounting for floating-point coordinate
resolution in the collinearity diagnostic.
- Made curvature arithmetic scale-safe across extreme representable trajectory
and parameter-axis scales by recentering and normalizing the numerical
geometry before rescaling the resulting curvature.
- Prevented intermediate floating-point overflow/underflow from being exposed
as misleading infinite curvature; numerically non-representable diagnostic
results remain explicitly undefined.

### Scientific integrity

- No canonical equation or physical/contextual parameter definition changed.
- The change is confined to beta-trajectory geometry diagnostics and does not
redefine `beta`, `Theta`, CRM, `P_c`, or `b`.

## 1.1.2 — 2026-08-19

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ cff-version: 1.2.0
message: "If you use AgencityLab in scientific work, please cite this software."
title: "AgencityLab"
type: software
version: 1.1.2
version: 1.1.3
date-released: 2026-08-19
authors:
- family-names: "BEMWIZ"
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
**A scientific Python framework for implementing, testing, and exploring the Theory of Agencity.**

<p>
<img src="https://img.shields.io/badge/version-1.1.2-2ea44f.svg" alt="AgencityLab 1.1.2">
<img src="https://img.shields.io/badge/version-1.1.3-2ea44f.svg" alt="AgencityLab 1.1.3">
<img src="https://img.shields.io/badge/Python-3.10--3.14-3776AB.svg?logo=python&logoColor=white" alt="Python 3.10-3.14">
<img src="https://img.shields.io/badge/core-NumPy-013243.svg?logo=numpy&logoColor=white" alt="NumPy core">
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="MIT License">
Expand Down
2 changes: 1 addition & 1 deletion agencitylab/version.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Package version."""

__version__ = "1.1.2"
__version__ = "1.1.3"
13 changes: 7 additions & 6 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,12 +53,13 @@ references/glossary

## Project status

AgencityLab `1.1.2` is the current stable public software release. This patch
release hardens numerical beta-trajectory curvature and structural phase-turn
mask handling discovered during post-1.1.1 validation, without changing the
canonical equations. Version `1.1.1` hardened runtime validation and regime
diagnostics; `1.1.0` introduced the reference library, and `1.0.0` remains the
first stable compatibility baseline.
AgencityLab `1.1.3` is the current stable public software release. This patch
release hardens numerical beta-trajectory curvature against large resolvable
translations and extreme representable scales without changing the canonical
equations. Version `1.1.2` hardened curvature around unresolved velocity and
structural phase-turn mask handling; `1.1.1` hardened runtime validation and
regime diagnostics, `1.1.0` introduced the reference library, and `1.0.0`
remains the first stable compatibility baseline.

Use the [scientific API map](api_map.md) first. The main scalar entry point is
`agencitylab.compute_agencity`; interpretation belongs under
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "hatchling.build"

[project]
name = "agencitylab"
version = "1.1.2"
version = "1.1.3"
description = "Scientific framework for the theory of Agencity"
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.10"
Expand Down
2 changes: 1 addition & 1 deletion tests/fields/test_classical_field_primitives.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ def _periodic_grid(n: int = 32) -> UniformRectilinearGrid:

def test_dynamics_status_and_public_boundary_are_research_only():
assert SCIENTIFIC_STATUS is ScientificStatus.RESEARCH
assert agencitylab.__version__ == "1.1.2"
assert agencitylab.__version__ == "1.1.3"
assert fields_api.simulate_klein_gordon is not None
assert not hasattr(agencitylab, "simulate_klein_gordon")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@


def test_public_foundations_are_exposed_with_expected_statuses():
assert agencitylab.__version__ == "1.1.2"
assert agencitylab.__version__ == "1.1.3"
assert agencitylab.ScientificStatus.RESEARCH is ScientificStatus.RESEARCH
assert agencitylab.DynamicalAgencityFieldState is DynamicalAgencityFieldState
assert fields_api.QuarticAgencityPotential is QuarticAgencityPotential
Expand Down
2 changes: 1 addition & 1 deletion tests/integration/test_v113_thermo_gravity_integration.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ def test_field_entropy_is_global_u1_invariant():


def test_selected_research_apis_are_namespaced_without_redefining_scalar_core():
assert agencitylab.__version__ == "1.1.2"
assert agencitylab.__version__ == "1.1.3"
assert callable(thermodynamics.temperature_dependent_lambda)
assert callable(thermodynamics.modulus_law_margin)
assert callable(thermodynamics.phase_law_prediction)
Expand Down
8 changes: 4 additions & 4 deletions tests/release/test_release_candidate.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,11 @@ def test_release_metadata_is_consistent():
citation = (ROOT / "CITATION.cff").read_text(encoding="utf-8")
license_text = (ROOT / "LICENSE").read_text(encoding="utf-8")

assert al.__version__ == "1.1.2"
assert 'version = "1.1.2"' in pyproject
assert al.__version__ == "1.1.3"
assert 'version = "1.1.3"' in pyproject
assert "Development Status :: 5 - Production/Stable" in pyproject
assert "Typing :: Typed" in pyproject
assert "version: 1.1.2" in citation
assert "version: 1.1.3" in citation
assert "date-released: 2026-08-19" in citation
assert "license: MIT" in citation
assert "Permission is hereby granted" in license_text
Expand All @@ -57,7 +57,7 @@ def test_quickstart_compute_analyze_export_roundtrip(tmp_path):
xi, u = _signal()
result = _compute(xi, u, unit="rad", coordinate_unit="s", power_unit="W")

assert result.metadata.agencitylab_version == al.__version__ == "1.1.2"
assert result.metadata.agencitylab_version == al.__version__ == "1.1.3"
np.testing.assert_allclose(result.S, np.hypot(result.M, result.O))
expected_beta = np.zeros_like(result.beta)
mask = result.S > 0.0
Expand Down
2 changes: 1 addition & 1 deletion tests/thermodynamics/test_unified_thermodynamics.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@


def test_thermodynamics_remains_research_in_its_explicit_namespace():
assert agencitylab.__version__ == "1.1.2"
assert agencitylab.__version__ == "1.1.3"
assert DISSIPATION_STATUS is ScientificStatus.RESEARCH
assert TEMPERATURE_STATUS is ScientificStatus.RESEARCH
assert ENTROPY_STATUS is ScientificStatus.RESEARCH
Expand Down
Loading