Skip to content

PRAXO-CORE 2.3.4

Choose a tag to compare

@github-actions github-actions released this 24 Oct 03:26
· 42 commits to main since this release

PRAXO-CORE 2.3.4

Released: 2026-10-24

This patch corrects the declared JSON Schema subset so validation no longer
silently accepts invalid values, and adds HTTP client failure-path coverage. It
changes no exported pkg/... declarations.

JSON Schema Semantics

  • Typed schemas reject nil instead of treating it as absent data.
  • integer rejects fractional numbers.
  • enum applies to numbers and booleans as well as strings.
  • pattern is a Go/RE2 regular expression, matching JSON Schema intent rather
    than the previous glob behavior.
  • minLength and maxLength count Unicode code points instead of bytes.

The package remains a deliberately small subset. It ignores unsupported
keywords such as $ref, allOf, anyOf, oneOf, not,
additionalProperties, and format; a minimum or maximum of zero is treated
as unset. Use a full JSON Schema library when those keywords are required.

HTTP Client Coverage

New tests exercise GET retries on 5xx, non-idempotent POST behavior,
cancellation during backoff, disabled response body bounds, request-header
precedence, malformed JSON decoding, and base-URL path joining. This is test
coverage for existing behavior, not a new retry contract.

Verification

  • Full core tests, vet/build, Linux race/fuzz, staticcheck, and govulncheck.
  • Three-platform tests and strict bilingual documentation build.
  • Nine independent modules retain their Linux race and vulnerability checks.
  • Exported declarations are unchanged from 2.3.3; the API snapshot differs only
    in the package documentation for the JSON Schema subset.

These checks do not establish production, deployed remote-peer, complete v2 IAM,
instance-lease, LIMENORA reverse-ingress, or external benchmark validation.

Upgrade

go get github.com/axisvela/praxo-core/v2@v2.3.4

Use Go 1.26.10, the tested toolchain. No source migration is required from
2.3.3. Optional adapter versions are unchanged.

Release Tag

No signing key was configured for this release environment. The tag is
annotated rather than cryptographically signed; checksums and an SBOM are
published by the release workflow.

Evidence Boundaries

This release does not establish production, deployed remote-peer, complete v2 IAM, instance-lease, LIMENORA reverse-ingress, or external benchmark validation. The release tag is annotated but not cryptographically signed.

Assets

  • Source archive: praxo-core-2.3.4.tar.gz
  • SBOM: sbom.json
  • Checksums: SHA256SUMS