Skip to content

Release span-panel-api 3.8.0b1 and span-panel-api-schema-1 1.4.0b1 - #211

Merged
cayossarian merged 7 commits into
prerelease/3.8from
chore/release-3.8.0b1
Oct 9, 2026
Merged

cayossarian merged 7 commits into
prerelease/3.8from
chore/release-3.8.0b1

Conversation

@cayossarian

Copy link
Copy Markdown
Member

Release span-panel-api 3.8.0b1 and span-panel-api-schema-1 1.4.0b1 from prerelease/3.8.

  • Versions: span-panel-api 3.8.0b1; span-panel-api-schema-1 1.4.0b1, floor span-panel-api>=3.8.0b1,<4.0; span-panel-api-schema-0 stays 1.3.0b1, as on main. The core's schema-1 extra floors on 1.4.0b1. uv.lock updated.
  • Changelogs: no heading for the beta. Under [Unreleased], the core and schema-1 changelogs carry the one line for this release, and schema-1's records the moved reference tree (a changed capture is a release of the adapter that ships it). The core changelog also marks SpanCircuitSnapshot.is_240v and SpanPanelSnapshot.lugs_at_service_entrance becoming bool | None as breaking for consumers.
  • The expected-failure registry's stale-row check reads the named files from disk, so a row naming a missing file or test stops every run, partial runs included, with no false alarm; first_position's docstring and the extras' changelog floors are corrected.
  • AGENTS.md: what to keep current when a snapshot field or adapter read changes (field metadata and discovery, conformance, the public API, the adapter fidelity harness), how the harness rules, pinned drops and capture cells work, the expected-failure registry, and the byte-pinned captures and reference tree, pointing to DEVELOPMENT.md and RELEASE.md. CLAUDE.md imports it.

Checks:

  • pytest tests -q: 1856 passed, 7 skipped, 9 xfailed.
  • pre-commit run --all-files: all hooks pass.
  • uv build of all three distributions; twine check: 6 of 6 passed. Requires-Dist: schema-1 span-panel-api<4.0,>=3.8.0b1, schema-0 span-panel-api<4.0,>=3.7.0b1, core extras schema-0>=1.3.0b1, schema-1>=1.4.0b1.
  • Dry-run install of span-panel-api==3.8.0b1, span-panel-api-schema-0==1.3.0b1 and span-panel-api-schema-1==1.4.0b1 from the built wheels into a clean environment resolves.

AGENTS.md, for any maintainer or coding agent: the rule that an
unpublished value is None, never a constant; the tables a new snapshot
field or adapter read must reach (field metadata and discovery,
conformance, the public API and the adapter fidelity harness); how the
harness rules, pinned drops and capture cells work; the expected-failure
registry; and the byte-pinned captures and the reference tree. It points
to DEVELOPMENT.md and RELEASE.md for procedures. CLAUDE.md imports it.
span-panel-api 3.8.0b1 and span-panel-api-schema-1 1.4.0b1; schema-0
stays at 1.3.0b1, as on main. schema-1 floors on span-panel-api 3.8.0b1,
whose snapshot fields it fills, and the core schema-1 extra floors on
1.4.0b1. The changelogs carry the one line for this release under
[Unreleased], and schema-1's records the moved reference tree.
The docstring still described the range as widened to occupied spaces
outside the model's range. It is the table's range, and the adapter
warns once for a panel whose circuits fall outside it.
The schema-1 extra floors on 1.4.0, not 1.3.0; the schema-0 extra stays
on 1.3.0.
SHA256SUMS pins the captures and the LICENSE; README.md and SHA256SUMS
themselves are records the check does not pin.
The stale-row check judged only rows whose file the run had collected,
so a renamed or deleted test file left its rows marking nothing. It now
reads each named file from disk and requires the test to be defined
there, at module level or on a Test class, before any test runs; a
partial run judges every row exactly as a full run does, with no false
alarm while the rows hold. Tests pin a missing file, a missing test, a
non-test and a method off a Test class as stale, a partial run stopping
on one, and the registry itself as clean. AGENTS.md and the registry
docstring describe it.
… optional

Both snapshot fields become bool | None for consumers: is_240v is None
where the pole count is unpublished, and lugs_at_service_entrance while
the upstream lugs declare their feed but leave it unpublished.
@cayossarian
cayossarian merged commit 8967349 into prerelease/3.8 Oct 9, 2026
5 checks passed
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.

1 participant