Skip to content

docs(ledger): record PR #1322 review outcome - #1401

Merged
BigSimmo merged 2 commits into
mainfrom
claude/ledger-followup-pr1322
Jul 30, 2026
Merged

docs(ledger): record PR #1322 review outcome#1401
BigSimmo merged 2 commits into
mainfrom
claude/ledger-followup-pr1322

Conversation

@BigSimmo

@BigSimmo BigSimmo commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Summary

Verification

  • npm run check:branch-review-ledger — passed (1266 records, union merge active, no conflict markers/duplicates)

Risk and rollout

  • Risk: low; single-line docs-only ledger append, zero code/behavior change.
  • Rollback: revert this commit.
  • Provider or production effects: None.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation
    • Added a ledger entry documenting the reviewed policy exception, merge resolution, and validation status.
    • Recorded that standard checks passed, while selected test and fixture checks were deferred to hosted CI.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

A single ledger entry was added to document the branch’s docs-only policy carve-out, merge context, passing self-checks, and fixture tests deferred to hosted CI.

Changes

Branch review ledger

Layer / File(s) Summary
Add branch review record
docs/branch-review-ledger.md
Records the branch’s reopen and merge context, squash auto-merge status, passing workflow checks, and fixture tests deferred to hosted CI.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

Suggested reviewers: cursoragent, claude

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and accurately summarizes the docs-only ledger update for PR #1322.
Description check ✅ Passed The description matches the template well, covering summary, verification, and risk/rollback with only minor omissions.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Comment @coderabbitai help to get the list of available commands.

@supabase

supabase Bot commented Jul 30, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@BigSimmo
BigSimmo enabled auto-merge (squash) July 30, 2026 03:43
@BigSimmo
BigSimmo disabled auto-merge July 30, 2026 03:50
@BigSimmo
BigSimmo enabled auto-merge (squash) July 30, 2026 04:11
@BigSimmo

Copy link
Copy Markdown
Owner Author

@cursoragent resolve merge conflict

@cursor

cursor Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Merge conflict on #1401 is cleared.

  • Merged origin/main into claude/ledger-followup-pr1322 — it was ledger staleness (union merge), not a real content fight
  • npm run check:branch-review-ledger passed (1275 records)
  • Pushed tip 5a92446e

PR is MERGEABLE again (BLOCKED only while required checks catch up).

Open in Web Open in Cursor 

Clear GitHub DIRTY/CONFLICTING from concurrent branch-review-ledger appends (union merge).

Co-Authored-By: Cursor <cursoragent@cursor.com>

Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
docs/branch-review-ledger.md (1)

1315-1315: 📐 Maintainability & Code Quality | 🔵 Trivial

Run the required ledger lookup before merging. npm run ledger:lookup -- pr-policy-caveman-fix-6875bb --scope "PR #1322" returns NOT REVIEWED at this HEAD and scope.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/branch-review-ledger.md` at line 1315, Update the ledger entry for
pr-policy-caveman-fix-6875bb to record the required ledger lookup before
merging, including the command’s NOT REVIEWED result for PR `#1322` and its scope.

Source: Coding guidelines

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@docs/branch-review-ledger.md`:
- Line 1315: Update the ledger entry for pr-policy-caveman-fix-6875bb to record
the required ledger lookup before merging, including the command’s NOT REVIEWED
result for PR `#1322` and its scope.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 09deefa7-dd01-4efb-84f3-8aa19260c7cd

📥 Commits

Reviewing files that changed from the base of the PR and between b73299a and 5a92446.

📒 Files selected for processing (1)
  • docs/branch-review-ledger.md

@BigSimmo
BigSimmo merged commit f937493 into main Jul 30, 2026
23 of 24 checks passed
@BigSimmo
BigSimmo deleted the claude/ledger-followup-pr1322 branch July 30, 2026 04:16
BigSimmo added a commit that referenced this pull request Jul 30, 2026
* fix(ci): distinguish a cancelled PR-required run from a real failure

`cancel-in-progress` supersedes an in-flight run on every push, and the
aggregate's require_* helpers lumped the resulting `cancelled` in with `failure`.
The red was therefore indistinguishable from a genuine break at a glance. Measured
cost: one 2026-07-30 session spent four separate investigations on
`::error::changes result was cancelled` / `static-pr result was cancelled`, and
PR #1401 merged straight through an unrelated red the repo had learned to ignore
— which is the worse half, because a signal that is red for reasons unrelated to
the diff trains everyone to click through the one time it is real.

The aggregate now wires RUN_CANCELLED: ${{ cancelled() }}, reports a
workflow-level cancellation once through a shared cancelled_error helper, and
labels a cancelled job result as cancelled rather than as a plain failure. The
message is actionable rather than merely accurate: it names the supersession,
points at the newest run for the current head, and tells a reader who finds no
newer run that the run was hand-cancelled, verified nothing, and must be re-run
rather than merged past.

The obvious fix was rejected as unsafe. Treating cancelled as neutral, or
skipping the aggregate with `if: !cancelled()`, makes the red disappear — but
GitHub counts a SKIPPED required check as PASSING, so a hand-cancelled run on the
current head would become mergeable with nothing verified. That is also what
#95's own stop rule forbids. So the result stays RED; only the diagnosis cost is
removed, and `if: always()` is now pinned by a test with the reason recorded.

Seven cases in tests/ci-cache-safety.test.ts EXECUTE the extracted aggregate
script under synthetic job results rather than grepping the YAML, because the
defect was behavioural and a structural assertion passed against it (#94). They
cover the green baseline, workflow-level cancellation, a single cancelled job, a
genuine failure keeping its plain message with no cancellation excuse, and the
invariant that no cancelled required job can ever exit 0. Mutation-proven: three
fail against the pre-fix aggregate, and one asserts the extraction is non-empty
so a YAML restructure cannot make the group vacuously green.

Verified: verify:cheap — Test Files 432 passed (432), Tests 4477 passed | 4
skipped (4481); check:github-actions, check:ci-scope, check:ci-triage, prettier
all pass. Ledger #95 records the fix and the rejected approach.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012YRCXgX4AWZ579bKN6sk6b

* fix(ci): drop the invalid cancelled() env expression that broke ci.yml

My previous commit wired the workflow-level cancelled status function through an
`env:` value. That is invalid: GitHub allows the status-check functions
(success/failure/cancelled/always) only in `if:` conditions. The whole workflow
file therefore failed to parse — the run was named `.github/workflows/ci.yml`
instead of `CI`, created ZERO jobs, and reported a bare failure with no logs to
read.

Nothing local caught it, and that is the part worth fixing. It is valid YAML and
an invalid Actions schema, so prettier, lint, typecheck, check:github-actions and
all 432 unit files passed the broken version. It was visible only on hosted CI —
exactly the gap I flagged as unverifiable when the first commit went up.

The env expression was never needed. Reading each job's own `cancelled` result
does the same work, because a supersession cancels the upstream jobs, so the
first require_* call reports it. So the fix is a deletion, not a workaround.

A new case in tests/ci-cache-safety.test.ts scans every file under
.github/workflows/** and fails on a status-check function outside an `if:`. It
caught a second instance immediately: the comment I had written to warn about the
first mistake contained the offending expression, and `${{ }}` is interpolated
inside `run:` blocks too, so that comment alone would have kept the file
unparseable. The comment now describes the trap without spelling it.

Verified: verify:cheap — Test Files 432 passed (432), Tests 4478 passed | 4
skipped (4482); check:github-actions passes; the guard is mutation-proven by
reintroducing the env expression and watching it fail.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012YRCXgX4AWZ579bKN6sk6b

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
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