Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion scripts/gate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -293,7 +293,7 @@ assert_floor_not_lowered() {
printf 'this tree %s < %s %s — reason: %s\n' "$ours" "$target" "$theirs" "$CK_GATE_FLOOR_LOWER_REASON"
return
fi
fail "floor ratchet: this tree's workspace floor is $ours but $target ($target_sha) carries $theirs — a branch forked before a raise lowers it silently and every gate still passes; rebase and re-measure on the merged tree, or set CK_GATE_FLOOR_LOWER_REASON"
fail "floor ratchet: this tree's workspace floor is $ours but $target ($target_sha) carries $theirs — a squash does NOT carry a stale floor onto master (the diff wins, and a branch that edits this line conflicts loudly), so the way a raise actually gets dropped is a human resolving that conflict with --ours, or a hand-edit here; re-measure on the merged tree, or set CK_GATE_FLOOR_LOWER_REASON"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P3: The new failure message refutes the doc comment directly above assert_floor_not_lowered, which still asserts the mechanism this PR is correcting. The comment at scripts/gate.sh:234-235 says a fork-before-raise branch "carries the OLD number forward in this file and merges green, silently reverting the raise", while the new message says "a squash does NOT carry a stale floor onto master (the diff wins, and a branch that edits this line conflicts loudly)" and that the raise is dropped only by a --ours resolution or a hand-edit. A reader debugging a gate failure now gets two mutually exclusive explanations of the same hazard in one function. Update the comment block (including the "Live instance" paragraph) to the corrected mechanism, or the file's own rationale rebuilds the confusion the PR set out to remove.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At scripts/gate.sh, line 296:

<comment>The new failure message refutes the doc comment directly above `assert_floor_not_lowered`, which still asserts the mechanism this PR is correcting. The comment at scripts/gate.sh:234-235 says a fork-before-raise branch "carries the OLD number forward in this file and merges green, silently reverting the raise", while the new message says "a squash does NOT carry a stale floor onto master (the diff wins, and a branch that edits this line conflicts loudly)" and that the raise is dropped only by a --ours resolution or a hand-edit. A reader debugging a gate failure now gets two mutually exclusive explanations of the same hazard in one function. Update the comment block (including the "Live instance" paragraph) to the corrected mechanism, or the file's own rationale rebuilds the confusion the PR set out to remove.</comment>

<file context>
@@ -293,7 +293,7 @@ assert_floor_not_lowered() {
       return
     fi
-    fail "floor ratchet: this tree's workspace floor is $ours but $target ($target_sha) carries $theirs — a branch forked before a raise lowers it silently and every gate still passes; rebase and re-measure on the merged tree, or set CK_GATE_FLOOR_LOWER_REASON"
+    fail "floor ratchet: this tree's workspace floor is $ours but $target ($target_sha) carries $theirs — a squash does NOT carry a stale floor onto master (the diff wins, and a branch that edits this line conflicts loudly), so the way a raise actually gets dropped is a human resolving that conflict with --ours, or a hand-edit here; re-measure on the merged tree, or set CK_GATE_FLOOR_LOWER_REASON"
     return
   fi
</file context>

return
fi

Expand Down