Skip to content

docs(principles): turn feedback into reusable rules - #672

Merged
ryanjwilke merged 4 commits into
mainfrom
ryanjwilke/principles-maintenance-readme
May 29, 2026
Merged

docs(principles): turn feedback into reusable rules#672
ryanjwilke merged 4 commits into
mainfrom
ryanjwilke/principles-maintenance-readme

Conversation

@ryanjwilke

@ryanjwilke ryanjwilke commented May 29, 2026

Copy link
Copy Markdown
Contributor

What & why

I keep giving the same feedback in Slack, Zoom, Claude, and GitHub. The goal of this repo is to capture those points once so any agent reviewing Cypress work brings the same perspective I would — as close to cloning my judgment as the system allows.

For that to work, agents need a file that fires on every feedback exchange, not only when someone says the word "principle." That's what .agents/principles/learning-from-feedback.md does. After reading it, a reviewer (human or agent) should:

  • Treat every piece of feedback as a candidate rule, not just a task.
  • Extract the underlying rule from the specific case.
  • Test whether it would apply on another surface.
  • If yes, vet it against the existing principles and open a PR to add it.

How

  • New file at .agents/principles/learning-from-feedback.md with a Notice → Extract → Test → Codify loop at the top, then the vetting checks (sounds-principled-but-isn't / conflicts / additive refinement) and the PR-as-record path for adding a new principle.
  • Linked from .agents/index.md so the router actually surfaces it.
  • Cross-linked from principles/feedback.md so anyone fetched for "giving feedback" also gets this.

Replaces what was removed from cypress-io/cypress.io#2517's design-system-access.md (now correctly access-only). Complements #670 (which added "Apply the principle; don't cite it" to feedback.md).

Where to focus review

  • Is the trigger wide enough? Will an agent reaching this file act on the full Notice → Extract → Test → Codify loop, or stop at "no one called it a principle, skip"?
  • Does the filename + index description make this discoverable from a cold start?
  • Is anything here a restatement of something already in feedback.md or ux.md that should be removed?

Note

Low Risk
Changes are limited to agent guidance and GitHub CLI workflow docs; no application runtime, auth, or data paths are modified.

Overview
Adds .agents/principles/learning-from-feedback.md, which tells agents to run Notice → Extract → Test → Codify on every feedback exchange (any channel, any author), vet candidates against existing principles, and record new rules via PR to cypress-design. The agent index and feedback.md now route to it; feedback.md clarifies when to quote principles vs apply them without citation.

In the same pass, cy-review-pr-comments is broadened from Copilot-only to all unresolved review authors (minus CI noise bots), with safer paginated GraphQL, root-comment-only threading, and a TOTAL_INSCOPE sanity check. Triage adds human-high-signal rules, mandatory Step 4.5 user sign-off before replies/resolves, reply-then-resolve per thread, optional Copilot re-review via gh pr edit, and hard stops to avoid endless review loops.

Reviewed by Cursor Bugbot for commit 2881877. Bugbot is set up for automated code reviews on this repo. Configure here.

Houses the methodology that was removed from cypress-io/cypress.io's
design-system-access.md (which is now access-only): how to vet feedback
framed as a principle (sounds-principled-but-isn't / conflicts / additive),
and the living-document loop for adding principles. Direct-to-canon via PR;
no separate staging log.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented May 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cypress-design Ready Ready Preview May 29, 2026 9:37pm

Request Review

@changeset-bot

changeset-bot Bot commented May 29, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 2881877

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@cypress

cypress Bot commented May 29, 2026

Copy link
Copy Markdown

cypress-design    Run #3687

Run Properties:  status check passed Passed #3687  •  git commit 3c4c9895b1 ℹ️: Merge 2881877d853cf70c32908e85d5f35845552d7d58 into 9a4aeaa7bfa3e83c54749bd65466...
Project cypress-design
Branch Review ryanjwilke/principles-maintenance-readme
Run status status check passed Passed #3687
Run duration 02m 17s
Commit git commit 3c4c9895b1 ℹ️: Merge 2881877d853cf70c32908e85d5f35845552d7d58 into 9a4aeaa7bfa3e83c54749bd65466...
Committer Ryan Wilke
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 2
View all changes introduced in this branch ↗︎

Warning

No Report: Something went wrong and we could not generate a report for the Application Quality products.

- Rename principles/README.md → principles/learning-from-feedback.md so agents discover it by topic, not by folder convention.
- Add "Notice → Extract → Test → Codify" loop at the top so the trigger is every piece of feedback, not just feedback framed as a principle.
- Link from .agents/index.md under Principles and cross-link from feedback.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ryanjwilke ryanjwilke changed the title docs(principles): add maintenance guide (vetting + living-document loop) docs(principles): turn feedback into reusable rules May 29, 2026
Comment thread .agents/principles/feedback.md Outdated
Comment thread .agents/principles/learning-from-feedback.md Outdated
Comment thread .agents/principles/learning-from-feedback.md Outdated
Comment thread .agents/index.md Outdated
…comments

Principles
- learning-from-feedback.md: name the sources of feedback up top (teammates, other agents, Copilot, automation). Rewrite Extract so the agent asks the human for the *why* behind a fix and turns that answer into the rule. Reframe the verbatim quote as a live confirmation with the human during review/reply — not an internal check.
- index.md: strengthen the trigger so an agent fetches this on every feedback exchange, not only when "principle" is named.
- feedback.md: same trigger language on the cross-link.

Skill
- cy-review-pr-comments.md: port the cypress.io version's improvements — fetch from any author (not just Copilot), Step 4.5 sign-off before executing, reply-then-resolve back-to-back per thread, hard-stop conditions for Copilot loops. Keep cypress-design's repo policies and known-issues.md path.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Copilot AI 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.

Pull request overview

Docs-only PR that adds a new .agents/principles/learning-from-feedback.md principle (a Notice → Extract → Test → Codify loop for turning every feedback exchange into a candidate reusable rule), wires it into the agent router and cross-links it from feedback.md, and in the same pass overhauls the cy-review-pr-comments skill to handle reviews from any author (not just Copilot) with safer pagination, root-comment filtering, a user sign-off step, and Copilot re-review hard-stops.

Changes:

  • New principle file learning-from-feedback.md plus index/cross-link entries to make it discoverable from a cold start.
  • cy-review-pr-comments broadened beyond Copilot: noise-bot filter, paginated GraphQL, root-comment-only filtering, TOTAL_INSCOPE sanity check, Step 4.5 sign-off, reply-then-resolve per thread, and Step 7 re-review with hard-stop conditions.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
.agents/principles/learning-from-feedback.md New principle establishing the Notice → Extract → Test → Codify loop for turning feedback into rules.
.agents/principles/feedback.md Adds a Related-section link to the new principle.
.agents/index.md Registers the new principle in the router with a fetch trigger.
.agents/skills/cy-review-pr-comments.md Broadens scope to all authors, adds pagination, root-comment filter, sanity check, Step 4.5 sign-off, reply-then-resolve, and Copilot re-review hard stops.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ryanjwilke
ryanjwilke merged commit 7ff6ea2 into main May 29, 2026
22 of 24 checks passed
@ryanjwilke
ryanjwilke deleted the ryanjwilke/principles-maintenance-readme branch May 29, 2026 22:00
@cypress

cypress Bot commented May 29, 2026

Copy link
Copy Markdown

cypress-design    Run #3689

Run Properties:  status check passed Passed #3689  •  git commit 7ff6ea203f: docs(principles): turn feedback into reusable rules (#672)
Project cypress-design
Branch Review main
Run status status check passed Passed #3689
Run duration 02m 13s
Commit git commit 7ff6ea203f: docs(principles): turn feedback into reusable rules (#672)
Committer Ryan Wilke
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 2
View all changes introduced in this branch ↗︎

Warning

No Report: Something went wrong and we could not generate a report for the Application Quality products.

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