Skip to content

Delivery pipeline doctrine: cheap checks before the heavy slot, a settled base after the grant, merged rerun receipts, zero-worker pool alarm - #2169

Merged
remigiusz-antczak merged 1 commit into
mainfrom
land/wave-17
Oct 31, 2026
Merged

remigiusz-antczak merged 1 commit into
mainfrom
land/wave-17

Conversation

@remigiusz-antczak

Copy link
Copy Markdown
Collaborator

Summary

5 delivery-doctrine rules for the slowdowns a shared heavy slot causes, each with an eval case.

  • Cheap, fast-failing checks (mergeability, receipts present, fresh base, lint) run before queueing for a heavy slot.
  • The tested union is composed after the grant, once the previous holder's landing has settled, with the idle wait bounded to one landing. A stage ends early when the base moves on a path the union touches; landing still needs the proven base.
  • A rerun of only the failing tests merges into the original receipt, both raw counts kept, so the next full-count gate does not force a second full run.
  • A check pool at 0 workers while ready work waits raises an alarm instead of reading as a slow queue.

The text says which rules shipped scripts enforce and which are doctrine only. A review's four fix-first items are fixed here.

Verification

Run on this head:

  • evals.json parses (301 cases, unique ids); run-evals.py --selftest ok.
  • Changelog fragments 23/23, fragments gate and size ratchet ok.
  • run-ci-tests.sh --affected: 13 of 294 tests selected, all passed.
  • Privacy, identity and secret checks clean.

🤖 Generated with Claude Code

…tled base after the grant, merged rerun receipts, zero-worker pool alarm

Generic delivery-pipeline slowdown patterns, each with one home and an
eval case.

merge-queue-worktrees.md gets a section next to "A heavy slot guards the
contended stage, not the whole train" (unchanged): run the cheap,
fast-failing preconditions before queueing for a heavy slot; compose the
tested union after the grant, once the previous holder's landing has
settled, with the idle wait bounded to one landing and union-dependent
build steps inside the grant; end the stage early when the base moves on a
path the union touches, which decides only when to abort (landing still
needs the proven base). A closing paragraph says what the shipped scripts
enforce: train_land.sh waits out a landing train's push lock once, at
train start, and land_train.sh only warns on a moved base for a non-split
train; the recompose after the grant and the mid-stage compare are
doctrine only.

pipeline-optimizer.md gets two bullets: a rerun of only the failing tests
merges into the original run's receipt on the same tree, with both runs'
raw count strings kept beside the merged count, and never replaces it; and
a check pool at 0 workers fails silently, so alarm on 0 workers while
ready work waits (doctrine only; landing_watchdog.py is its natural home).

Mechanism: five cases in agentic-delivery evals.json covering the five
rules, prompts that do not state their own answers. Size-budget raises are
recorded in changelog.d/pipeline-patterns.md.

Tests: agentic-delivery evals.json parses, 301 cases with unique ids;
run-evals --selftest ok; test-changelog-fragments 23/23; fragments gate
ok; run-ci-tests --affected selected 13 of 294 registered tests, all
passed.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@remigiusz-antczak
remigiusz-antczak merged commit 2160cd1 into main Oct 31, 2026
11 checks passed
@remigiusz-antczak
remigiusz-antczak deleted the land/wave-17 branch October 31, 2026 16:12
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