Skip to content

docs: stop PRs from conflicting in HANDOFF.md - #150

Merged
tuckcode merged 1 commit into
mainfrom
cursor/handoff-per-pr-files-27f5
Oct 11, 2026
Merged

tuckcode merged 1 commit into
mainfrom
cursor/handoff-per-pr-files-27f5

Conversation

@tuckcode

Copy link
Copy Markdown
Owner

Why

Every PR was appending a State Origin line and a Recent sessions line near the bottom of docs/HANDOFF.md. Whichever PR merged second always conflicted. That happened on #142, #143, #145, and #148.

What changed

Per-PR notes now live only in docs/plans/handoffs/ as one new file (YYYY-MM-DD-HHMM-<agent>-<topic>.md).

  • docs/HANDOFF.md keeps its existing body. The top now says new PRs must add a file under docs/plans/handoffs/ instead of editing this file.
  • Agent instructions that said “update HANDOFF in place” now say to add a handoffs file.
  • pnpm handoff:check still caps the index at 900 lines, forbids inline ## Session handoff sections, and requires frontmatter. It also requires the new top pointer.

No product code. No State or Recent line added to HANDOFF.md by this PR.

Files

  • .claude/commands/handy.md
  • .cursor/rules/continual-learning.mdc
  • .cursor/skills/rhizome-ship/SKILL.md
  • AGENTS.md
  • docs/CROSS-MODEL-HANDOFF.md
  • docs/GETTING-STARTED.md
  • docs/HANDOFF.md
  • docs/YOU-SHOULD-KNOW.md
  • docs/plans/handoffs/2026-10-11-0755-cursor-grok-4-6-handoff-per-pr-files.md
  • docs/plans/rhizome-ship-skill.md
  • scripts/check-handoff-shape.mjs

QA

  • pnpm handoff:check — 898 lines, pointer + frontmatter OK
  • bash .husky/pre-push by hand — passed in 8m 39s (frontend, Rust, Playwright)
  • Second hook run on git push — passed in 7m 55s
  • No Playwright feature spec or native UI — docs/scripts only

Completion

  • Tests/coverage: pre-push frontend + Rust coverage lanes passed; no new product tests
  • Codacy: docs/scripts instruction change; no new Critical/High in product code
  • Localization: none — English only (C18)
  • PostHog: no event needed because no user-facing feature
  • Refactoring: none needed
  • ADRs: none
  • Docs: listed above
  • Demo vault dirt checked: empty

Ready for review. Do not merge from this agent. knispo merges.

Open in Web Open in Cursor 

Parallel PRs that each appended a State or Recent line to
docs/HANDOFF.md conflicted on merge (#142, #143, #145, #148). New PRs
add one file under docs/plans/handoffs/ and leave the index alone.

QA: pnpm handoff:check (898 lines, pointer + frontmatter). No Playwright
or native UI — docs/scripts only.
Tests/coverage: not a product change; pre-push still required.
PostHog: no event needed because no user-facing feature.
Localization: none — English only (C18).
Refactoring: none needed.
ADRs: none.
Docs: AGENTS.md, handy, rhizome-ship, CROSS-MODEL, GETTING-STARTED,
YOU-SHOULD-KNOW, HANDOFF pointer, this handoff file.
Demo vault dirt checked: empty.

Co-Authored-By: Cursor Grok 4.6 <noreply@x.ai>
@repowise-bot

repowise-bot Bot commented Oct 11, 2026

Copy link
Copy Markdown

✅ Health of changed files: 9.3 (unchanged)

Check Result
Coverage Not set up · add one CI step
Tests 0 of 1 changed code file reached by a test · 1 reached by no test
Security No new findings on changed lines
Doc drift 5 refuted claims in a doc this PR edits
Doc drift
  • docs/CROSS-MODEL-HANDOFF.md line 106 refers to src/hooks/useMcpBridge.ts, which the tree no longer has (high confidence)
  • docs/CROSS-MODEL-HANDOFF.md line 227 refers to src/types/laputaTestBridge.ts, which the tree no longer has (high confidence)
  • docs/GETTING-STARTED.md line 364 refers to src/mock-tauri.ts, which the tree no longer has (medium confidence)
  • +2 more on the PR page

📊 See the full report for this PR
Blast radius, every caller of the contracts it changes, and health before and after. No sign-in.
Plain markdown for agents

Settings and updates

Updated 2026-10-11 08:07 UTC
Silence one PR with [skip repowise] in the title · Bot settings
⭐ Star Repowise · 📥 Install on another repo

@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

AI Reviewer: first review requested successfully. AI can make mistakes. Always validate suggestions.

Run reviewer

TIP This summary will be updated as you push new changes.

@codacy-production codacy-production 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.

Pull Request Overview

The handoff-shape checker does not enforce that the required per-PR pointer is located in the expected top section, allowing a pointer placed elsewhere to pass validation. This should be corrected before relying on the checker to enforce the documented workflow. No Codacy issues were reported; Codacy results are up to standards.

About this PR

  • Add automated tests for the new handoff checker behavior to prevent regressions in pointer placement, inline-session rejection, line limits, and frontmatter validation.

Test suggestions

  • The checker accepts a valid HANDOFF.md index with the required per-PR pointer and valid handoff files.
  • The checker rejects HANDOFF.md when the required per-PR pointer is absent.
  • The checker rejects inline ## Session handoff sections.
  • The checker rejects an index exceeding 900 lines.
  • The checker rejects handoff files with missing or invalid frontmatter.
Prompt proposal for missing tests
Consider implementing these tests if applicable:
1. The checker accepts a valid HANDOFF.md index with the required per-PR pointer and valid handoff files.
2. The checker rejects HANDOFF.md when the required per-PR pointer is absent.
3. The checker rejects inline ## Session handoff sections.
4. The checker rejects an index exceeding 900 lines.
5. The checker rejects handoff files with missing or invalid frontmatter.

TIP Improve review quality by adding custom instructions
TIP How was this review? Give us feedback

Comment on lines +20 to +25
if (!handoff.includes('New PRs must not edit this file')) {
problems.push(
`${HANDOFF} is missing the per-PR pointer.`,
` New PRs add a file under ${HANDOFF_DIR}/; they must not append a line here.`,
)
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 MEDIUM RISK

Validate that the per-PR pointer appears in the expected top section, rather than using an unrestricted substring search, so the checker actually enforces the documented top-pointer requirement.

@tuckcode
tuckcode merged commit 085fadd into main Oct 11, 2026
10 checks passed
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