From aba1e3738991c90b3a747281624bd7a102147753 Mon Sep 17 00:00:00 2001 From: anti Date: Fri, 8 May 2026 18:34:23 -0400 Subject: [PATCH] feat(profiler/behave_shell): H.5-pre extractor version marker (0.1.0-pre) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit decnet.profiler.behave_shell.__version__ = '0.1.0-pre'. The -pre suffix is honest: the extractor is feature-complete (37/37 Tier-A primitives emit, calibration grid honest), but the engine package — worker wiring, observations writes, AttackerDetail panel — still rides BEHAVE-INTEGRATION.md Phase 4. The actual 0.1.0 tag lands when Phase 4 lands. The marker version-tracks the engine, not the spec library (decnet-behave-shell already at 0.1.0); they version independently. --- decnet/profiler/behave_shell/__init__.py | 9 ++++++- .../behave_shell/test_version_marker.py | 26 +++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 tests/profiler/behave_shell/test_version_marker.py diff --git a/decnet/profiler/behave_shell/__init__.py b/decnet/profiler/behave_shell/__init__.py index d8a2988b..420ced05 100644 --- a/decnet/profiler/behave_shell/__init__.py +++ b/decnet/profiler/behave_shell/__init__.py @@ -15,4 +15,11 @@ from decnet.profiler.behave_shell.extract import ( extract_session, ) -__all__ = ["DEFAULT_SOURCE", "build_context", "extract_session"] +# Phase H.5-pre: extractor is feature-complete (37/37 Tier-A primitives +# emit; calibration grid honest). The ``-pre`` suffix stays until +# ``BEHAVE-INTEGRATION.md`` Phase 4 lands the worker wiring + observations +# table writes + AttackerDetail panel; only then does H.5 proper drop the +# suffix and tag v0. +__version__ = "0.1.0-pre" + +__all__ = ["DEFAULT_SOURCE", "build_context", "extract_session", "__version__"] diff --git a/tests/profiler/behave_shell/test_version_marker.py b/tests/profiler/behave_shell/test_version_marker.py new file mode 100644 index 00000000..1c8fe9b8 --- /dev/null +++ b/tests/profiler/behave_shell/test_version_marker.py @@ -0,0 +1,26 @@ +"""Step H.5-pre: extractor ``__version__`` marker. + +The version marker is the engine's own identifier; it does NOT need +to track ``decnet-behave-shell`` (the spec library) — they version +independently. v0 of the spec is already shipped; v0 of the engine +ships once worker wiring lands. +""" +from __future__ import annotations + +import re + +import decnet.profiler.behave_shell as behave_shell + + +def test_version_marker_present_and_well_formed() -> None: + assert hasattr(behave_shell, "__version__"), ( + "decnet.profiler.behave_shell must export __version__" + ) + assert re.match(r"^0\.1\.0(?:-pre)?$", behave_shell.__version__), ( + f"unexpected version: {behave_shell.__version__!r}; " + "expected 0.1.0 or 0.1.0-pre" + ) + + +def test_version_in_dunder_all() -> None: + assert "__version__" in behave_shell.__all__