Skip to content

release-train: staging -> main - #616

Merged
tracebloc-release-train[bot] merged 4 commits into
mainfrom
release-train/to-main
Sep 1, 2026
Merged

release-train: staging -> main#616
tracebloc-release-train[bot] merged 4 commits into
mainfrom
release-train/to-main

Conversation

@LukasWodka

@LukasWodka LukasWodka commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Automated promotion by the release train (RFC-0008 D14). Head is the train-managed release-train/to-main branch (a mirror of staging), so it never collides with a human PR. Merged only when the fr-gate is green.


Note

Medium Risk
Ingest JSON table semantics change for clusters that report a physical destination table (scripts that assumed the label may need updating); the installer change is localized but security-critical on Windows.

Overview
Release v0.10.19 fixes ingest naming for per-ingestion-table clusters and unblocks the Windows installer when cosign verification succeeds.

Ingest / --output-json (backend#2895): The ingestor banner’s Destination table line is parsed into submit.Summary.DestinationTable. Human output shows destination table when present; JSON table prefers that physical ds_<hex> handle over the operator’s --name label, with fallback to the requested name for legacy ingestors or nil summary on errors. Tests cover parser, JSON writer, and legacy banners.

Windows install.ps1: cosign verify-blob now runs inside the same $ErrorActionPreference = 'Continue' window already used for cosign version, so PowerShell 5.1 does not treat cosign’s success stderr (“Verified OK”) as a terminating error and abort a valid install. install-ps1-verify.sh asserts every native & $... call has such a window.

Reviewed by Cursor Bugbot for commit 6d38afb. Bugbot is set up for automated code reviews on this repo. Configure here.

LukasWodka and others added 4 commits August 31, 2026 14:35
#611)

cosign writes "Verified OK" to STDERR on the SUCCESS path. Windows
PowerShell 5.1 turns native-command stderr into a NativeCommandError
record, and this installer runs under `$ErrorActionPreference = 'Stop'`
(line 27), so that record is TERMINATING -- the install dies at the exact
moment verification passes. `2>$null` does not save it: 5.1 raises the
record before the redirection applies.

Measured on a real Windows 11 box against the published v0.10.17
installer:

    Verifying cosign signature...
    cosign.exe : Verified OK
    +             & $cosign verify-blob `
    + FullyQualifiedErrorId : NativeCommandError

...and nothing was installed. So `tracebloc` cannot currently be
installed on Windows at all. It also takes tracebloc/client's installer
with it: Step 4 fails, which drops Step 5 to manual sign-in and Step 6 to
the hand-typed credential prompt -- observed on the same machine.

INVISIBLE ON POWERSHELL 7, which is why it survived: pwsh 7 does not make
error records out of native stderr, so this passes wherever it is tested
and fails on the Windows default. Verified both ways here.

THIS FILE ALREADY HELD THE FIX, 230 LINES UP. `Test-CosignRuns` opens
exactly this `$ErrorActionPreference = 'Continue'` window for
`cosign version` and explains why. The idiom was simply never applied to
the call that matters.

Not piped to Out-Null: `$LASTEXITCODE` is the entire verdict here and
piping a native command through a cmdlet is a documented way to lose it.
The window makes the record non-terminating; `2>$null` still discards the
text, so a real verification failure is unchanged -- it still exits 1.

Fixes the CLASS, not the instance: install-ps1-verify.sh now asserts that
every `& $...` invocation sits inside an ErrorActionPreference window
(2 calls, 2 windows), with a vacuity floor so it cannot pass by finding
none. Confirmed it reddens when the window is removed.

scripts/tests/install-ps1-verify.sh: 11 passed. shellcheck clean.
(The one behavioural-tier failure is pre-existing and environmental -- it
finds a real cosign on this machine's PATH; identical on an unmodified
tree.)

Co-authored-by: shujaat hasan <shujaathasan@shujaats-MacBook-Pro.local>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
…kend#2790) (#615)

The 2026-08-31 staging settle refused cli:

  rc NOT tagged - v0.10.18 already exists and the delta DOES touch published
  files (bump VERSION on develop before the next release)

v0.10.18 is tagged and the staging->develop delta touches `internal/*` and
`scripts/install.ps1`, both declared publish paths. Re-tagging would make one tag
name two different trees.

PATCH, measured. Two commits, both `fix`:
  fix(ingest): report the physical destination table, not the requested name
  fix(install): a VERIFIED signature no longer kills the Windows install (#611)
No feat, nothing breaking, so 0.10.18 -> 0.10.19.

FIFTH INSTANCE OF THIS TODAY, and the count is the point. design-system-v2 hit
it twice (v0.1.0, v0.1.1) and this is cli's turn; a fourth apparent case on
design-system-v2 today turned out to be a STALE MIRROR rather than a missing
bump, which is its own argument for automating the distinction instead of
eyeballing it. Every release needs the bump the NEXT release is refused without,
and doing it by hand means a refused settle is how we find out.

`.github#372` builds `post-release-bump.yml` for exactly this. This repo needs
its caller; that is the third checkbox on backend#2790.

Part of tracebloc/backend#2790
@LukasWodka

Copy link
Copy Markdown
Contributor Author

bugbot run

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit 6d38afb. Configure here.

@tracebloc-release-train tracebloc-release-train Bot added gate-nudge Toggled by the release train to (re-)fire the fr-gate and removed gate-nudge Toggled by the release train to (re-)fire the fr-gate labels Sep 1, 2026
@tracebloc-release-train
tracebloc-release-train Bot merged commit 17b6355 into main Sep 1, 2026
54 of 58 checks passed
@tracebloc-release-train
tracebloc-release-train Bot deleted the release-train/to-main branch September 1, 2026 06:20
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.

2 participants