From 583f329d00d8daf0fa7206e0f36a454883bad3e1 Mon Sep 17 00:00:00 2001 From: Vuong Hoang Date: Fri, 28 Aug 2026 16:15:34 -0700 Subject: [PATCH] =?UTF-8?q?fix(playbooks):=203.1.1=20deploy=20=E2=80=94=20?= =?UTF-8?q?and=20why=20the=20markers=20match=20presence,=20not=20count?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Deploys althing-core 3.1.1 to nh3-extdev. Both markers present on both boxes; the warning verified behaviourally in four conditions rather than by grep alone -- mismatched inherited handle warns, matching handle silent, explicit --handle silent, unlaunched directory silent, and the warning precedes the output it is about. The release's own verification line says `grep -c handles_launched_at dev_launch.py # 2+`. The real count there is 1, the definition; the other two occurrences are in postbox.py. The installed tree is byte-identical to the repo at the pushed tag, so the instruction is wrong rather than the install. This playbook matches on presence via grep -q, so it passed. Had it asserted the stated count it would have reported FAILED on a perfect deploy -- a verification instruction that fails on correct input, which is the same false-negative this file has now produced three times in different costumes. Recorded above the variable so the next bump does not reintroduce a count. --- playbooks/nh3-extdev-althing-v3.yaml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/playbooks/nh3-extdev-althing-v3.yaml b/playbooks/nh3-extdev-althing-v3.yaml index 0ce8445..5dbd57c 100644 --- a/playbooks/nh3-extdev-althing-v3.yaml +++ b/playbooks/nh3-extdev-althing-v3.yaml @@ -19,8 +19,8 @@ # Rerunnable: a second run shows the install and unit steps skipped. vars: - wheel_src: /home/lkraven/development/althing/dist/althing_core-3.1.0-py3-none-any.whl - wheel_dest: /tmp/althing_core-3.1.0-py3-none-any.whl + wheel_src: /home/lkraven/development/althing/dist/althing_core-3.1.1-py3-none-any.whl + wheel_dest: /tmp/althing_core-3.1.1-py3-none-any.whl uv: /home/infra-ops/.local/bin/uv tool_dir: /opt/uv-tools bin_dir: /usr/local/bin @@ -33,12 +33,18 @@ vars: # 3.0.1 zellij.py:_PANE_ID session_source.py:_live_pid (pane routes) # 3.0.3 post_office_herald.py:PANE_SETTLE_S (write/submit race) # 3.1.0 post_office_herald.py:POST_OFFICE_HINT dev_launch.py:resolve_post_office - markers: "post_office_herald.py:POST_OFFICE_HINT dev_launch.py:resolve_post_office" + # 3.1.1 postbox.py:warn_if_handle_looks_wrong dev_launch.py:handles_launched_at + # + # ⚠ Match on PRESENCE (grep -q), never on a count. 3.1.1 shipped with a stated + # expectation of "grep -c handles_launched_at dev_launch.py # 2+"; the real count + # there is 1 (the definition) with the other two occurrences in postbox.py. A count + # assertion would have reported FAILED on a byte-perfect install. + markers: "postbox.py:warn_if_handle_looks_wrong dev_launch.py:handles_launched_at" steps: - name: Stage the v3.0.0 wheel upload: - src: /home/lkraven/development/althing/dist/althing_core-3.1.0-py3-none-any.whl + src: /home/lkraven/development/althing/dist/althing_core-3.1.1-py3-none-any.whl dest: "{{ wheel_dest }}" mode: "0644"