Skip to content

docs(conventions): fix topic-docs prune recovery under squash-merge - #2760

Merged
kyle-sexton merged 2 commits into
mainfrom
cursor/2699-topic-docs-8f91
Aug 15, 2026
Merged

docs(conventions): fix topic-docs prune recovery under squash-merge#2760
kyle-sexton merged 2 commits into
mainfrom
cursor/2699-topic-docs-8f91

Conversation

@kyle-sexton

Copy link
Copy Markdown
Contributor

Closes #2699

Summary

The topic-docs prune recovery pointer prescribed ?ref=<pruning-commit>^, which is unrecoverable after this repository squash-merges and deletes the head branch. Amend the convention so the written form matches what still works, and stop presenting unreachable-object retention as a guarantee.

Fix

In docs/conventions/topic-docs/README.md (lifecycle steps 2 and 5):

  • Prescribe the Contents API form ?ref=<pre-prune-commit> (no ^).
  • State plainly that retention of unreachable objects is best-effort with no promised lifetime.
  • Require the PR body to name graduation targets (ADR / specs / tracker items) as the load-bearing record; the SHA pointer is convenience only.
  • Bump the convention changelog to 2.4.3 and align the worked-slice example.

scripts/check-contract-slice-prune.sh is unchanged.

Verification

Related

Refs #2686 (live instance that exposed the false pointer)

The prescribed ?ref=<pruning-commit>^ form is unrecoverable after
squash-merge deletes the head branch. Prescribe the Contents API
pre-prune SHA form as best-effort and make graduation targets the
load-bearing record.

Closes #2699

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@cursor

cursor Bot commented Aug 15, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 10f7d37e5f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/conventions/topic-docs/README.md Outdated
Clarify that git show needs a fetched object while ?ref=<pruning-commit>^
fails remotely because the squash parent never held the slice.

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@kyle-sexton
kyle-sexton merged commit a560ef2 into main Aug 15, 2026
41 checks passed
@kyle-sexton
kyle-sexton deleted the cursor/2699-topic-docs-8f91 branch August 15, 2026 20:55
@claude

claude Bot commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Claude finished @cursor[bot]'s task in 31s —— View job


Code review — /review:code-review

  • Gather context (PR metadata, diff, CLAUDE.md)
  • Apply skip gate
  • Report result

Skipped. This lane's skip gate stops before deep review when "PR is closed or not open." PR #2760 is already MERGED (head 4d88f982), so there is no open review surface left to act on — findings can't be applied, and inline comments would anchor to a diff that's no longer live. No inline comments were posted.

If you'd like a retrospective review of the merged changes (e.g. to evaluate the Codex P2 comment about conflating git show's local-fetch prerequisite with the remote Contents-API lookup in docs/conventions/topic-docs/README.md), let me know and I can run that as an ad hoc review instead of the CI lane.

@github-actions

Copy link
Copy Markdown

Claude has reviewed this PR 1 time. The lane skips further automatic reviews after 5; deleting this comment resets the count.

kyle-sexton added a commit that referenced this pull request Aug 15, 2026
…-no-checkout

Fourth collision, and the first that was not a version race: #2760 published
topic-docs 2.4.3 correcting the prune-recovery pointer for squash-merge, in the
same CHANGELOG this branch adds 2.5.0 to. Both entries kept, 2.5.0 above 2.4.3.

The README auto-merged, which is the case worth checking rather than trusting:
#2760 edited the contract-slice lifecycle, this branch edits Runtime guards, and
a diff of the merged file against origin/main shows the guard clause as the ONLY
delta — so their correction is intact and nothing of theirs was reverted by an
older copy winning silently.

Same check applied to the other two shared files: every line this branch removes
against main is its own superseded text, none of main's.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.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.

docs(conventions): the topic-docs prune recovery pointer is unrecoverable under squash-merge

2 participants