From f9824701becd951cbedcbba01ce77ebb52e20d55 Mon Sep 17 00:00:00 2001 From: arpan Date: Wed, 16 Sep 2026 04:03:41 +0530 Subject: [PATCH] Record the adapters as 1.3.0, which is what PyPI has served since 09-15 `adapters/PUBLISHED.toml` said 1.2.0 / `<0.12`. Both adapters were tagged and uploaded at 1.3.0 / `<0.13` on 2026-09-15 and nobody came back to the record, which is the fourth release running that this file has gone stale, in the file that documents the other three. **A stale record does not merely misinform: it switches the guard off.** `test_a_widened_kernel_range_is_not_shipped_without_a_new_version` returns early when the tree and the record disagree *and* the tree's version is higher, because that is indistinguishable from a correct pending release. Probed both ways on this branch, with the tree widened to `<0.14` and no version bump, which is the exact defect the test exists to catch: record 1.2.0 (stale) 2 passed <- the widening ships unnoticed record 1.3.0 (fixed) 1 failed <- assert '1.3.0' != '1.3.0' So this is not bookkeeping. It is the check coming back on. `RECORDED` gains the 1.3.0 row so that range is frozen as the historical fact it is. The header now carries the fourth recurrence and says what would actually end it: `publish.yml` refusing to upload an adapter whose version and range this file does not already record, which makes the record a precondition of the upload rather than a chore after it. Not built here. It reverses the rule the file currently states and belongs in its own change. Signed-off-by: arpan --- adapters/PUBLISHED.toml | 18 ++++++++++++++---- tests/test_packaging.py | 14 ++++++++++++-- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/adapters/PUBLISHED.toml b/adapters/PUBLISHED.toml index 2363fb3d..e00bf03f 100644 --- a/adapters/PUBLISHED.toml +++ b/adapters/PUBLISHED.toml @@ -37,6 +37,16 @@ # A record edited to match a claim is not a record. `RECORDED` in `test_packaging.py` freezes the # range each published version declares, so raising one without a new version now fails. # +# **And a fourth time, 0.12.0.** Both adapters were tagged and published at 1.3.0 with `<0.13` on +# 2026-09-15, and this file sat at 1.2.0 / `<0.12` until 2026-09-16, found while checking whether a +# 0.12.2 kernel needed an adapter release. Same shape as the third: the guard reads a tree ahead of +# the record as a correct pending release, which is exactly what it looks like, and the upload is +# the last thing that happens so there is nothing after it to remind anyone. Four for four says the +# rule is not the fix. What would be: `publish.yml` refusing to upload an adapter whose version and +# kernel range this file does not already record, which makes the record a precondition of the +# upload instead of a chore after it. Not built; it reverses the rule above and belongs in its own +# change. +# # The tag carries NO `v`. `publish.yml` reads an adapter tag as everything after the last hyphen, # so `adapters-langgraph-1.1.0` names 1.1.0 and `adapters-langgraph-v1.1.0` names `v1.1.0` and is # refused. The `v` prefix belongs to kernel tags, where the workflow strips it. `MAJOR.MINOR` is @@ -48,9 +58,9 @@ # that gets skipped in the run that mattered. [langgraph] -version = "1.2.0" -kernel = ">=0.5,<0.12" +version = "1.3.0" +kernel = ">=0.5,<0.13" [openai-agents] -version = "1.2.0" -kernel = ">=0.5,<0.12" +version = "1.3.0" +kernel = ">=0.5,<0.13" diff --git a/tests/test_packaging.py b/tests/test_packaging.py index 9dc0256f..7781c100 100644 --- a/tests/test_packaging.py +++ b/tests/test_packaging.py @@ -904,8 +904,18 @@ def test_a_widened_kernel_range_is_not_shipped_without_a_new_version(adapter): #: #: Checked 2026-09-14, during the 0.11.0 release pass, for both adapters at both versions. RECORDED: dict[str, dict[str, str]] = { - "langgraph": {"1.0.0": ">=0.5,<0.6", "1.1.0": ">=0.5,<0.11", "1.2.0": ">=0.5,<0.12"}, - "openai-agents": {"1.0.0": ">=0.5,<0.6", "1.1.0": ">=0.5,<0.11", "1.2.0": ">=0.5,<0.12"}, + "langgraph": { + "1.0.0": ">=0.5,<0.6", + "1.1.0": ">=0.5,<0.11", + "1.2.0": ">=0.5,<0.12", + "1.3.0": ">=0.5,<0.13", + }, + "openai-agents": { + "1.0.0": ">=0.5,<0.6", + "1.1.0": ">=0.5,<0.11", + "1.2.0": ">=0.5,<0.12", + "1.3.0": ">=0.5,<0.13", + }, }